'configurer_compteur')); // afficher le formulaire de suppression des visites (configuration > maintenance du site). if ($flux['args']['exec'] == 'admin_tech') { $flux['data'] .= recuperer_fond('prive/squelettes/inclure/admin_effacer_stats',array()); } return $flux; } // les boutons d'administration : ajouter les popularites et visites function stats_formulaire_admin($flux) { if ( isset($flux['args']['contexte']['objet']) AND $objet = $flux['args']['contexte']['objet'] AND isset($flux['args']['contexte']['id_objet']) AND $id_objet = $flux['args']['contexte']['id_objet'] ) { if ($l = admin_stats($objet, $id_objet, defined('_VAR_PREVIEW') ? _VAR_PREVIEW : '')) { $btn = recuperer_fond('prive/bouton/statistiques', array( 'visites' => $l[0], 'popularite' => $l[1], 'statistiques' => $l[2], )); $flux['data'] = preg_replace('%()%is', $btn.'$1', $flux['data']); } } return $flux; } // calculer les visites et popularite d'un objet/id_objet // (uniquement valable pour les articles) ... // http://code.spip.net/@admin_stats function admin_stats($objet, $id_objet, $var_preview) { if ($GLOBALS['meta']["activer_statistiques"] != "non" AND $objet == 'article' AND !$var_preview AND autoriser('voirstats') ) { $row = sql_fetsel("visites, popularite", "spip_articles", "id_article=$id_objet AND statut='publie'"); if ($row) { return array(intval($row['visites']), ceil($row['popularite']), str_replace('&', '&', generer_url_ecrire_statistiques($id_objet))); } } return false; } // http://code.spip.net/@generer_url_ecrire_statistiques function generer_url_ecrire_statistiques($id_article) { return generer_url_ecrire('stats_visites', "id_article=$id_article"); } // les taches crons function stats_taches_generales_cron($taches_generales){ // stats : toutes les 5 minutes on peut vider un panier de visites if ($GLOBALS['meta']["activer_statistiques"] == "oui") { $taches_generales['visites'] = 300; $taches_generales['popularites'] = 7200; # calcul lourd } return $taches_generales; } function stats_configurer_liste_metas($metas){ $metas['activer_statistiques']='non'; $metas['activer_captures_referers']='non'; return $metas; } function stats_boite_infos($flux){ if ($GLOBALS['meta']["activer_statistiques"] == "oui") { if ($flux['args']['type']=='article' AND $id_article=$flux['args']['id'] AND autoriser('voirstats','article',$id_article)){ $visites = sql_getfetsel('visites','spip_articles','id_article='.intval($id_article)); if ($visites>0){ $icone_horizontale=chercher_filtre('icone_horizontale'); $flux['data'].=$icone_horizontale(generer_url_ecrire("stats_visites","id_article=$id_article"),_T('statistiques:icone_evolution_visites', array('visites' => $visites)),"statistique-24.png"); } } } return $flux; } ?>