Valider d258723e rédigé par esj's avatar esj
Parcourir les fichiers

Le clonage de la présentation des statistiques en celui des signatures ayant...

Le clonage de la présentation des statistiques en celui des signatures ayant inclus le lien CSV par erreur, autant aller justqu'au bout.

Les productions de fichiers CSV sont à présent assurées par des squelettes accessibles seulement depuis l'espace privé, et rangé dans {{{prive/transmettre}}}.

Il y en a un pour les statistiques générales des visites, un pour celles pour d'un article précis (résultats identiques à ce qu'il y avait avant), mais aussi un pour les signatures d'une petition.
Pour ce dernier squelette, utilisation de la jointure explicite pour obtenir les signatures sur toutes les traduction de l'article.
parent 62a4a9a5
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+3 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -283,6 +283,9 @@ dist/prive/infos/breve_fonctions.php -text
dist/prive/infos/rubrique.html -text
dist/prive/infos/site.html -text
dist/prive/infos/site_fonctions.php -text
dist/prive/transmettre/signatures_article.html -text
dist/prive/transmettre/statistiques.html -text
dist/prive/transmettre/statistiques_article.html -text
dist/puce.gif -text
dist/puce_prive.gif -text
dist/puce_prive_rtl.gif -text
+9 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
#HTTP_HEADER{Content-Type: text/csv; charset=#CHARSET}
#HTTP_HEADER{Content-Disposition: attachment; filename=signature#ID_ARTICLE.csv}
<BOUCLE0(ARTICLES){id_article}><B1>#TOTAL_BOUCLE <:info_signatures:> <:info_pour:>  #TITRE;
<:nom:>;<:email:>
<BOUCLE1(SIGNATURES){id_article}{par nom_email}>#NOM_EMAIL;#AD_EMAIL
</BOUCLE1></BOUCLE0>


+7 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
#HTTP_HEADER{Content-Type: text/csv; charset=#CHARSET}
#HTTP_HEADER{Content-Disposition: attachment; filename=stats-#NOM_SITE_SPIP.csv}
<BOUCLE1(VISITES){par date}>#DATE;#VISITES
</BOUCLE1>


+7 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
#HTTP_HEADER{Content-Type: text/csv; charset=#CHARSET}
#HTTP_HEADER{Content-Disposition: attachment; filename=stats-#NOM_SITE_SPIP-#ID_ARTICLE.csv}
<BOUCLE1(VISITES_ARTICLES){id_article}{par date}>#DATE;#VISITES
</BOUCLE1>


+24 −29
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -45,23 +45,6 @@ function http_img_rien($width, $height, $class='', $title='') {
		. (!$title ? '' : (" title=\"$title\"")));
}

// pondre les stats sous forme d'un fichier csv tres basique
// http://doc.spip.org/@statistiques_csv
function statistiques_csv($id) {

	$filename = 'stats_'.($id ? 'article'.$id : 'total').'.csv';
	header('Content-Type: text/csv');
	header('Content-Disposition: attachment; filename='.$filename);
	
	if ($id)
		$s = sql_select("date, visites", "spip_visites_articles", "id_article=$id", "", "date");
	else
		$s = sql_select("date, visites", "spip_visites", "", "", "date");
	while ($t = sql_fetch($s)) {
		echo $t['date'].";".$t['visites']."\n";
	}
}

// http://doc.spip.org/@exec_statistiques_visites_dist
function exec_statistiques_visites_dist()
{
@@ -77,9 +60,17 @@ function exec_statistiques_visites_dist()
		include_spip('inc/minipres');
		echo minipres();
	} else {
		if (_request('format') == 'csv')
			statistiques_csv($id_article);
		else exec_statistiques_visites_args($id_article, $aff_jours, $limit);
		if (_request('format') != 'csv')
			exec_statistiques_visites_args($id_article, $aff_jours, $limit);
		else {
			include_spip('public/assembler');
			$fond = 'prive/transmettre/'
			 .  (_request('table')=='visites' ? 'statistiques' : 'signatures');
			if (!$id_article)
				$page = envoyer_page($fond, array());
			else envoyer_page($fond . "_article", 
				array('id_article' => $id_article));
		} 
	}
}

@@ -226,7 +217,6 @@ function exec_statistiques_visites_args($id_article, $aff_jours, $limit)

	echo debut_droite('', true);

	$mode = statistiques_mode(self());
	if ($id_article) {
			$table = "spip_visites_articles";
			$table_ref = "spip_referers_articles";
@@ -256,11 +246,11 @@ function exec_statistiques_visites_args($id_article, $aff_jours, $limit)

			echo statistiques_par_mois(sql_select("FROM_UNIXTIME(UNIX_TIMESTAMP(date),'%Y-%m') AS date_unix, SUM(visites) AS total_visites", $table,  "$where AND date > DATE_SUB(NOW(),INTERVAL 2700 DAY)", 'date_unix', "date"), $last);
		}
		echo fin_cadre_relief(true), $mode;
		echo fin_cadre_relief(true), statistiques_mode('visites');
	}

	if ($id_article AND  $n = sql_countsel('spip_signatures', "id_article=$id_article")) {
		echo statistiques_signatures($aff_jours, $id_article, $mode, $n);
		echo statistiques_signatures($aff_jours, $id_article, statistiques_mode('signatures'), $n);
	}

	$r = sql_select("referer, referer_md5, visites AS vis", $table_ref, $where, "", "vis DESC", $limit);
@@ -439,7 +429,7 @@ function statistiques_tous($log, $date_premier, $last, $total_absolu, $val_popul
// Le bouton pour CSV et pour passer de svg a htm

// http://doc.spip.org/@statistiques_mode
function statistiques_mode($lui)
function statistiques_mode($table)
{
	if (flag_svg()) {
		$lien = 'non'; $alter = 'HTML';
@@ -447,10 +437,15 @@ function statistiques_mode($lui)
		$lien = 'oui'; $alter = 'SVG';
	}

	$lui = self();
	$csv = parametre_url(parametre_url($lui, 'table', $table), 'format', 'csv');

	return "\n<div style='text-align:".$GLOBALS['spip_lang_right'] . ";' class='verdana1 spip_x-small'>"
		. "<a href='". parametre_url($lui, 'var_svg', $lien)."'>$alter</a>" 
		. " | <a href='"
	  	. parametre_url($lui, 'format', 'csv')."'>CSV</a>"
		. "<a href='". parametre_url($lui, 'var_svg', $lien)."'>"
		. $alter
		. "</a> | <a href='"
		. $csv
	  	. "'>CSV</a>"
		. "</div>\n";
}

Chargement en cours