Changeset 77
- Timestamp:
- 02/24/06 15:01:03 (3 years ago)
- Files:
-
- trunk/apps/frontend/config/routing.yml (modified) (2 diffs)
- trunk/apps/frontend/modules/question/actions/actions.class.php (modified) (1 diff)
- trunk/apps/frontend/modules/sidebar/templates/_rss_links.php (modified) (1 diff)
- trunk/lib/model/QuestionPeer.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/apps/frontend/config/routing.yml
r58 r77 4 4 param: { module: question, action: show } 5 5 6 frontpage_questions: 7 url: /front/:page 8 param: { module: question, action: frontpage, page: 1 } 9 6 10 popular_questions: 7 11 url: /index/:page 8 param: { module: question, action: list }12 param: { module: question, action: list, page: 1 } 9 13 10 14 recent_questions: … … 122 126 homepage: 123 127 url: / 124 param: { module: question, action: list}128 param: { module: question, action: frontpage } 125 129 126 130 default_symfony: trunk/apps/frontend/modules/question/actions/actions.class.php
r73 r77 11 11 class questionActions extends sfActions 12 12 { 13 public function executeList ()13 public function executeList() 14 14 { 15 $this->question_pager = QuestionPeer::getHomepagePager($this->getRequestParameter('page', 1)); 15 $this->question_pager = QuestionPeer::getPopularPager($this->getRequestParameter('page', 1)); 16 } 17 18 public function executeFrontpage() 19 { 20 $this->question_pager = QuestionPeer::getFrontPagePager($this->getRequestParameter('page', 1)); 16 21 } 17 22 trunk/apps/frontend/modules/sidebar/templates/_rss_links.php
r64 r77 1 1 <ul id="rss_links"> 2 <li><?php echo link_to(__('popular questions'), '@homepage') ?> <?php echo link_to_rss('popular questions', 'feed/popular') ?></li> 2 <li><?php echo link_to(__('featured questions'), '@frontpage_questions') ?> </li> 3 <li><?php echo link_to(__('popular questions'), '@popular_questions') ?> <?php echo link_to_rss('popular questions', 'feed/popular') ?></li> 3 4 <li><?php echo link_to(__('latest questions'), '@recent_questions') ?> <?php echo link_to_rss('latest questions', '@feed_recent_questions') ?></li> 4 5 <li><?php echo link_to(__('latest answers'), '@recent_answers') ?> <?php echo link_to_rss('latest answers', '@feed_recent_answers') ?></li> trunk/lib/model/QuestionPeer.php
r69 r77 31 31 } 32 32 33 public static function get HomepagePager($page)33 public static function getPopularPager($page) 34 34 { 35 35 $pager = new sfPropelPager('Question', sfConfig::get('app_pager_homepage_max')); … … 37 37 $c->addDescendingOrderByColumn(self::INTERESTED_USERS); 38 38 $c->addDescendingOrderByColumn(self::CREATED_AT); 39 $c = self::addPermanentTagToCriteria($c); 40 $pager->setCriteria($c); 41 $pager->setPage($page); 42 $pager->setPeerMethod('doSelectJoinUser'); 43 $pager->init(); 44 45 return $pager; 46 } 47 48 public static function getFrontPagePager($page) 49 { 50 $pager = new sfPropelPager('Question', sfConfig::get('app_pager_homepage_max')); 51 $c = new Criteria(); 52 $c->addAsColumn('count', "count(".InterestPeer::USER_ID.")"); 53 $c->addJoin(InterestPeer::QUESTION_ID, QuestionPeer::ID); 54 $c->addGroupByColumn(InterestPeer::QUESTION_ID); 55 $c->addDescendingOrderByColumn('count'); 56 $c->addDescendingOrderByColumn(self::CREATED_AT); 57 $c->add(InterestPeer::CREATED_AT, time()-86400*10, Criteria::GREATER_THAN); 39 58 $c = self::addPermanentTagToCriteria($c); 40 59 $pager->setCriteria($c);
