aboutsummaryrefslogtreecommitdiff
path: root/app/Models/StatsDAO.php
diff options
context:
space:
mode:
authorGravatar Alexis Degrugillier <github@ainw.org> 2014-01-26 08:54:52 -0500
committerGravatar Alexis Degrugillier <github@ainw.org> 2014-01-26 08:54:52 -0500
commitb0641fd0ebcaa02dcbeb2983703bff6516f93487 (patch)
treec709673e8e5622e73c7b06cd2f0c92a103660873 /app/Models/StatsDAO.php
parent5ad19cddc179e3528bd90d4bea8c97518e65bf51 (diff)
Modification des statistiques.
Ajout de la liste des 10 plus gros contributeurs Ajout de règles CSS pour les thèmes Flat et Dark Modification de l'affichage des camemberts (tri par nombre qui remplace le tri alphabétique)
Diffstat (limited to 'app/Models/StatsDAO.php')
-rw-r--r--app/Models/StatsDAO.php29
1 files changed, 28 insertions, 1 deletions
diff --git a/app/Models/StatsDAO.php b/app/Models/StatsDAO.php
index a317c8f27..60cec7847 100644
--- a/app/Models/StatsDAO.php
+++ b/app/Models/StatsDAO.php
@@ -122,6 +122,7 @@ FROM {$this->prefix}category AS c,
{$this->prefix}feed AS f
WHERE c.id = f.category
GROUP BY label
+ORDER BY data DESC
SQL;
$stm = $this->bd->prepare($sql);
$stm->execute();
@@ -146,6 +147,7 @@ FROM {$this->prefix}category AS c,
WHERE c.id = f.category
AND f.id = e.id_feed
GROUP BY label
+ORDER BY data DESC
SQL;
$stm = $this->bd->prepare($sql);
$stm->execute();
@@ -154,6 +156,31 @@ SQL;
return $this->convertToPieSerie($res);
}
+ /**
+ * Calculates the 10 top feeds based on their number of entries
+ *
+ * @return array
+ */
+ public function calculateTopFeed() {
+ $sql = <<<SQL
+SELECT f.id AS id
+, MAX(f.name) AS name
+, MAX(c.name) AS category
+, COUNT(e.id) AS count
+FROM {$this->prefix}category AS c,
+{$this->prefix}feed AS f,
+{$this->prefix}entry AS e
+WHERE c.id = f.category
+AND f.id = e.id_feed
+GROUP BY id
+ORDER BY count DESC
+LIMIT 10
+SQL;
+ $stm = $this->bd->prepare($sql);
+ $stm->execute();
+ return $stm->fetchAll(PDO::FETCH_ASSOC);
+ }
+
private function convertToSerie($data) {
$serie = array();
@@ -168,7 +195,7 @@ SQL;
$serie = array();
foreach ($data as $value) {
- $value['data'] = array(array(0, (int)$value['data']));
+ $value['data'] = array(array(0, (int) $value['data']));
$serie[] = $value;
}