#!/usr/bin/php5 -q
<?php
/***************************************************************************
- * Copyright (C) 2003-2011 Polytechnique.org *
+ * Copyright (C) 2003-2014 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
WHERE a.type = 'home' AND NOT EXISTS (SELECT *
FROM profiles AS p
WHERE a.pid = p.pid)",
- "Adresses de type 'home' reliées à un profil inexsitant.");
+ "Adresses de type 'home' reliées à un profil inexistant.");
check("SELECT a.*
FROM profile_addresses AS a
WHERE a.type = 'job' AND NOT EXISTS (SELECT *
FROM profile_job AS j
WHERE a.pid = j.pid AND a.id = j.id)",
- "Adresses de type 'job' reliées à un emploi inexsitant.");
+ "Adresses de type 'job' reliées à un emploi inexistant.");
check("SELECT a.*
FROM profile_addresses AS a
WHERE a.type = 'hq' AND NOT EXISTS (SELECT *
FROM profile_job_enum AS je
WHERE a.jobid = je.id)",
- "Adresses de type 'hq' reliées à une entreprise inexsitante.");
+ "Adresses de type 'hq' reliées à une entreprise inexistante.");
check("SELECT a.*
FROM profile_addresses AS a
WHERE a.type = 'group' AND NOT EXISTS (SELECT *
FROM groups AS g
WHERE a.groupid = g.id)",
- "Adresses de type 'group' reliées à un groupe inexsitant.");
+ "Adresses de type 'group' reliées à un groupe inexistant.");
check("SELECT m.*
FROM profile_medals AS m
FROM email_virtual_domains AS evd
INNER JOIN email_virtual_domains AS evd2 ON (evd.aliasing = evd2.id)
WHERE evd2.id != evd2.aliasing",
- "Domaines aliasés de niveau 2 ou plus qui ne sont pas vu par postfix.");
+ "Domaines aliasés de niveau 2 ou plus qui ne sont pas vus par postfix.");
+
+// Account viewing statistics
+info("SELECT nb_profiles, hruid
+ FROM (
+ SELECT a.hruid AS hruid, COUNT(DISTINCT le.data) AS nb_profiles
+ FROM log_events AS le
+ LEFT JOIN log_sessions AS ls ON (ls.id = le.session)
+ LEFT JOIN accounts AS a ON (a.uid = ls.uid)
+ WHERE le.action = 30 AND ls.start >= DATE_SUB(CURRENT_DATE, INTERVAL 7 DAY)
+ GROUP BY a.hruid
+ ) AS profile_views
+ WHERE nb_profiles >= 100
+ ORDER BY nb_profiles DESC",
+ "Camarades ayant consulté plus de 100 fiches au cours des 7 derniers jours.");
// Counts empty profile fields that should never be empty.
infoCountEmpty('profile_addresses', 'type');
// XXX: counts the number of remaining issues due to the merge (to be removed once all merge related issues have been fixed)
infoCountEmpty('profile_merge_issues', 'issues', true);
-// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker fenc=utf-8:
?>