/**
  *
  * @return sfDoctrinePager
  */
 protected function getPager()
 {
     $p = new sfDoctrinePager('sfGuardUser', 10);
     $p->setQuery($this->getQuery());
     $p->setPage($this->getPage());
     return $p;
 }
 protected function getPager(Doctrine_Query $q, $page, $size)
 {
     $pager = new sfDoctrinePager('Bbs', $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     return $pager;
 }
 /**
  * Retrieves a pager of recent associations 
  * @param string model name
  * @return Pager
  */
 public static function listRecentChangesPager($doc_id = null, $users = null, $orderby = null, $npp = 25)
 {
     // TODO: possibility to filter on association type?
     $pager = new sfDoctrinePager('AssociationLog', $npp);
     $q = $pager->getQuery();
     $q->select('al.*, mi.name, mi.search_name, li.name, li.search_name, u.username, u.login_name, u.topo_name')->from('AssociationLog al')->leftJoin('al.mainI18n mi')->leftJoin('al.linkedI18n li')->leftJoin('al.user_private_data u');
     // filter on a specific doc if needed
     if ($doc_id) {
         $q->addWhere('al.main_id=? OR al.linked_id=?', array($doc_id, $doc_id));
     }
     // filter on a specific user if needed
     if ($users) {
         $users = explode('-', $users);
         if (count($users)) {
             $where_ids = array();
             foreach ($users as $uid) {
                 $where_ids[] = '?';
             }
             $where_ids = implode(', ', $where_ids);
             if (count($where_ids) == 1) {
                 $where = ' = ' . $where_ids;
             } else {
                 $where = ' IN ( ' . $where_ids . ' )';
             }
             $q->addWhere('u.id' . $where, $users);
         }
     }
     if (empty($orderby)) {
         $q->orderBy('al.associations_log_id DESC');
         // ~ decreasing time (but faster, since there is an index on this field).
     } elseif ($orderby == 'uid') {
         $q->orderBy('u.id ASC');
     }
     return $pager;
 }
 public function buildDataGrid(sfWebRequest $request)
 {
     if ($this->table_method) {
         $typeTable = Doctrine_Core::getTable($this->ContentType->name);
         $method = $this->table_method;
         $q = $typeTable->{$method}($this, $request);
         if ($q instanceof sfSympalDataGrid) {
             $dataGrid = $q;
         } else {
             if ($q instanceof sfDoctrinePager || $q instanceof Doctrine_Query_Abstract) {
                 $dataGrid = sfSympalDataGrid::create($q);
             } else {
                 throw new sfException(sprintf('ContentList table_method must return an instance of sfSympalDataGrid, sfDoctrinePager or Doctrine_Query_Abstract. An instance of "%s" was returned.', get_class($q)));
             }
         }
     } else {
         $pager = new sfDoctrinePager('sfSympalContent');
         $pager->setQuery($this->_buildQuery($request));
         $dataGrid = sfSympalDataGrid::create($pager)->addColumn('c.title', 'renderer=sympal_data_grid/default_title')->addColumn('c.date_published')->addColumn('u.username', 'label=Created By');
     }
     if ($this->sort_column) {
         $dataGrid->setDefaultSort($this->sort_column, $this->sort_order);
     }
     $dataGrid->setMaxPerPage($this->rows_per_page > 0 ? $this->rows_per_page : sfSympalConfig::get('rows_per_page', null, 10));
     $dataGridRequestInfo = $request->getParameter($dataGrid->getId());
     return $dataGrid;
 }
/**
 * Get the navigation links for given sfDoctrinePager instance
 *
 * @param sfDoctrinePager $pager
 * @param string $uri  The uri to prefix to the links
 * @return string $html
 */
function get_sympal_pager_navigation($pager, $uri, $requestKey = 'page')
{
    sympal_use_stylesheet('/sfSympalPlugin/css/pager.css');
    $navigation = '<div class="sympal_pager_navigation">';
    if ($pager->haveToPaginate()) {
        $uri .= (preg_match('/\\?/', $uri) ? '&' : '?') . $requestKey . '=';
        // First and previous page
        if ($pager->getPage() != 1) {
            $navigation .= link_to(image_tag('/sf/sf_admin/images/first.png', 'align=absmiddle'), $uri . '1');
            $navigation .= link_to(image_tag('/sf/sf_admin/images/previous.png', 'align=absmiddle'), $uri . $pager->getPreviousPage()) . ' ';
        }
        // Pages one by one
        $links = array();
        foreach ($pager->getLinks() as $page) {
            $links[] = '<span>' . link_to_unless($page == $pager->getPage(), $page, $uri . $page) . '</span>';
        }
        $navigation .= join('  ', $links);
        // Next and last page
        if ($pager->getPage() != $pager->getLastPage()) {
            $navigation .= ' ' . link_to(image_tag('/sf/sf_admin/images/next.png', 'align=absmiddle'), $uri . $pager->getNextPage());
            $navigation .= link_to(image_tag('/sf/sf_admin/images/last.png', 'align=absmiddle'), $uri . $pager->getLastPage());
        }
    }
    $navigation .= '</div>';
    return $navigation;
}
 public function getRecentPager($page = 1, $size = 20)
 {
     $pager = new sfDoctrinePager('PluginPackage', $size);
     $pager->setQuery($this->getRecentReleaseQuery($size));
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
Example #7
0
 protected function getPager(Doctrine_Query $query)
 {
     $pager = new sfDoctrinePager('Fortune', sfConfig::get('app_fortunes_max_items', 10));
     $pager->setQuery($query);
     $pager->setPage($this->getRequest()->getParameter('page', 1));
     $pager->init();
     return $pager;
 }
Example #8
0
 public function getPager()
 {
     $pager = new sfDoctrinePager('NewItem', 5);
     $pager->setQuery($this->getNewsQuery());
     $pager->setPage($this->getRequestParameter('page', 1));
     $pager->init();
     return $pager;
 }
 public function getPager(Member $member, $page = 1, $size = 20)
 {
     $q = $this->getQuery($member);
     $pager = new sfDoctrinePager('DiaryCommentUpdate', $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     return $pager;
 }
 public function getResultListPager(Doctrine_Query $query, $page = 1, $size = 20)
 {
     $pager = new sfDoctrinePager('CommunityTopic', $size);
     $pager->setQuery($query);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getMangaListPagerByMemberId($memberId, $page = 1, $size = 20)
 {
     $q = $this->createQuery()->where('member_id', $memberId)->orderBy('updated_at');
     $pager = new sfDoctrinePager('CcccManga', $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
  protected function getPager( $size = 50 )
  {
    $pager = new sfDoctrinePager('dsPerson', $size); // adusting size possible !! set 0 to deactivate
    $pager->setQuery($this->buildQuery());
    $pager->setPage($this->getRequest()->getParameter('page'));
    $pager->init();

    return $pager;
  }
 public function getListPager($memberId, $page = 1, $size = 20)
 {
     $pager = new sfDoctrinePager('OpenIDTrustLog', $size);
     $q = $this->createQuery()->andWhere('member_id = ?', $memberId);
     $pager->setQuery($q);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 /**
  * get pager for assets
  * @param  array   $params
  * @param  string  $sort
  * @param  integer $page
  * @param  integer $size
  * @return sfPager
  */
 public function getPager(array $params, $sort = 'name', $page = 1, $size = 20)
 {
     $query = $this->search($params, $sort);
     $pager = new sfDoctrinePager('sfAsset', $size);
     $pager->setQuery($query);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getMemberPager($memberId, $accessMemberId, $size, $page = 1)
 {
     $q = $this->createQuery("g")->where("g.member_id = ?", $memberId)->orderBy("id DESC");
     $pager = new sfDoctrinePager("Geocode", $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getForUserPager($user_id, $page = 1, $max_per_page = 10)
 {
     $q = $this->getForUserCriteria($user_id);
     $pager = new sfDoctrinePager('sfSimpleForumTopic', $max_per_page);
     $pager->setPage($page);
     $pager->setQuery($q);
     $pager->init();
     return $pager;
 }
 /**
  * 下書きメッセージ一覧
  * @param $member_id
  * @param $page
  * @param $size
  * @return Message object(の配列)
  */
 public function getDraftMessagePager($member_id, $page = 1, $size = 20)
 {
     $q = $this->createQuery()->andWhere('member_id = ?', $member_id)->andWhere('is_deleted = ?', false)->andWhere('is_send = ?', false)->orderBy('created_at DESC');
     $pager = new sfDoctrinePager('SendMessageData', $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 protected function getPager(sfWebRequest $request)
 {
     $q = Doctrine::getTable('AlbumComment')->createQuery()->where('album_id = ?', $this->album->id)->orderBy('created_at DESC');
     $pager = new sfDoctrinePager('AlbumComment');
     $pager->setQuery($q);
     $pager->setPage($request['commentPage']);
     $pager->setMaxPerPage($this->size);
     return $pager;
 }
  /**
   * Get introFriend pager
   * @param int $memberIdTo member id
   * @param int $page page number
   * @param int $size show number
   * @return pager pager
   */
  public function getListPager($memberIdTo, $page = 1, $size = 20)
  {
    $pager = new sfDoctrinePager('IntroFriend', $size);
    $pager->setQuery($this->getListQuery($memberIdTo));
    $pager->setPage($page);
    $pager->init();

    return $pager;
  }
 public function getPager($packageId, $page = 1, $size = 20)
 {
     $q = Doctrine::getTable('Member')->createQuery('m')->where('p.package_id = ?', $packageId)->innerJoin('m.PluginMember p');
     $pager = new sfDoctrinePager('Member', $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getListPager($op2CommunityId, $page = 1, $size = 20)
 {
     $query = $this->createQuery()->where('op2_community_id = ?', $op2CommunityId)->orderBy('created_at DESC');
     $pager = new sfDoctrinePager('Op2CommunityEvent', $size);
     $pager->setQuery($query);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getListPager($page = 1, $size = 20)
 {
     $query = $this->createQuery()->orderBy('updated_at DESC');
     $pager = new sfDoctrinePager('VoteQuestion', $size);
     $pager->setQuery($query);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getListPager($page = 1, $size = 20)
 {
     $query = $this->createQuery('r')->leftJoin('r.ChatContent c')->groupBy('r.id')->orderBy('MAX(c.created_at) DESC');
     $pager = new sfDoctrinePager('ChatRoom', $size);
     $pager->setQuery($query);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getListPager($room, $page = 1, $size = 20)
 {
     $query = $this->createQuery()->where('chat_room_id = ?', $room->id)->andWhere('level >= 5')->orderBy('number');
     $pager = new sfDoctrinePager('ChatContent', $size);
     $pager->setQuery($query);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getMemberPluginPager($memberId, $page = 1, $size = 20)
 {
     $q = $this->createQuery()->where('id IN (SELECT pm.package_id FROM PluginMember pm WHERE pm.member_id = ? AND pm.is_active = ?)', array($memberId, true));
     $pager = new sfDoctrinePager('PluginPackage', $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
  public function getTrackPager( $page = 0 )
  {
    $pager = new sfDoctrinePager('dsClass', 20);
    $pager->setQuery( $this->getTrackQuery() );
    $pager->setPage( $page );
    $pager->init();

    return $pager;
  }
 public function getFriendListPager($memberId, $page = 1, $size = 20)
 {
     $subQuery = Doctrine::getTable('MemberRelationship')->createQuery()->select('mr.member_id_to')->from('MemberRelationship mr')->where('member_id_from = ?')->andWhere('is_friend = ?');
     $q = Doctrine::getTable('Member')->createQuery()->where('id IN (' . $subQuery->getDql() . ')', array($memberId, true));
     $pager = new sfDoctrinePager('Member', $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 /**
  * 削除済みメッセージ一覧
  * @param integer $memberId
  * @param integer $page
  * @param integer $size
  * @return DeletedMessage object(の配列)
  */
 public function getDeletedMessagePager($memberId = null, $page = 1, $size = 20)
 {
     $q = $this->addDeleteMessageQuery($this->createQuery(), $memberId);
     $q->orderBy('created_at DESC');
     $pager = new sfDoctrinePager('DeletedMessage', $size);
     $pager->setQuery($q);
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 /**
  * Fetch images from pool according to any default tag(s) option specified 
  * in the global schema.yml.
  * Override added to specify per tag in MooEditable
  * 
  * @return sfDoctrinePager
  */
 public function getPager($per_page = 12, $page = 1, $tagged_object = null, $tag = null)
 {
     $pager = new sfDoctrinePager($this->getClassnameToReturn(), $per_page);
     $im = new sfImagePoolImage();
     if (!$im->option('tagging')) {
         $tagged_object = $tag = null;
     }
     $im->free(true);
     if (isset($tagged_object) && ($tag = $tagged_object->getTagRestriction())) {
         $query = TagTable::getObjectTaggedWithQuery($this->getClassnameToReturn(), $tag, $pager->getQuery(), array('nb_common_tags' => 1));
         $pager->setQuery($query);
     } else {
         if (!empty($tag)) {
             // If only tags we have no taggable object
             // So get images tagged with this query and do a whereIn on the ids
             $tags = explode(',', $tag);
             $images = TagTable::getObjectTaggedWith($tags, array('model' => 'sfImagePoolImage', 'nb_common_tags' => 1));
             $image_ids = array();
             foreach ($images as $image) {
                 $image_ids[] = $image->id;
             }
             if (!empty($image_ids)) {
                 $pager->getQuery()->whereIn('sfImagePoolImage.id', $image_ids);
             } else {
                 $pager->getQuery()->where('false');
             }
             // we have no images tagged
         }
     }
     $pager->getQuery()->orderBy('updated_at DESC');
     $pager->setPage($page);
     $pager->init();
     return $pager;
 }
 public function getPager($page = 1, $size = 20, $isCheckActive = false, $isPc = null, $isMobile = null)
 {
     if (!$this->isValid()) {
         throw $this->getErrorSchema();
     }
     $query = Doctrine::getTable('Application')->createQuery('a')->leftJoin('a.Translation t');
     if ($isCheckActive) {
         $query->where('a.is_active = ?', true);
     }
     if (null !== $isPc) {
         $query->andWhere('a.is_pc = ?', $isPc);
     }
     if (null !== $isMobile) {
         $query->andWhere('a.is_mobile = ?', $isMobile);
     }
     $keywords = $this->getValue('keyword');
     if ($keywords) {
         if (!is_array($keywords)) {
             $keywords = array($keywords);
         }
         foreach ($keywords as $keyword) {
             $query->addWhere('t.title LIKE ?', '%' . $keyword . '%');
         }
     }
     $orderBy = $this->getValue('order_by');
     if (!$orderBy) {
         $orderBy = 'created_at_desc';
     }
     $isDesc = false;
     if (preg_match('/_desc$/', $orderBy)) {
         $isDesc = true;
         $orderBy = substr($orderBy, 0, strlen($orderBy) - 5);
     }
     $orderByDql = null;
     switch ($orderBy) {
         case 'created_at':
             $orderByDql = 't.created_at';
             break;
         case 'users':
             $subquery = Doctrine::getTable('MemberApplication')->createQuery('ma')->select('COUNT(*)')->where('ma.application_id = a.id');
             $query->select('*, (' . $subquery->getDql() . ') AS users');
             $orderByDql = 'users';
     }
     if ($orderByDql) {
         if ($isDesc) {
             $orderByDql .= ' DESC';
         }
         $query->orderBy($orderByDql);
     }
     $pager = new sfDoctrinePager('Application', $size);
     $pager->setQuery($query);
     $pager->getPage($page);
     $pager->init();
     return $pager;
 }