|
@@ -6,6 +6,28 @@ use Dever;
|
|
|
|
|
|
class Data
|
|
|
{
|
|
|
+ # 直接获取某个页面的基本信息
|
|
|
+ public function getPageInfo($key = false)
|
|
|
+ {
|
|
|
+ if (!$key) {
|
|
|
+ $page = Dever::input('page');
|
|
|
+ if ($page) {
|
|
|
+ $key = $page;
|
|
|
+ } else {
|
|
|
+ $key = Dever::uri();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!$key) {
|
|
|
+ $key = 'home';
|
|
|
+ }
|
|
|
+
|
|
|
+ $where['key'] = $key;
|
|
|
+ $data = Dever::db('page/page')->find($where);
|
|
|
+
|
|
|
+ return $data;
|
|
|
+ }
|
|
|
+
|
|
|
# 直接获取某个页面的内容
|
|
|
public function getPage($path = 'module', $cdate = 'Y-m-d H:i', $config = array())
|
|
|
{
|
|
@@ -85,21 +107,26 @@ class Data
|
|
|
$module['num'] = $limit;
|
|
|
}
|
|
|
|
|
|
- $where = array();
|
|
|
- $where['module_id'] = $module['id'];
|
|
|
+ if ($module['content'] == 1 && $total > 0) {
|
|
|
+ Dever::setInput('search_option_module_id', $module['id']);
|
|
|
+ $where = array();
|
|
|
+ $where['module_id'] = $module['id'];
|
|
|
|
|
|
- if ($page) {
|
|
|
- $where['page'] = array($module['num'], 'list');
|
|
|
- $data = Dever::db('page/data')->getAllPage($where);
|
|
|
- } else {
|
|
|
- $where['limit'] = '0,' . $module['num'];
|
|
|
- $data = Dever::db('page/data')->getAll($where);
|
|
|
- }
|
|
|
+ if ($page) {
|
|
|
+ $where['page'] = array($module['num'], 'list');
|
|
|
+ $data = Dever::db('page/data')->getAllPage($where);
|
|
|
+ } else {
|
|
|
+ $where['limit'] = '0,' . $module['num'];
|
|
|
+ $data = Dever::db('page/data')->getAll($where);
|
|
|
+ }
|
|
|
|
|
|
- if ($data) {
|
|
|
- foreach ($data as $k => $v) {
|
|
|
- $data[$k] = $this->getOne($v, 2, $cdate);
|
|
|
+ if ($data) {
|
|
|
+ foreach ($data as $k => $v) {
|
|
|
+ $data[$k] = $this->getOne($v, 2, $cdate);
|
|
|
+ }
|
|
|
}
|
|
|
+ } else {
|
|
|
+ $data = $module;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -110,7 +137,6 @@ class Data
|
|
|
public function getOne($module, $state = 2, $cdate = 'Y-m-d H:i')
|
|
|
{
|
|
|
$data = is_array($module) ? $module : Dever::db('page/data')->one($module);
|
|
|
-
|
|
|
$source = array();
|
|
|
$module = array();
|
|
|
$col = array();
|
|
@@ -139,7 +165,6 @@ class Data
|
|
|
} else {
|
|
|
$key = 'col_';
|
|
|
}
|
|
|
-
|
|
|
foreach ($data as $k => $v) {
|
|
|
$s = strstr($k, $key);
|
|
|
if ($lang && strstr($k, 'col_') && !$s) {
|
|
@@ -171,6 +196,9 @@ class Data
|
|
|
|
|
|
$result[$k][$col_module['name']] = $v;
|
|
|
} else {
|
|
|
+ if (strstr($col_module['key'], 'link')) {
|
|
|
+ $v = Dever::url($v, 'main');
|
|
|
+ }
|
|
|
$result[$col_module['key']] = $v;
|
|
|
}
|
|
|
}
|