Commit Graph

460 Commits (865cbb0bcab63d4c964f328b71c643a8c9356eea)
 

Author SHA1 Message Date
Matthieu Marcillaud 865cbb0bca On permet d'utiliser statistiques.json.html pour d'autres exports éventuels que les visites. (cherchera `inc_stats_{export}_to_array()`) 2 years ago
Matthieu Marcillaud e19d570af7 Nettoyage de code mort. 2 years ago
Matthieu Marcillaud 85a91eb4e3 Changer le titre du tableau et du graphique en fonction de la période demandée. 2 years ago
Matthieu Marcillaud c280b9485b Graphique des visites en d3.js.
J'ai essayé de séparer une partie "graph" (plus générale) d'une partie "statistiques" plus particulière à ce graphique particulier, mais ce n'est pas évident.

Le fichier prive/stats/visites charge les JS et CSS de d3 et pour notre graphique.
Il crée alors de graphique des visites. Pour cela, la fonction `spip_d3_statistiques_create(id)` va
- créer un objet Spip_d3_graph() notamment en indiquant la locale désirée. Cet objet est stocké dans la balise #id par un jQuery .data() pour pouvoir le réutiliser ensuite (pour ré-actualiser le graphique avec d'autres données)
- déclarer comment seront préparées et traitées les données JSON reçues (ici on remplit les dates manquantes, et on actualise le tableau html et le graphique svg)
- localiser les dates de d3 avec la locale demandé
- préparer le code html et svg nécessaire (appelle la fonction spip_d3_statistiques_prepare_graph() qui va préparer les axes, histogramme, ligne, etc, mais sans connaître encore les données)
- executer graph.updateJson(), qui va télécharger le json de données, et appliquer dessus les traitements déclarés, ce qui va in fine exécuter spip_d3_statistiques_update_graph() qui dessinera le graphique)

