예제 #1
0
 public function listAction()
 {
     $this->view->PageType = "list";
     $DeptCode = $this->_request->getParam("dept");
     $ColumnCode = $this->_request->getParam("column");
     if (!empty($ColumnCode)) {
         $ColumnMapper = new Application_Model_ColumnMapper();
         $arr = $ColumnMapper->findColumnByCode($ColumnCode);
         $this->view->arrPageColumn = $arr;
         $arr = $ColumnMapper->findallColumn();
         $this->view->arrColumn = $arr;
         $DeptID = -1;
         if (!empty($DeptCode)) {
             $DeptMapper = new Application_Model_DepartmentMapper();
             $arr = $DeptMapper->findDeptByCode($DeptCode);
             $this->view->arrDept = $arr;
             $DeptID = $arr[0]['DeptID'] ? $arr[0]['DeptID'] : -1;
         }
         $ArticleMapper = new Application_Model_ArticleMapper();
         $arrListxw = $ArticleMapper->findArticleForListAll('publish', $DeptID, 'xw', -1);
         $arrListzx = $ArticleMapper->findArticleForListAll('publish', $DeptID, 'zx', -1);
         // $arrListhdkj = $ArticleMapper->findArticleForList('publish',$DeptID,3,-1);
         // $arrListczzl = $ArticleMapper->findArticleForList('publish',$DeptID,4,-1);
         // $arrListcysh = $ArticleMapper->findArticleForList('publish',$DeptID,5,-1);
         // $arrListcgxy = $ArticleMapper->findArticleForList('publish',$DeptID,6,-1);
         $this->view->arrListxw = $arrListxw;
         $this->view->arrListzx = $arrListzx;
         // $this->view->arrListhdkj = $arrListhdkj;
         // $this->view->arrListczzl = $arrListczzl;
         // $this->view->arrListcysh = $arrListcysh;
         // $this->view->arrListcgxy = $arrListcgxy;
         switch ($ColumnCode) {
             case 'xw':
                 $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Array($arrListxw));
                 break;
             case 'zx':
                 $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Array($arrListzx));
                 break;
                 // case 'hdkj': $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Array($arrListhdkj)); break;
                 // case 'czzl': $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Array($arrListczzl)); break;
                 // case 'cysh': $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Array($arrListcysh)); break;
                 // case 'cgxy': $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Array($arrListcgxy)); break;
                 // default : $paginator = new Zend_Paginator(new Zend_Paginator_Adapter_Array($arrListrdxw)); break;
         }
         $num = 10;
         $page = 1;
         //设置每一页显示的文章数目 //设置第一页显示
         $paginator->setItemCountPerPage($num);
         //设置每一页显示的文章数目
         $paginator->setCurrentPageNumber($page);
         //设置第一页显示
         $paginator->setCurrentPageNumber($this->_getParam('page'));
         //从url获取需要显示的页码
         $this->view->paginator = $paginator;
     } else {
         $this->_redirect('/pengbei');
         exit;
     }
 }
