public function execute() { $this->forceSystemAuthentication(); $start = microtime(true); $limit = 7; // new partners $c = new Criteria(); $this->partner_count = PartnerPeer::doCount($c); // count before setting the limit $c->setLimit($limit); $c->addDescendingOrderByColumn(PartnerPeer::CREATED_AT); $newest_partners = PartnerPeer::doSelect($c); // $new_partners_ids = self::getIds( $new_partners ); // fetch stats for these partners // TODO - if new - what statistics could it have ?? // fdb::populateObjects( $newest_partners , new PartnerStatsPeer() , "id" , "partnerStats" , false ,"partnerId"); $exclude = $this->getP("exclude"); if ($exclude) { self::addToExceludeList($exclude); } $exclude_list = self::getExceludeList(); // most viewed $c = new Criteria(); $c->add(PartnerStatsPeer::PARTNER_ID, $exclude_list, Criteria::NOT_IN); $c->setLimit($limit); $c->addDescendingOrderByColumn(PartnerStatsPeer::VIEWS); $stats_most_views = PartnerStatsPeer::doSelect($c); $most_views = self::getPartnerListFromStats($stats_most_views); // most entries $c = new Criteria(); $c->add(PartnerStatsPeer::PARTNER_ID, $exclude_list, Criteria::NOT_IN); $c->setLimit($limit); $c->addDescendingOrderByColumn(PartnerStatsPeer::ENTRIES); $stats_most_entries = PartnerStatsPeer::doSelect($c); $most_entries = self::getPartnerListFromStats($stats_most_entries); $end = microtime(true); $this->newest_partners = $newest_partners; $this->most_views = $most_views; $this->most_entries = $most_entries; $this->bench = $end - $start; }
/** * 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) { $objs = null; if (empty($pks)) { $objs = array(); } else { $criteria = new Criteria(PartnerStatsPeer::DATABASE_NAME); $criteria->add(PartnerStatsPeer::PARTNER_ID, $pks, Criteria::IN); $objs = PartnerStatsPeer::doSelect($criteria, $con); } return $objs; }