article_cat_list(0, 0, false); $this->assign('cat_list',$cat_list); return $this->fetch('categoryList'); } public function category() { $ArticleCat = new NewsLogic(); $act = I('get.act', 'add'); $cat_id = I('get.cat_id/d'); $parent_id = I('get.parent_id/d'); if ($cat_id) { $cat_info = M('news_cat')->where('cat_id=' . $cat_id)->find(); $parent_id = $cat_info['parent_id']; $this->assign('cat_info', $cat_info); } $cats = $ArticleCat->article_cat_list(0, $parent_id, true); $this->assign('act', $act); $this->assign('cat_select', $cats); return $this->fetch(); } public function newsList(){ $Article = M('news'); $res = $list = array(); $p = empty($_REQUEST['p']) ? 1 : $_REQUEST['p']; $size = empty($_REQUEST['size']) ? 20 : $_REQUEST['size']; $where = " 1 = 1 "; $keywords = trim(I('keywords')); $keywords && $where.=" and title like '%$keywords%' "; $cat_id = I('cat_id',0); $cat_id && $where.=" and cat_id = $cat_id "; $res = $Article->where($where)->order('article_id desc')->page("$p,$size")->select(); $count = $Article->where($where)->count();// 查询满足要求的总记录数 $pager = new Page($count,$size);// 实例化分页类 传入总记录数和每页显示的记录数 //$page = $pager->show();//分页显示输出 $ArticleCat = new NewsLogic(); $cats = $ArticleCat->article_cat_list(0,0,false); if($res){ foreach ($res as $val){ $val['category'] = $cats[$val['cat_id']]['cat_name']; $val['add_time'] = date('Y-m-d H:i:s',$val['add_time']); $list[] = $val; } } $news_tag=config('NEWS_TAG'); foreach ($list as $k => $v) { if($v['tags']){ $str=''; $tmp=explode(',', $v[tags]); foreach ($tmp as $k2 => $v2) { $str.='['.$news_tag[$v2].']'.' '; } $list[$k]['tags']=$str; } } $admin_info=getAdminInfo(session('admin_id')); $this->assign('cats',$cats); $this->assign('cat_id',$cat_id); $this->assign('list',$list);// 赋值数据集 $this->assign('pager',$pager);// 赋值分页输出 return $this->fetch('newsList'); } public function article(){ $ArticleCat = new NewsLogic(); $act = I('GET.act','add'); $info = array(); $info['publish_time'] = time()+3600*24; if(I('GET.article_id')){ $article_id = I('GET.article_id'); $info = M('news')->where('article_id='.$article_id)->find(); } if($info['tags']){ $info['tags_arr']=explode(',', $info['tags']); } //dump($info);exit(); $tag=config('NEWS_TAG'); $admin_info=getAdminInfo(session('admin_id')); $cats = $ArticleCat->article_cat_list(0,$info['cat_id']); $this->assign('cat_select',$cats); $this->assign('act',$act); $this->assign('info',$info); $this->assign('tags',$tag); $this->assign('role_id',$admin_info['role_id']); return $this->fetch(); } public function categoryHandle() { $data = I('post.'); $result = $this->validate($data, 'NewsCategory.'.$data['act'], [], true); if ($result !== true) { $this->ajaxReturn(['status' => 0, 'msg' => '参数错误', 'result' => $result]); } if ($data['act'] == 'add') { $r = M('news_cat')->add($data); } elseif ($data['act'] == 'edit') { $cat_info = M('news_cat')->where("cat_id",$data['cat_id'])->find(); if($cat_info['cat_type'] == 1 && $data['parent_id'] > 1){ $this->ajaxReturn(['status' => -1, 'msg' => '可更改系统预定义分类的上级分类']); } $r = M('news_cat')->where("cat_id",$data['cat_id'])->save($data); } elseif ($data['act'] == 'del') { /* if($data['cat_id']<9){ $this->ajaxReturn(['status' => -1, 'msg' => '系统默认分类不得删除']); }*/ if (M('news_cat')->where('parent_id', $data['cat_id'])->count()>0) { $this->ajaxReturn(['status' => -1, 'msg' => '还有子分类,不能删除']); } if (M('news')->where('cat_id', $data['cat_id'])->count()>0) { $this->ajaxReturn(['status' => -1, 'msg' => '该分类下有文章,不允许删除,请先删除该分类下的文章']); } $r = M('news_cat')->where('cat_id', $data['cat_id'])->delete(); } if (!$r) { $this->ajaxReturn(['status' => -1, 'msg' => '操作失败']); } $this->ajaxReturn(['status' => 1, 'msg' => '操作成功']); } public function aticleHandle() { $data = I('post.'); $data['publish_time'] = strtotime($data['publish_time']); $result = $this->validate($data, 'News.'.$data['act'], [], true); if ($result !== true) { $this->ajaxReturn(['status' => 0, 'msg' => '参数错误', 'result' => $result]); } if($data['tags']){ $data['tags']=implode(',', $data['tags']); }else{ $data['tags']=''; } if ($data['act'] == 'add') { $data['click'] = mt_rand(1000,1300); $data['add_time'] = time(); $r = M('news')->add($data); } elseif ($data['act'] == 'edit') { $r = M('news')->where('article_id='.$data['article_id'])->save($data); } elseif ($data['act'] == 'del') { $r = M('news')->where('article_id='.$data['article_id'])->delete(); } if (!$r) { $this->ajaxReturn(['status' => -1, 'msg' => '操作失败']); } $this->ajaxReturn(['status' => 1, 'msg' => '操作成功']); } }