Une navigation au dessus du graphique permet de basculer sur différentes dates et collections de données : 3 mois (90 jours), 2 ans (730 jours), 5 ans (60 mois) et infini (en années). Jusqu'à 2 ans, les données retournées par SPIP sont quotidiennes. En demandant 5 ans, on obtient 60 mois (avec la somme cumulée des visites sur le premier jour du mois) ; en demandant infini (durée -1), on obtient des visites annuelles : ce choix n'est pas anodin car il correspond très exactement à ce qui est proposé en archivage des statistiques : les statistiques de plus de 2 ans sont regroupées en début de mois, et de plus de 5 ans en début d'année. De la sorte, il devrait être possible de mettre une tache périodique qui archive systématiquement les statistiques, pour alléger la base de données, tout en gardant un affichage des graphiques a peu près corrects, même si on perd une partie de l'information.
2 years ago
Matthieu Marcillaud 81ca1049a3 Le résumé par jour ou d'un article est déplacé dans une inclusion.
On supprime également l'inclusion du graphique de mois (car il sera intégré dans un sélecteur du graphique du jour)
2 years ago
Matthieu Marcillaud a33f8cc0d2 Le fichier prive/stat/visites est chargé au dessus du contenu, de tel sorte que si le contenu est rechargé en ajax, le JS de l'inclusion ne soit pas rééxécuté. 2 years ago
Matthieu Marcillaud 6a30d38969 Suppression de la librairie jquery.flot.js et jquery.tflot.js qui sera remplacé par d3.js 2 years ago
Matthieu Marcillaud 0dab56becb 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).
2 years ago
Matthieu Marcillaud 9eeb500914 On intègre d3js en version 6.0, ainsi que les locales pour d3 time-format, pour avoir les dates traduites. 2 years ago
b_b faaab36073 debug -- 2 years ago
Cerdic 3479d6cf53 Fix https://core.spip.net/issues/3834 : Ajouter un header Referrer-Policy sur les pages des stats de l'espace prive 2 years ago
Matthieu Marcillaud c72933c1e1 Suppression du fichier .gitattributes inutile. 2 years ago
JLuc 0c147d11e3 str_ireplace fait le job
bien plus légèrement
2 years ago
Cerdic bd5f1df55e Suite à https://core.spip.net/issues/4560 ajout des role sur les message ok/erreur des formulaires 2 years ago
Cerdic b0fdcb00dd Classer explicitement les articles par leur popularite pour eviter un desordre si un plugin ajoute un critere order partout + calculer explicitement la position plutot que supposer que c'est celle dans la boucle (notamment si certains articles ne ressortent pas dans la boucle en raison d'un filtrage en amont ajoute par un plugin)
Fix https://core.spip.net/issues/2693
2 years ago
Franck 1a92e4b16d #4526 avec tendresse depuis 2001 3 years ago
Ricardo Porto 45f624bda2 [Salvatore] [source:lang/ statistiques] Export depuis https://trad.spip.net de la langue pt_br
[Salvatore] [source:lang/ statistiques] Mise a jour du bilan depuis https://trad.spip.net
3 years ago
Salvatore 0a49de53a0 [Salvatore] [source:lang/ paquet-stats] Export depuis https://trad.spip.net de la langue fr
[Salvatore] [source:lang/ paquet-stats] Mise a jour du bilan depuis https://trad.spip.net
3 years ago
Salvatore d88a0e0272 [Salvatore] [source:lang/ statistiques] Export depuis https://trad.spip.net de la langue fr
[Salvatore] [source:lang/ statistiques] Mise a jour du bilan depuis https://trad.spip.net
3 years ago
salvatore@rezo.net 92b39ad013 [Salvatore] [source: paquet-stats] Export depuis https://trad.spip.net de la langue fr
[Salvatore] [source: paquet-stats] Mise a jour du bilan depuis https://trad.spip.net
3 years ago
salvatore@rezo.net f33dd6820d [Salvatore] [source: statistiques] Export depuis https://trad.spip.net de la langue fr
[Salvatore] [source: statistiques] Mise a jour du bilan depuis https://trad.spip.net
3 years ago
spip.franck@lien-d-amis.net 647fd83048 Bonne année "statistiques" 3 years ago
hanjo.spip@gmail.com 575a96c9a9 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue nl 4 years ago
hanjo.spip@gmail.com 972bf36383 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue nl 4 years ago
real3t@gmail.com fe4b7137e0 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue fr_tu 4 years ago
alm82@live.it d4679beb25 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue it 4 years ago
hanjo.spip@gmail.com c3536fc84f [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue nl 4 years ago
jluc@no-log.org 4b5ff76044 les referers sont dans un onglet maintenant, l'ancienne fonction d'autorisation pour les menus n'est plus utilisée fixes #4297 4 years ago
hanjo.spip@gmail.com 4fc58ca2d5 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue nl 4 years ago
eldk 52879fcd91 Regroupement des référants : correction pour matcher Twitter avec les urls courtes de tyoe t.co et non Qwant' 4 years ago
spip.franck@lien-d-amis.net 681daddc6d Il parait que le futur c'est maintenant :-D 4 years ago
bruno@eliaz.fr 6c2ee0de3d version 1.3.1 : réparer la boulette introduite par r112330
Fix #4229
5 years ago
booz@rezo.net df0257323a ajouts et mise à jour 5 years ago
booz@rezo.net 133225694d Nettoyer les referers en enlevant les variables de personnalisation marketing, ou variantes Amp 5 years ago
booz@rezo.net 33eee75614 Ajout d'une instance Mastodon et d'un client webmail répendu 5 years ago
booz@rezo.net 3c13f611a8 Ajout des réseaux sociaux, permet de regrouper ces réseaux sociaux par domaine dans la page liens entrants 5 years ago
booz@rezo.net 6861165fde affichage adapté au dessus de 10 millions de visites. Peut-être prévoir de revoir cet affichage pour qu'il gère mieux le cas d'un site affluent avec plus de 10 000 de visites, sans pour autant aligner trop au centre les sites avec moins de visites. A clarifier aussi probablement l'affichage des visites_racines actuellement entre parenthèses ; il me semble peu clair si on ne déplie pas, ou si il n'y a rien en visites par path, on se retrouve alors avec un laconique : 82 339 visites Qwant (82 339) 5 years ago
booz@rezo.net be509b5aa0 adapter aux visites > 100 000 5 years ago
booz@rezo.net 86b62bea21 Ajout duckcuckgo 5 years ago
booz@rezo.net e2712c5525 ne pas se cogner dans la bordure avec des rangs > 10 000 5 years ago
booz@rezo.net 89314bd22e Affichage des stats plus lisible quand on passe > 100 000 et formatage avec espace des milliers 5 years ago
marcimat@rezo.net 3f6d43ad75 Utiliser array_column plutôt que array_map + reset / array_shift 5 years ago
cedric@yterium.com 8c67bad011 https://core.spip.net/issues/3986 : transition de .submit vers .btn (on ajoute la class btn partout ou il y avait submit et on cible .btn dans la css aussi 5 years ago
cedric@yterium.com 79b43e6d4c Fix https://core.spip.net/issues/4115 : eviter une collision de nommage dans ieconfig (est-ce que ca a sa place ici, vraiment?) 5 years ago
brunobergot@gmail.com e7e1886fb9 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue fr_fem 5 years ago
klaus@spip.de 933e719252 [Salvatore] [source:_core_/plugins/statistiques/lang/ paquet-stats] Export depuis http://trad.spip.net de la langue de 5 years ago
salvatore@rezo.net 2a52dea804 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net
La langue 'ay' devrait être supprimée car trop peu traduite (28.85 %)
La langue 'el' devrait être supprimée car trop peu traduite (28.85 %)
La langue 'fi' devrait être supprimée car trop peu traduite (30.77 %)
La langue 'hac' devrait être supprimée car trop peu traduite (21.15 %)
La langue 'is' devrait être supprimée car trop peu traduite (9.62 %)
La langue 'nb' devrait être supprimée car trop peu traduite (34.62 %)
La langue 'no' devrait être supprimée car trop peu traduite (9.62 %)
5 years ago
hanjo.spip@gmail.com fc80a1dcf5 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue nl 5 years ago
klaus@spip.de 12026c4111 [Salvatore] [source:_core_/plugins/statistiques/lang/ statistiques] Export depuis http://trad.spip.net de la langue de 5 years ago
bruno@eliaz.fr cdba840a3c phpdoc 5 years ago