Пример #1
0
 /**
  * 取得用户数据的分页器
  * 
  * @param integer $page
  * @param array $where
  * @return Zend_Paginator
  */
 public function getPaginator($page = 1, $where = array())
 {
     $select = $this->_userDAO->select();
     if (!empty($where)) {
         foreach (array_filter($where) as $cond => $value) {
             $select->where("{$cond} = ?", $value);
         }
     }
     $paginator = Zend_Paginator::factory($select);
     $paginator->setCurrentPageNumber($page ?: 1);
     return $paginator;
 }
Пример #2
0
 /**
  * 取得用户数据对象
  * 
  * @param string|integer $userNameOrId
  * @param ZtChart_Model_DbTable_User $userDAO
  * @return ZtChart_Model_Db_Table_Row
  */
 public function fetchRow($userNameOrId, $userDAO = null)
 {
     if (null === $userDAO) {
         $userDAO = new ZtChart_Model_DbTable_User();
     }
     if (self::ANONYMOUS_ID === $userNameOrId || self::ANONYMOUS_NAME == $userNameOrId) {
         $userRow = $userDAO->createRow(array('user_id' => self::ANONYMOUS_ID, 'user_name' => self::ANONYMOUS_NAME, 'user_roleid' => self::$_anonymousRole, 'user_active' => 1));
         $userRow->setReadOnly(true);
     } else {
         $userRow = $userDAO->fetchRow(array(is_numeric($userNameOrId) ? 'user_id = ?' : 'user_name = ?' => $userNameOrId));
     }
     return $userRow;
 }