public function executeStats() { $stats = array(); $c = new Criteria(); // readers_cnt $date = date('Y-m-d', strtotime('-1 day')); $c->clear(); $c->add(ReaderPeer::DATE, $date); $readers = ReaderPeer::doSelectOne($c); $cnt = $readers ? $readers->getCnt() : 0; $tcnt = $cnt % 100; $str = ''; if ($tcnt == 1) { $str = 'osoba'; } else { if ($tcnt >= 12 && $tcnt <= 14) { $str = 'osób'; } else { if ($tcnt % 10 > 1 && $tcnt % 10 < 5) { $str = 'osoby'; } else { $str = 'osób'; } } } $stats['reader_cnt'] = $cnt == 0 ? 'brak danych' : sprintf('%d %s', $cnt, $str); // blog_cnt $c->clear(); $c->add(BlogPeer::APPROVED, true); $stats['blog_cnt'] = BlogPeer::doCount($c); // post_cnt $c->clear(); $c->add(PostPeer::DELETED, false); $stats['post_cnt'] = PostPeer::doCount($c); // month_avg $c->clear(); $c->addAscendingOrderByColumn(PostPeer::CREATED_AT); $post = PostPeer::doSelectOne($c); $ots = $post ? $post->getCreatedAt(null) : time(); $years = date('Y') - date('Y', $ots); $months = $years * 12 + (date('n') - date('n', $ots)); $stats['month_avg'] = $months > 0 ? round($stats['post_cnt'] / $months) : 0; // assign $this->stats = $stats; }
/** * Clear the conditions to allow the reuse of the query object. * The ModelCriteria's Model and alias 'all the properties set by construct) will remain. * * @return ModelCriteria The primary criteria object */ public function clear() { parent::clear(); $this->with = array(); $this->primaryCriteria = null; $this->formatter = null; return $this; }
function getAllRolesFilter($start, $limit, $filter = '') { //echo $start.'<<<<'.$limit; $systemCode = 'PROCESSMAKER'; $oCriteria2 = new Criteria('rbac'); $result = array(); $oCriteria2->addSelectColumn('COUNT(*) AS CNT'); $oCriteria2->add(RolesPeer::ROL_UID, '', Criteria::NOT_EQUAL); $oCriteria2->add(SystemsPeer::SYS_CODE, $systemCode); $oCriteria2->add(RolesPeer::ROL_CREATE_DATE, '', Criteria::NOT_EQUAL); $oCriteria2->add(RolesPeer::ROL_UPDATE_DATE, '', Criteria::NOT_EQUAL); $oCriteria2->addJoin(RolesPeer::ROL_SYSTEM, SystemsPeer::SYS_UID); if ($filter != '') { $oCriteria2->add(RolesPeer::ROL_CODE, '%' . $filter . '%', Criteria::LIKE); } $result['COUNTER'] = $oCriteria2; $oCriteria = new Criteria('rbac'); $oCriteria->clear(); $oCriteria->addSelectColumn(RolesPeer::ROL_UID); $oCriteria->addSelectColumn(RolesPeer::ROL_PARENT); $oCriteria->addSelectColumn(RolesPeer::ROL_SYSTEM); $oCriteria->addSelectColumn(SystemsPeer::SYS_CODE); $oCriteria->addSelectColumn(RolesPeer::ROL_CODE); $oCriteria->addSelectColumn(RolesPeer::ROL_CREATE_DATE); $oCriteria->addSelectColumn(RolesPeer::ROL_UPDATE_DATE); $oCriteria->addSelectColumn(RolesPeer::ROL_STATUS); $oCriteria->add(RolesPeer::ROL_UID, '', Criteria::NOT_EQUAL); $oCriteria->add(SystemsPeer::SYS_CODE, $systemCode); $oCriteria->add(RolesPeer::ROL_CREATE_DATE, '', Criteria::NOT_EQUAL); $oCriteria->add(RolesPeer::ROL_UPDATE_DATE, '', Criteria::NOT_EQUAL); $oCriteria->addJoin(RolesPeer::ROL_SYSTEM, SystemsPeer::SYS_UID); if ($filter != '') { $oCriteria->add(RolesPeer::ROL_CODE, '%' . $filter . '%', Criteria::LIKE); } $oCriteria->setOffset($start); $oCriteria->setLimit($limit); $result['LIST'] = $oCriteria; return $result; }
/** * Clear the conditions to allow the reuse of the query object. * The ModelCriteria's Model and alias 'all the properties set by construct) will remain. * * @return ModelCriteria The primary criteria object */ public function clear() { parent::clear(); $this->with = array(); $this->primaryCriteria = null; $this->formatter = null; $this->select = null; $this->modelAlias = $this->originalModelAlias; $this->currentAlias = null; $this->setDbName($this->originalDbName); $this->useAliasInSQL = false; $this->isKeepQuery = true; $this->previousJoin = null; $this->isWithOneToMany = false; $this->replacedColumns = array(); $this->foundMatch = false; return $this; }