aboutsummaryrefslogtreecommitdiff
path: root/app/Models/StatsDAO.php
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-10-09 16:18:26 +0200
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2014-10-09 16:18:26 +0200
commit799bb6e0de68f5dddde53a6ea7178a518d16cbfa (patch)
treeb8b7b63edae7b9f7553a5df15f2c53c002b26fb5 /app/Models/StatsDAO.php
parent6dfbc28042c6e18da9c7578ed626064a4d8c7cb3 (diff)
parentcaf98a6468dcea5ae8c38062e4eb527cb3667db9 (diff)
Merge branch 'hotfixes' into beta
Conflicts: CHANGELOG README.fr.md README.md constants.php
Diffstat (limited to 'app/Models/StatsDAO.php')
-rw-r--r--app/Models/StatsDAO.php27
1 files changed, 24 insertions, 3 deletions
diff --git a/app/Models/StatsDAO.php b/app/Models/StatsDAO.php
index 40505ab3e..08dd4cd5c 100644
--- a/app/Models/StatsDAO.php
+++ b/app/Models/StatsDAO.php
@@ -80,6 +80,27 @@ SQL;
}
/**
+ * Calculates entry average per day on a 30 days period.
+ *
+ * @return integer
+ */
+ public function calculateEntryAverage() {
+ $period = self::ENTRY_COUNT_PERIOD;
+
+ // Get stats per day for the last 30 days
+ $sql = <<<SQL
+SELECT COUNT(1) / {$period} AS average
+FROM {$this->prefix}entry AS e
+WHERE FROM_UNIXTIME(e.date, '%Y%m%d') BETWEEN DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -{$period} DAY), '%Y%m%d') AND DATE_FORMAT(DATE_ADD(NOW(), INTERVAL -1 DAY), '%Y%m%d')
+SQL;
+ $stm = $this->bd->prepare($sql);
+ $stm->execute();
+ $res = $stm->fetch(PDO::FETCH_NAMED);
+
+ return round($res['average'], 2);
+ }
+
+ /**
* Initialize an array for the entry count.
*
* @return array
@@ -160,7 +181,7 @@ SQL;
public function calculateEntryAveragePerFeedPerHour($feed = null) {
return $this->calculateEntryAveragePerFeedPerPeriod(1/24, $feed);
}
-
+
/**
* Calculates the average number of article per day of week per feed
*
@@ -180,10 +201,10 @@ SQL;
public function calculateEntryAveragePerFeedPerMonth($feed = null) {
return $this->calculateEntryAveragePerFeedPerPeriod(30, $feed);
}
-
+
/**
* Calculates the average number of article per feed
- *
+ *
* @param float $period number used to divide the number of day in the period
* @param integer $feed id
* @return integer