Prepare statistics for SQLite

Temporarily disable 30-day statistics for SQLite
https://github.com/marienfressinaud/FreshRSS/issues/100
https://github.com/marienfressinaud/FreshRSS/issues/90
This commit is contained in:
Alexandre Alapetite
2014-07-06 11:54:00 +02:00
parent 96057fe491
commit 3bbd0e446f
4 changed files with 23 additions and 4 deletions

View File

@@ -3,7 +3,7 @@
class FreshRSS_stats_Controller extends Minz_ActionController {
public function indexAction() {
$statsDAO = new FreshRSS_StatsDAO ();
$statsDAO = FreshRSS_Factory::createStatsDAO();
Minz_View::appendScript (Minz_Url::display ('/scripts/flotr2.min.js?' . @filemtime(PUBLIC_PATH . '/scripts/flotr2.min.js')));
$this->view->repartition = $statsDAO->calculateEntryRepartition();
$this->view->count = ($statsDAO->calculateEntryCount());
@@ -13,7 +13,7 @@ class FreshRSS_stats_Controller extends Minz_ActionController {
}
public function idleAction() {
$statsDAO = new FreshRSS_StatsDAO ();
$statsDAO = FreshRSS_Factory::createStatsDAO();
$feeds = $statsDAO->calculateFeedLastDate();
$idleFeeds = array();
$now = new \DateTime();

View File

@@ -19,4 +19,14 @@ class FreshRSS_Factory {
return new FreshRSS_EntryDAO();
}
}
public static function createStatsDAO() {
$db = Minz_Configuration::dataBase();
if ($db['type'] === 'sqlite') {
return new FreshRSS_StatsDAOSQLite();
} else {
return new FreshRSS_StatsDAO();
}
}
}

View File

@@ -201,7 +201,7 @@ SQL;
return $stm->fetchAll(PDO::FETCH_ASSOC);
}
private function convertToSerie($data) {
protected function convertToSerie($data) {
$serie = array();
foreach ($data as $key => $value) {
@@ -211,7 +211,7 @@ SQL;
return json_encode($serie);
}
private function convertToPieSerie($data) {
protected function convertToPieSerie($data) {
$serie = array();
foreach ($data as $value) {

View File

@@ -0,0 +1,9 @@
<?php
class FreshRSS_StatsDAOSQLite extends FreshRSS_StatsDAO {
public function calculateEntryCount() {
return $this->convertToSerie(array()); //TODO: Implement 30-day statistics for SQLite
}
}