diff --git a/ecrire/inc_cron.php3 b/ecrire/inc_cron.php3 index d4715b908869946d2341fc89ea81d9ee9487162c..61a73d9ff65833d96af5de93c4d772e86667735c 100644 --- a/ecrire/inc_cron.php3 +++ b/ecrire/inc_cron.php3 @@ -11,14 +11,17 @@ define("_ECRIRE_INC_CRON", "1"); // -// Demarrer les referers +// Calcul des referers // + +// demarrer le calcul function cron_referers($t) { ecrire_meta("date_stats_referers", $t); ecrire_meta('calculer_referers_now', 'oui'); ecrire_metas(); } +// poursuivre le calcul function cron_referers_suite() { if (timeout('archiver_stats')) { include_ecrire("inc_statistiques.php3"); @@ -34,6 +37,7 @@ function cron_referers_suite() { // function cron_archiver_stats($last_date) { if (timeout('archiver_stats')) { + spip_log("Archivage des statistiques de $last_date"); include_ecrire("inc_meta.php3"); include_ecrire("inc_statistiques.php3"); ecrire_meta("date_statistiques", date("Y-m-d")); @@ -96,12 +100,13 @@ function spip_cron() { } - // statistiques + // + // Statistiques + // if (lire_meta("activer_statistiques") != "non") { if ($t - lire_meta('date_stats_referers') > 3600) cron_referers($t); - - if (lire_meta('calculer_referers_now') == 'oui') + else if (lire_meta('calculer_referers_now') == 'oui') cron_referers_suite(); if (date("Y-m-d") <> ($last_date = lire_meta("date_statistiques"))) @@ -113,17 +118,6 @@ function spip_cron() { calculer_popularites(); } } - - if (timeout(false, false)) // no lock, no action - { - // Conditions declenchant un eventuel calcul des stats - if ((lire_meta('calculer_referers_now') == 'oui') - OR (date("Y-m-d") <> lire_meta("date_statistiques")) - OR (time() - lire_meta('date_stats_popularite') > 1800)) { - include_local ("inc-stats.php3"); - archiver_stats(); - } - } } // recalcul des rubriques publiques (cas de la publication post-datee) diff --git a/inc-stats.php3 b/inc-stats.php3 index 4c17686429b3516eecc2031bdc3bede930c08099..73ee03a164c74d69bdcd0e204c23822753c10181 100644 --- a/inc-stats.php3 +++ b/inc-stats.php3 @@ -43,17 +43,19 @@ function ecrire_stats() { "VALUES ($log_ip, '$log_type', $log_id_num)"; spip_query($query); } - if (lire_meta('activer_statistiques_ref') == 'oui') { - $url_site_spip = lire_meta('adresse_site'); - $url_site_spip = eregi_replace("^((https?|ftp)://)?(www\.)?", "", $url_site_spip); - $log_referer = $GLOBALS['HTTP_REFERER']; - if (($url_site_spip<>'') AND strpos('-'.strtolower($log_referer), strtolower($url_site_spip)) AND !$GLOBALS['var_recherche']) $log_referer = ""; - if ($log_referer) { - $referer_md5 = '0x'.substr(md5($log_referer), 0, 16); - $query = "INSERT IGNORE INTO spip_referers_temp (ip, referer, referer_md5, type, id_objet) ". - "VALUES ($log_ip, '$log_referer', $referer_md5, '$log_type', $log_id_num)"; - spip_query($query); - } + + // + // Loguer le referer + // + $url_site_spip = lire_meta('adresse_site'); + $url_site_spip = eregi_replace("^((https?|ftp)://)?(www\.)?", "", $url_site_spip); + $log_referer = $GLOBALS['HTTP_REFERER']; + if (($url_site_spip<>'') AND strpos('-'.strtolower($log_referer), strtolower($url_site_spip)) AND !$GLOBALS['var_recherche']) $log_referer = ""; + if ($log_referer) { + $referer_md5 = '0x'.substr(md5($log_referer), 0, 16); + $query = "INSERT IGNORE INTO spip_referers_temp (ip, referer, referer_md5, type, id_objet) ". + "VALUES ($log_ip, '$log_referer', $referer_md5, '$log_type', $log_id_num)"; + spip_query($query); } }