public function executeSitemap() { $sitemap = new sfDefaultSitemap(); $projects = ProjectPeer::doSelect(new Criteria()); $priority = '0.3'; $freq = 'weekly'; foreach ($projects as $project) { $item = new sfSitemapItem(); $item->initialize(array('loc' => '@show_project?project=' . $project->getSlug(), 'lastmod' => $project->getUpdatedAt(), 'changeFreq' => $freq, 'piority' => $priority)); $sitemap->addItem($item); } $members = sfGuardUserProfilePeer::doSelect(new Criteria()); foreach ($members as $member) { $item = new sfSitemapItem(); $item->initialize(array('loc' => '@show_user?user='******'lastmod' => $member->getUpdatedAt(), 'changeFreq' => $freq, 'piority' => $priority)); $sitemap->addItem($item); } $features = SuggestedFeaturePeer::doSelect(new Criteria()); $freq = 'daily'; foreach ($features as $feature) { $item = new sfSitemapItem(); $item->initialize(array('loc' => '@show_feature?feature=' . $feature->getUuid(), 'lastmod' => $feature->getUpdatedAt(), 'changeFreq' => $freq, 'piority' => $priority)); $sitemap->addItem($item); } $this->sitemap = $sitemap; }
public function executeList() { $title = "Most recent bug reports and feature suggestions"; $tab = str_replace(' ', '', $this->getRequestParameter('tab', 'mostrecent')); $c = new Criteria(); if ($tab == 'mostrecent') { $c->addDescendingOrderByColumn(SuggestedFeaturePeer::CREATED_AT); } elseif ($tab == 'mostpopular') { $c2 = new Criteria(); $c2->add(sfRecommendationPeer::RECOMMENDABLE_MODEL, 'SuggestedFeature'); $c2->addDescendingOrderByColumn(sfRecommendationPeer::SCORE); $recommendations = sfRecommendationPeer::doSelect($c2); // this loop has got to be SUPER intensive, it has to change soon $features = array(); foreach ($recommendations as $recommended) { $features[] = SuggestedFeaturePeer::retrieveByPK($recommended->getRecommendableId()); } $title = "Most popular bug reports and feature suggestions"; } elseif ($tab == 'bugs') { $c->add(SuggestedFeaturePeer::TYPE, sfConfig::get('app_feature_type_bug')); $c->addDescendingOrderByColumn(SuggestedFeaturePeer::CREATED_AT); $title = 'Bug Reports'; } elseif ($tab == 'features') { $c->add(SuggestedFeaturePeer::TYPE, sfConfig::get('app_feature_type_feature')); $c->addDescendingOrderByColumn(SuggestedFeaturePeer::CREATED_AT); $title = 'Feature Suggestions'; } //This only works while it's not a pager, not a long term solution! if (!isset($features)) { $this->features = SuggestedFeaturePeer::doSelect($c); } else { $this->features = $features; } myToolkit::prependPageTitle($title); }
public function getSuggestedFeatures($criteria = null, $con = null) { include_once 'lib/model/om/BaseSuggestedFeaturePeer.php'; if ($criteria === null) { $criteria = new Criteria(); } elseif ($criteria instanceof Criteria) { $criteria = clone $criteria; } if ($this->collSuggestedFeatures === null) { if ($this->isNew()) { $this->collSuggestedFeatures = array(); } else { $criteria->add(SuggestedFeaturePeer::USER_ID, $this->getId()); SuggestedFeaturePeer::addSelectColumns($criteria); $this->collSuggestedFeatures = SuggestedFeaturePeer::doSelect($criteria, $con); } } else { if (!$this->isNew()) { $criteria->add(SuggestedFeaturePeer::USER_ID, $this->getId()); SuggestedFeaturePeer::addSelectColumns($criteria); if (!isset($this->lastSuggestedFeatureCriteria) || !$this->lastSuggestedFeatureCriteria->equals($criteria)) { $this->collSuggestedFeatures = SuggestedFeaturePeer::doSelect($criteria, $con); } } } $this->lastSuggestedFeatureCriteria = $criteria; return $this->collSuggestedFeatures; }
public static function retrieveByPKs($pks, $con = null) { if ($con === null) { $con = Propel::getConnection(self::DATABASE_NAME); } $objs = null; if (empty($pks)) { $objs = array(); } else { $criteria = new Criteria(); $criteria->add(SuggestedFeaturePeer::ID, $pks, Criteria::IN); $objs = SuggestedFeaturePeer::doSelect($criteria, $con); } return $objs; }