Manage.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <?php
  2. namespace Page\Lib;
  3. use Dever;
  4. class Manage
  5. {
  6. public function search_api()
  7. {
  8. $keyword = Dever::input('keyword');
  9. $yes = Dever::input('yes');
  10. $where = array();
  11. $type = Dever::input('type');
  12. $func = Dever::db('page/module')->config['func'];
  13. $func = $func();
  14. $method = false;
  15. if ($func && $type && isset($func[$type]['search'])) {
  16. $method = $func[$type]['search'];
  17. }
  18. if (!$method) {
  19. Dever::alert('暂无数据');
  20. }
  21. if ($yes) {
  22. $yes = Dever::db($method)->search(array('ids' => $yes));
  23. }
  24. if (!$keyword) {
  25. $where['limit'] = '0,50';
  26. $data = Dever::db($method)->search($where);
  27. } else {
  28. $where['name'] = $keyword;
  29. $data = Dever::db($method)->search($where);
  30. }
  31. $result = array();
  32. if ($yes) {
  33. foreach ($yes as $k => $v) {
  34. if (isset($data[$k])) {
  35. unset($data[$k]);
  36. }
  37. $yes[$k]['selected'] = 'selected';
  38. }
  39. $data = $yes + $data;
  40. $data = array_merge($data, array());
  41. } else {
  42. $data = array_merge($data, array());
  43. }
  44. if (!$data) {
  45. Dever::alert('暂无数据');
  46. }
  47. return $data;
  48. }
  49. public function showType_api()
  50. {
  51. $value = Dever::input('value');
  52. $data = array();
  53. $config['type_id'] = Dever::db('page/data')->config['struct']['type_id'];
  54. $config['type_id']['name'] = '关联数据';
  55. if ($value == -1) {
  56. $config['type_id']['update'] = 'hidden';
  57. } else {
  58. $config['type_id']['update'] = 'select';
  59. }
  60. $config['type_id']['update_search'] = 'page/lib/manage.search?type=' . $value;
  61. $data = Dever::load('manage/database')->update_struct(array('struct' => $config), false, $data, -1, '', false, false);
  62. return $data;
  63. }
  64. # 查看图片
  65. public function pic($pic)
  66. {
  67. $table = array();
  68. $table[0] = '<img src="'.$pic.'" width=“150”/>';
  69. return Dever::table($table);
  70. }
  71. public function show($id)
  72. {
  73. $table = Dever::load('page/lib/data')->getOne($id, 1);
  74. if (count($table) == 1) {
  75. $table = $table[0];
  76. }
  77. return Dever::table($table);
  78. }
  79. # 查看模板
  80. public function template()
  81. {
  82. $data = Dever::db('page/template')->state();
  83. foreach ($data as $k => $v) {
  84. if (!$v['pic']) {
  85. $v['pic'] = '';
  86. }
  87. $data[$k]['name'] = '<img src="'.$v['pic'].'" style="margin-bottom: 34px;width:300px" alt="'.$v['name'].'"/>';
  88. }
  89. return $data;
  90. }
  91. public function getData($col, $id)
  92. {
  93. $data = Dever::db('page/data')->find($id);
  94. if ($data['type'] > 0) {
  95. $func = Dever::db('page/func')->find($data['type']);
  96. $info = Dever::load($func['api'], $id);
  97. $func['col'] = Dever::json_decode($func['col']);
  98. foreach ($func['col'] as $k => $v) {
  99. if ($v['col_id'] == $col) {
  100. return $info[$v['name']];
  101. }
  102. }
  103. }
  104. return $data['col_' . $col];
  105. }
  106. }