'J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'); public function __construct() { $this->_db = Zend_Registry::get('db'); } /** * @return Array */ public function getNumRegisteredUsersDays($unixDateStart, $unixDateEnd) { $select = $this->_db->select()->from('users', array('registration_date' => 'registration_date', 'users' => 'COUNT(registration_date)')) ->where('registration_date >= ?', strftime('%Y-%m-%d', $unixDateStart)) ->where('registration_date < ?', strftime('%Y-%m-%d', $unixDateEnd)) ->group('registration_date') ->order('registration_date'); return $this->_db->fetchAssoc($select); } /** * @return Array */ public function getNumRegisteredUsersYear($unixDateStart, $unixDateEnd) { $select = $this->_db->select()->from('users', array('registration_date' => 'MONTH(registration_date)', 'users' => 'COUNT(MONTH(registration_date))')) ->where('registration_date >= ?', strftime('%Y-%m-%d', $unixDateStart)) ->where('registration_date <= ?', strftime('%Y-%m-%d', $unixDateEnd)) ->group('MONTH(registration_date)') ->order('registration_date'); return $this->_db->fetchAssoc($select); } /** * @return int */ public function getNumRegisteredUsers($unixDate) { $select = $this->_db->select()->from('users') ->where('registration_date < ?', strftime('%Y-%m-%d', $unixDate)); $statement = $this->_db->prepare($select); $statement->execute(); return $statement->rowCount(); } /** * @return Array */ public function getAllTestUsersIds() { $select = $this->_db->select()->from('users', 'id'); return $this->_db->fetchAll($select); } /** * @return Array */ public function getNumAuthorizationsDays($unixDateStart, $unixDateEnd) { $select = $this->_db->select()->from('history', array('date' => 'DATE(date)', 'entry' => 'COUNT(DATE(date))')) ->where('date>= ?', strftime('%Y-%m-%d', $unixDateStart)) ->where('date< ?', strftime('%Y-%m-%d', $unixDateEnd)) ->group('DATE(date)') ->order('date'); return $this->_db->fetchAssoc($select); } /** * @return Array */ public function getNumAuthorizationsYear($unixDateStart, $unixDateEnd) { $select = $this->_db->select()->from('history', array('date' => 'MONTH(date)', 'entry' => 'COUNT(MONTH(date))')) ->where('date>= ?', strftime('%Y-%m-%d', $unixDateStart)) ->where('date<= ?', strftime('%Y-%m-%d', $unixDateEnd)) ->group('MONTH(date)') ->order('date'); return $this->_db->fetchAssoc($select); } /** * @return int */ public function getNumTrustedSites($unixDate) { $select = $this->_db->select()->from('sites') ->where('creation_date < ?', strftime('%Y-%m-%d', $unixDate)); $statement = $this->_db->prepare($select); $statement->execute(); return $statement->rowCount(); } /** * @return Array */ public function getNumTrustedSitesDays($unixDateStart, $unixDateEnd) { $select = $this->_db->select()->from('sites', array('creation_date' => 'creation_date', 'site' => 'COUNT(creation_date)')) ->where('creation_date>= ?', strftime('%Y-%m-%d', $unixDateStart)) ->where('creation_date< ?', strftime('%Y-%m-%d', $unixDateEnd)) ->group('creation_date') ->order('creation_date'); return $this->_db->fetchAssoc($select); } /** * @return Array */ public function getNumTrustedSitesYear($unixDateStart, $unixDateEnd) { $select = $this->_db->select()->from('sites', array('creation_date' => 'MONTH(creation_date)', 'site' => 'COUNT(MONTH(creation_date))')) ->where('creation_date>= ?', strftime('%Y-%m-%d', $unixDateStart)) ->where('creation_date<= ?', strftime('%Y-%m-%d', $unixDateEnd)) ->group('MONTH(creation_date)') ->order('creation_date'); return $this->_db->fetchAssoc($select); } /** * @return Array */ public function getTopTenSites() { $select = $this->_db->select()->from('sites', array('num' => 'COUNT(site)', 'site' => 'site')) ->group('site') ->order('num DESC') ->limit(10); return $this->_db->fetchAll($select); } }