rabin %!s(int64=3) %!d(string=hai) anos
pai
achega
3d1f1a3a24
Modificáronse 1 ficheiros con 56 adicións e 23 borrados
  1. 56 23
      src/Database.php

+ 56 - 23
src/Database.php

@@ -573,17 +573,23 @@ class Database
                     if (isset($v['search']) && is_string($v['search'])) {
 
                         if ($v['search'] == 'sday') {
-                            $config['manage']['search']['sday'][$k] = $v['name'];
+                            $config['manage']['search']['sday'][$k]['key'] = $v['search'];
+                            $config['manage']['search']['sday'][$k]['lang'] = $v['name'];
                         } elseif ($v['search'] == 'sdate') {
-                            $config['manage']['search']['sdate'][$k] = $v['name'];
+                            $config['manage']['search']['sdate'][$k]['key'] = $v['search'];
+                            $config['manage']['search']['sdate'][$k]['lang'] = $v['name'];
                         } elseif (strpos($v['search'], 'time') !== false || strpos($v['search'], 'day') !== false) {
-                            $config['manage']['search']['day'][$k] = $v['name'];
+                            $config['manage']['search']['day'][$k]['key'] = $v['search'];
+                            $config['manage']['search']['day'][$k]['lang'] = $v['name'];
                         } elseif (strpos($v['search'], 'date') !== false) {
-                            $config['manage']['search']['date'][$k] = $v['name'];
+                            $config['manage']['search']['date'][$k]['key'] = $v['search'];
+                            $config['manage']['search']['date'][$k]['lang'] = $v['name'];
                         } elseif (strpos($v['search'], 'year') !== false) {
-                            $config['manage']['search']['year'][$k] = $v['name'];
+                            $config['manage']['search']['year'][$k]['key'] = $v['search'];
+                            $config['manage']['search']['year'][$k]['lang'] = $v['name'];
                         } elseif (strpos($v['search'], 'month') !== false) {
-                            $config['manage']['search']['month'][$k] = $v['name'];
+                            $config['manage']['search']['month'][$k]['key'] = $v['search'];
+                            $config['manage']['search']['month'][$k]['lang'] = $v['name'];
                         }
 
                         if (strpos($v['search'], 'exp') !== false) {
@@ -980,23 +986,46 @@ class Database
      *
      * @return array
      */
-    public function list_search_time(&$result, $search, $prefix, $key, $lang, $type = 'time')
+    public function list_search_time(&$result, $search, $prefix, $key, $config, $type = 'time')
     {
-        $value['name'] = $prefix . 'option_start_' . $key;
-        $value['lang'] = '>=' . $lang;
-        if (isset($search[$value['name']])) {
-            $value['value'] = Dever::maketime($search[$value['name']]);
-            Dever::setInput($value['name'], $value['value'], 'search_');
+        $start = $end = true;
+        if (is_array($config)) {
+            $lang = $config['lang'];
+            $search_key = $config['key'];
+            if (strstr($search_key, '_')) {
+                $temp = explode('_', $search_key);
+                $start = $end = false;
+                if (isset($temp[1])) {
+                    if ($temp[1] == 'start') {
+                        $start = true;
+                    } elseif ($temp[1] == 'end') {
+                        $end = true;
+                    }
+                }
+            }
+        } else {
+            $lang = $config;
         }
-        $result .= Html::$type($value, false);
-
-        $value['name'] = $prefix . 'option_end_' . $key;
-        $value['lang'] = '<=' . $lang;
-        if (isset($search[$value['name']])) {
-            $value['value'] = Dever::maketime($search[$value['name']]);
-            Dever::setInput($value['name'], $value['value'], 'search_');
+        
+        if ($start) {
+            $value['name'] = $prefix . 'option_start_' . $key;
+            $value['lang'] = '>=' . $lang;
+            if (isset($search[$value['name']])) {
+                $value['value'] = Dever::maketime($search[$value['name']]);
+                Dever::setInput($value['name'], $value['value'], 'search_');
+            }
+            $result .= Html::$type($value, false);
+        }
+        
+        if ($end) {
+            $value['name'] = $prefix . 'option_end_' . $key;
+            $value['lang'] = '<=' . $lang;
+            if (isset($search[$value['name']])) {
+                $value['value'] = Dever::maketime($search[$value['name']]);
+                Dever::setInput($value['name'], $value['value'], 'search_');
+            }
+            $result .= Html::$type($value, false);
         }
-        $result .= Html::$type($value, false);
     }
 
     /**
@@ -3082,11 +3111,15 @@ class Database
 
                 $result[$k] = '<div class="form-group ' . $class . '"><div class="margin-top">';
 
+                $style = '';
+                if ($v['update'] == 'hidden') {
+                    $style = 'style="display:none"';
+                }
                 if (layadmin()) {
-                    $result[$k] = '<div class="layui-form-item ' . $class . '"><div classs="layui-col-lg6">';
+                    $result[$k] = '<div class="layui-form-item ' . $class . '" '.$style.'><div classs="layui-col-lg6">';
 
-                    if (isset($v['update']) && $v['update'] && is_array($v['update'])) {
-                        $result[$k] = '<div class="layui-form-item ' . $class . '"><div class="layui-tab-card">';
+                    if (is_array($v['update'])) {
+                        $result[$k] = '<div class="layui-form-item ' . $class . '" '.$style.'><div class="layui-tab-card">';
                     }
                 }