예제 #1
0
파일: class.php 프로젝트: Junec/admin
 public function delete()
 {
     if ($this->get['id']) {
         $id = $this->get['id'];
         $rs = core::i('mdl_class')->delete($id);
         $this->msg($rs['status'], $rs['msg']);
     }
     $this->index();
 }
예제 #2
0
파일: content.php 프로젝트: Junec/admin
 public function index()
 {
     $parent = $this->get['parent'];
     core::i('lib_class')->getIds($parent, $parentIds);
     $parentData = $this->model['class']->getOne($parent);
     $sonClass = $this->model['class']->getList('*', array('parent' => $parent), 0, -1, 'ordernum ASC');
     $model = new mdl_content();
     foreach ($sonClass as $v) {
         $tag[] = array('title' => $v['title'], 'filter' => array('parent' => $v['id']));
     }
     $this->finder(array('title' => $parentData['title'], 'model' => $model, 'ischeckbox' => true, 'orderby' => 'id desc', 'pagenums' => 5, 'baseurl' => "index.php?ctl=content&act=index&parent={$parent}", 'basefilter' => array('parent' => $parentIds), 'button' => array(array('title' => '添加', 'href' => "#"), array('title' => '置顶', 'href' => "javascript:finder.submit('index.php?ctl=content&act=delete');"), array('title' => '推荐', 'href' => "javascript:finder.submit('index.php?ctl=content&act=delete');"), array('title' => '删除', 'href' => "javascript:finder.submit('index.php?ctl=content&act=delete');")), 'tag' => $tag));
 }
