You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

25 lines
897 B

Le calcul des données de visites, et son moyen de les récupérer en CSV est modifié. ## Sur le calcul : On génère un tableau en deux parties : - une entrée "meta" contient des informations sur les caractéristiques des données calculées / envoyées. Notamment, on retourne l'objet, l'id_objet, la durée et l'unité de la durée qui était désiré. On transmet également des informations calculées en conséquence, tel que la date de début et fin des données désirées (start_date, end_date), et la date de la première donnée dans cette plage (first_date). Enfin une clé 'columns' indique les colonnes et labels des colonnes associés retournées. - une entrée "data" contient un tableau des données retournées ; (notamment la date et le nombre de visite associées). Le tableau de données ne retourne plus les dates manquantes : s'il n'y a pas de visite pour une des journées, cette date sera vide. Cela simplifie grandement les calculs ici (mais cela les reporte(ra) côté javascript) ## Sur l'obtention des données : - On ne passe plus par le système "transmettre", mais par des squelettes à la racine (statistiques.csv.html et statistiques.json.html) qui vérifient soit une autorisation, soit une authentification faible (ce qu'il y avait avant justement). Cette authentification faible peut servir à des crons (je suppose) pour collecter régulièrement les données. Le fichier CSV retourne le même contenu qu'avant (au dates manquantes près), mais le fichier JSON quant à lui retourne l'ensemble du tableau calculé (meta et data donc).
10 months ago
Le calcul des données de visites, et son moyen de les récupérer en CSV est modifié. ## Sur le calcul : On génère un tableau en deux parties : - une entrée "meta" contient des informations sur les caractéristiques des données calculées / envoyées. Notamment, on retourne l'objet, l'id_objet, la durée et l'unité de la durée qui était désiré. On transmet également des informations calculées en conséquence, tel que la date de début et fin des données désirées (start_date, end_date), et la date de la première donnée dans cette plage (first_date). Enfin une clé 'columns' indique les colonnes et labels des colonnes associés retournées. - une entrée "data" contient un tableau des données retournées ; (notamment la date et le nombre de visite associées). Le tableau de données ne retourne plus les dates manquantes : s'il n'y a pas de visite pour une des journées, cette date sera vide. Cela simplifie grandement les calculs ici (mais cela les reporte(ra) côté javascript) ## Sur l'obtention des données : - On ne passe plus par le système "transmettre", mais par des squelettes à la racine (statistiques.csv.html et statistiques.json.html) qui vérifient soit une autorisation, soit une authentification faible (ce qu'il y avait avant justement). Cette authentification faible peut servir à des crons (je suppose) pour collecter régulièrement les données. Le fichier CSV retourne le même contenu qu'avant (au dates manquantes près), mais le fichier JSON quant à lui retourne l'ensemble du tableau calculé (meta et data donc).
10 months ago
Le calcul des données de visites, et son moyen de les récupérer en CSV est modifié. ## Sur le calcul : On génère un tableau en deux parties : - une entrée "meta" contient des informations sur les caractéristiques des données calculées / envoyées. Notamment, on retourne l'objet, l'id_objet, la durée et l'unité de la durée qui était désiré. On transmet également des informations calculées en conséquence, tel que la date de début et fin des données désirées (start_date, end_date), et la date de la première donnée dans cette plage (first_date). Enfin une clé 'columns' indique les colonnes et labels des colonnes associés retournées. - une entrée "data" contient un tableau des données retournées ; (notamment la date et le nombre de visite associées). Le tableau de données ne retourne plus les dates manquantes : s'il n'y a pas de visite pour une des journées, cette date sera vide. Cela simplifie grandement les calculs ici (mais cela les reporte(ra) côté javascript) ## Sur l'obtention des données : - On ne passe plus par le système "transmettre", mais par des squelettes à la racine (statistiques.csv.html et statistiques.json.html) qui vérifient soit une autorisation, soit une authentification faible (ce qu'il y avait avant justement). Cette authentification faible peut servir à des crons (je suppose) pour collecter régulièrement les données. Le fichier CSV retourne le même contenu qu'avant (au dates manquantes près), mais le fichier JSON quant à lui retourne l'ensemble du tableau calculé (meta et data donc).
10 months ago
  1. <?php
  2. include_spip('inc/autoriser');
  3. if (
  4. autoriser('voirstats')
  5. or (
  6. $id_auteur = intval(#ENV{id,0})
  7. and autoriser('ecrire', '', '', $id_auteur)
  8. and [(#ENV{id,0}|securiser_acces{#ENV{cle}, voirstats, #ENV{op}, #ENV{args}}|?{1,0})]
  9. )
  10. ) {
  11. ?>[(#REM)
  12. Ce squelette ne permet pas en l'état d'exporter autre chose que des données "date, visites."
  13. ]#CACHE{0}
  14. #HTTP_HEADER{Content-Type: text/csv; charset=#CHARSET}
  15. #HTTP_HEADER{Content-Disposition: attachment; filename=statistiques_#ENV{objet}_#ENV{id_objet}_#ENV{duree,90}.csv}
  16. <B_statsj><:date|trim{':'}|trim:>,<:statistiques:info_visites|trim{':'}|trim:>
  17. <BOUCLE_statsj(DATA){source stats_#ENV{export,visites},jour,#ENV{duree},#ENV{objet},#ENV{id_objet}}{datapath data}>[(#VALEUR{date}|affdate{'Y-m-d'})],[(#VALEUR{visites})]
  18. </BOUCLE_statsj>
  19. <?php
  20. } else {
  21. include_spip('inc/minipres');
  22. echo minipres();
  23. }?>