diff --git a/application/default/controllers/AuthorController.php b/application/default/controllers/AuthorController.php index ddd326fe..8705941c 100644 --- a/application/default/controllers/AuthorController.php +++ b/application/default/controllers/AuthorController.php @@ -428,14 +428,21 @@ class AuthorController extends Zend_Controller_Action } //列表 - if(empty($ac) || $ac=='list'){ + if(empty($ac) || $ac=='list' || $ac=='search'){ $sql = "SELECT a.*,m.title,m.description,g.id as gid FROM normalmetadata m LEFT JOIN mdauthor a ON m.uuid=a.uuid left join geonetworkmetadata g on m.uuid=g.uuid - WHERE a.userid=? AND status>=0 - ORDER BY status DESC,a.id DESC - "; + WHERE a.userid=? AND status>=0"; + if ($ac=='search') + { + $key = trim($this->_request->getParam('q')); + $this->view->q = $key; + $search=new Search($key); + $where=$search->sql_expr(array("m.title","m.description")); + $sql.=' and '.$where; + } + $sql.="ORDER BY status DESC,a.id DESC"; $sth = $this->db->prepare($sql); $sth->execute(array($u_id)); @@ -449,37 +456,7 @@ class AuthorController extends Zend_Controller_Action $this->view->paginator=$paginator; }//list - - //搜索 - if($ac == "search") - { - $keyword = trim($this->_request->getParam('q')); - $this->view->q = $keyword; - if (!preg_match_all("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$keyword,$matchs)) - { - $data = array('error'=>'搜索关键字中只能包含汉字、英文、数字'); - } - else - { - //搜索标题和描述两个字段 - $sql = "SELECT a.*,m.title,m.description FROM normalmetadata m - LEFT JOIN mdauthor a ON m.uuid=a.uuid - WHERE (m.title like ? OR m.description like ?) AND a.userid=? AND status>=0 - ORDER BY status DESC,a.id DESC - "; - $sth = $this->db->prepare($sql); - $sth->execute(array("%$keyword%","%$keyword%",$u_id)); - $rows = $sth->fetchAll(); - $paginator = Zend_Paginator::factory($rows); - $paginator->setCurrentPageNumber($this->_getParam('page')); - $paginator->setItemCountPerPage(5); - $paginator->setView($this->view); - Zend_View_Helper_PaginationControl::setDefaultViewPartial('pagination_param.phtml'); - $this->view->paginator=$paginator; - } - }// search - //激活数据作者 if($ac == "active") { @@ -561,7 +538,7 @@ class AuthorController extends Zend_Controller_Action }//激活数据作者 - //否认激活 + //拒绝激活 if($ac == "lock") { $this->_helper->viewRenderer('accept-active');