/** * Executes index action * * @param sfRequest $request A request object */ public function executeIndex(sfWebRequest $request) { # Recently added $c = new Criteria(); $c->addDescendingOrderByColumn(PluginPeer::CREATED_AT); $c->setLimit(6); $this->recent = PluginPeer::doSelect($c); # Most downloaded $c = new Criteria(); $c->addDescendingOrderByColumn(PluginPeer::DOWNLOADS_COUNT); $c->setLimit(3); $this->hot = PluginPeer::doSelect($c); # Tags $c = new Criteria(); $c->addDescendingOrderByColumn(TermPeer::COUNT); $c->setLimit(10); $this->terms = TermPeer::retrieveTags($c); # Authors $c = new Criteria(); $c->addDescendingOrderByColumn(AuthorPeer::LOGGED_AT); $c->setLimit(6); // if ($this->getUser()->isAuthenticated()) // $c->add(AuthorPeer::ID, $this->getUser()->getId(), Criteria::NOT_EQUAL); $this->authors = AuthorPeer::doSelect($c); }
public function executeRecent(sfWebRequest $request) { $feed = $this->getFeed($request->getParameter('format')); $c = new Criteria(); $c->addDescendingOrderByColumn(PluginPeer::CREATED_AT); $c->setLimit(20); $plugins = PluginPeer::doSelect($c); foreach ((array) $plugins as $plugin) { $item = new sfFeedItem(); $item->setTitle($plugin->getTitle()); $item->setLink('@plugin?slug=' . $plugin->getSlug()); $item->setAuthorName($plugin->getAuthor()->getFullName()); $item->setPubdate($plugin->getCreatedAt('U')); $item->setUniqueId($plugin->getSlug()); $item->setContent($plugin->getDescription()); $feed->addItem($item); } $this->feed = $feed; }
/** * Retrieve multiple objects by pkey. * * @param array $pks List of primary keys * @param PropelPDO $con the connection to use * @throws PropelException Any exceptions caught during processing will be * rethrown wrapped into a PropelException. */ public static function retrieveByPKs($pks, PropelPDO $con = null) { if ($con === null) { $con = Propel::getConnection(PluginPeer::DATABASE_NAME, Propel::CONNECTION_READ); } $objs = null; if (empty($pks)) { $objs = array(); } else { $criteria = new Criteria(PluginPeer::DATABASE_NAME); $criteria->add(PluginPeer::ID, $pks, Criteria::IN); $objs = PluginPeer::doSelect($criteria, $con); } return $objs; }
public function executeView(sfWebRequest $request) { $this->author = AuthorPeer::retrieveByUsername($request->getParameter('username')); $this->forward404Unless($this->author); if ($this->author->getPluginsCount()) { $c = new Criteria(); $c->addDescendingOrderByColumn(PluginPeer::DOWNLOADS_COUNT); $c->add(PluginPeer::AUTHOR_ID, $this->author->getId()); $this->plugins = PluginPeer::doSelect($c); } }