예제 #2
0
 public function listarticleAction()
 {
     //获取学院信息
     if ($_SESSION['user']['DeptID'] == 0) {
         $DeptCode = $this->_request->getParam("dept");
         $DeptMapper = new Application_Model_DepartmentMapper();
         $arrDept = $DeptMapper->findDeptByCode($DeptCode);
         if (!empty($arrDept)) {
             $DeptID = $arrDept[0]['DeptID'];
         } else {
             $DeptID = -1;
         }
         //如果没有指定院系信息,默认查找所有学院文章(-1代表所有学院)
     } else {
         $DeptID = $_SESSION['user']['DeptID'];
     }
     //获取栏目信息
     $ColumnID = $this->_request->getParam("column");
     if ($ColumnID) {
         $Column = $ColumnID;
     } else {
         $Column = -1;
     }
     //如果没有指定栏目信息,默认查找所有栏目文章(-1代表所有栏目)
     //判断当前用户能获取文章的权限
     $Self = 'no';
     //默认查找所有文章
     $Self = $this->_request->getParam("by");
     //判断是否查找自己的文章
     if ($Self == 'self') {
         $UserID = $_SESSION['user']['UserID'];
     } else {
         $UserID = -1;
         //如果没有指定用户信息,默认查找所有用户文章(-1代表所有用户)
     }
     //获取查找文章的时间区间
     $BeginStamp = $this->_request->getParam("from");
     $EndStamp = $this->_request->getParam("until");
     if (empty($BeginStamp)) {
         $BeginStamp = -1;
     }
     if (empty($EndStamp)) {
         $EndStamp = -1;
     }
     /* 根据获取到的信息从数据库中查找文章 */
     $ArticleMapper = new Application_Model_ArticleMapper();
     $num = 20;
     $page = 1;
     //设置每一页显示的文章数目 //设置第一页显示
     //查找全部文章
     $rows_all = $ArticleMapper->findArticleByStampForList('all', $DeptID, $Column, $UserID, $BeginStamp, $EndStamp);
     $paginator_all = new Zend_Paginator(new Zend_Paginator_Adapter_Array($rows_all));
     //调用分页
     $paginator_all->setItemCountPerPage($num);
     //设置每一页显示的文章数目
     $paginator_all->setCurrentPageNumber($page);
     //设置第一页显示
     $paginator_all->setCurrentPageNumber($this->_getParam('page'));
     //从url获取需要显示的页码
     //查找待审核的文章
     $rows_wait = $ArticleMapper->findArticleByStampForList('wait', $DeptID, $Column, $UserID, $BeginStamp, $EndStamp);
     $paginator_wait = new Zend_Paginator(new Zend_Paginator_Adapter_Array($rows_wait));
     //调用分页
     $paginator_wait->setItemCountPerPage($num);
     //设置每一页显示的文章数目
     $paginator_wait->setCurrentPageNumber($page);
     //设置第一页显示
     $paginator_wait->setCurrentPageNumber($this->_getParam('page'));
     //从url获取需要显示的页码
     //查找已退稿的文章
     $rows_reject = $ArticleMapper->findArticleByStampForList('reject', $DeptID, $Column, $UserID, $BeginStamp, $EndStamp);
     $paginator_reject = new Zend_Paginator(new Zend_Paginator_Adapter_Array($rows_reject));
     //调用分页
     $paginator_reject->setItemCountPerPage($num);
     //设置每一页显示的文章数目
     $paginator_reject->setCurrentPageNumber($page);
     //设置第一页显示
     $paginator_reject->setCurrentPageNumber($this->_getParam('page'));
     //从url获取需要显示的页码
     //查找已审核或修正的文章
     $rows_publish = $ArticleMapper->findArticleByStampForList('publish', $DeptID, $Column, $UserID, $BeginStamp, $EndStamp);
     $paginator_publish = new Zend_Paginator(new Zend_Paginator_Adapter_Array($rows_publish));
     //调用分页
     $paginator_publish->setItemCountPerPage($num);
     //设置每一页显示的文章数目
     $paginator_publish->setCurrentPageNumber($page);
     //设置第一页显示
     $paginator_publish->setCurrentPageNumber($this->_getParam('page'));
     //从url获取需要显示的页码
     /* 返回view的信息 */
     if ($_SESSION['user']['DeptID'] == 0 && $_SESSION['user']['Type'] != 3) {
         $this->view->DeptCodeSelected = $DeptCode;
         $AllDeptMapper = new Application_Model_DepartmentMapper();
         $arrAllDept = $AllDeptMapper->findAllDept();
         $this->view->arrAllDept = $arrAllDept;
     }
     $this->view->PublishType = $this->_request->getParam("type");
     if ($_SESSION['user']['Type'] == 1) {
         if ($DeptID != -1) {
             $this->view->ListTitle .= $arrDept[0]['DeptName'];
             $this->view->ListTitle .= " 的 ";
         }
     }
     $ColumnId = $this->_request->getParam("column");
     $ColumnMapper = new Application_Model_ColumnMapper();
     $arrColumn = $ColumnMapper->findColumnByCode($ColumnId);
     if (!empty($arrColumn)) {
         $this->view->ListTitle .= $arrColumn[0]['ColumnName'];
     } else {
         $this->view->ListTitle .= "全部文章";
     }
     $this->view->paginator_all = $paginator_all;
     $this->view->paginator_wait = $paginator_wait;
     $this->view->paginator_reject = $paginator_reject;
     $this->view->paginator_publish = $paginator_publish;
 }