예제 #3
0
파일: controller.php 프로젝트: Junec/admin
 protected function finder($params = array())
 {
     $model = $params['model'];
     $pager = core::i('core_pager');
     #配置信息
     $finder = array();
     $finder['title'] = $params['title'];
     $finder['ischeckbox'] = $params['ischeckbox'];
     $finder['isdelete'] = $params['isdelete'];
     $finder['orderby'] = $params['orderby'];
     $finder['pagenums'] = $params['pagenums'];
     $finder['basefilter'] = $params['basefilter'];
     $finder['button'] = $params['button'];
     $finder['pkey'] = $model->pri;
     $finder['url'] = core::i('core_url')->getUrl();
     $finder['queryParams'] = core::i('core_url')->getQueryParams();
     $finder['model'] = get_class($params['model']);
     $finder['baseurl'] = $params['baseurl'];
     $finder['tag'] = $params['tag'];
     #finder搜索
     if ($this->post['dopost'] == 'finderSearch') {
         $searchPost = $this->post;
         unset($searchPost['dopost']);
         $searchfilter = array();
         if ($searchPost['finderse']) {
             if (isset($searchPost['finderse']['select']) && is_array($searchPost['finderse']['select'])) {
                 foreach ($searchPost['finderse']['select'] as $fsk => $fsv) {
                     $searchfilter['filter'][$fsk] = $fsv;
                 }
             }
             if (isset($searchPost['finderse']['input']) && $searchPost['finderse']['input-value'] != '') {
                 $searchfilter['filter'][$searchPost['finderse']['input']] = $searchPost['finderse']['input-value'];
             }
             $searchfilter['finderseiv'] = $searchPost['finderse']['input-value'];
         }
         $queryParams = array_merge($finder['queryParams'], $searchfilter);
         $redirectUrl = 'index.php?' . core::i('core_url')->parseQueryString($queryParams);
         header("HTTP/1.1 301 Moved Permanently");
         header("Location: {$redirectUrl}");
         exit;
     }
     #显示字段
     $finder['fields'] = array();
     $finder['search'] = array();
     $finder['totalFieldWidth'] = 0;
     $finder['fieldsinfo'][$model->pri] = '`' . $model->pri . '`';
     $extend = array();
     foreach ($model->finder as $k => $v) {
         $finder['fields'][$k] = array('title' => $v['title'], 'width' => $v['width'], 'sort' => $v['sort']);
         if ($v['type'] == '' || $v['type'] == 'normal') {
             #查询字段
             $finder['fieldsinfo'][$k] = '`' . $k . '`';
             #搜索字段
             if ($v['search'] != '') {
                 $finder['search'][$v['search']][$k]['title'] = $v['title'];
                 $finder['search'][$v['search']][$k]['value'] = $v['value'];
                 if ($v['search'] == 'input') {
                     $finder['search'][$v['search']][$k]['key'] = $k . '|like';
                 } else {
                     $finder['search'][$v['search']][$k]['key'] = $k;
                 }
             }
         }
         #扩展列
         if ($v['type'] == 'extend') {
             $extend[] = $k;
         }
         $finder['totalFieldWidth'] += $v['width'];
     }
     #排序相关
     $get = $this->get;
     $orderby = $get['orderby'];
     $orderbytype = $get['orderbytype'];
     unset($get['orderby'], $get['orderbytype']);
     $finder['orderbyQueryString'] = core::i('core_url')->parseQueryString($get);
     if ($orderby != '' && $orderbytype != '') {
         $finder['orderby'] = $orderby . ' ' . $orderbytype;
     }
     #Tag
     if (isset($finder['tag']) && is_array($finder['tag'])) {
         foreach ($finder['tag'] as $k => $v) {
             $tagFilter = array_merge($finder['basefilter'], $v['filter']);
             $finder['tag'][$k]['count'] = $model->count($tagFilter);
             $finder['tag'][$k]['url'] = $finder['baseurl'] . '&findertag=' . $k;
         }
     }
     #Filter
     $getfilter = $this->get['filter'];
     $finder['findertag'] = $_GET['findertag'];
     foreach ($getfilter as $k => $v) {
         if ($v == '') {
             unset($getfilter[$k]);
         }
     }
     if (!is_array($getfilter) || !$getfilter) {
         $getfilter = array();
     }
     $finder['filter'] = array_merge($finder['basefilter'], $getfilter);
     if ($finder['findertag'] != '') {
         if (isset($finder['tag']) && is_array($finder['tag'])) {
             $tagfilter = $finder['tag'][$finder['findertag']]['filter'];
         }
         $finder['filter'] = array_merge($finder['filter'], $tagfilter);
     }
     $finder['count'] = $model->count($finder['filter']);
     #数据
     $pagerParams = array('record' => $finder['count'], 'limit' => $finder['pagenums'] != '' ? $finder['pagenums'] : 20);
     $finder['pager'] = $pager->pageList($pagerParams);
     $finder['data'] = $model->getList(join(',', $finder['fieldsinfo']), $finder['filter'], $finder['pager']['offset'], $finder['pager']['limit'], $finder['orderby']);
     $finder['jsonFilter'] = json_encode($finder['filter']);
     #扩展与修饰列
     foreach ($finder['data'] as &$v) {
         $pkeyId = $v[$finder['pkey']];
         //extend
         foreach ($extend as $field) {
             $extendMethod = 'finder_extend_' . $field;
             if (method_exists($model, $extendMethod)) {
                 $v[$field] = $model->{$extendMethod}($pkeyId);
             }
         }
         //modify
         foreach ($v as $field => $value) {
             $modifyMethod = 'finder_modify_' . $field;
             if (method_exists($model, $modifyMethod)) {
                 $v[$field] = $model->{$modifyMethod}($value, $pkeyId);
             }
         }
     }
     #print_r($finder['search']);exit;
     $this->assign('finder', $finder);
     $this->display('finder.html');
 }
예제 #4
0
파일: class.php 프로젝트: Junec/admin
 public function __construct()
 {
     $this->classModel = core::i('mdl_class');
     $this->contentModel = core::i('mdl_content');
 }
예제 #5
0
파일: content.php 프로젝트: Junec/admin
 public function finder_modify_parent($row = '')
 {
     $class = core::i('mdl_class')->getOne($row);
     return $class['title'];
 }