Les URL dans le contenu en première et en seconde partie, et les URL dans les liens ne devraient pas contenir /redaction/ ou /moderation/ sauf exception. Il serait pratique de signaler de tels liens avec un pictogramme attirant l'attention (ça éviterait de faire les corrections après publication sur un signalement par un visiteur qui n'aurait pas les droits pour accès à ces parties ou qui aurait eu un 404).
Suivi — Feuilles de style (CSS) Validation CSS RonRonnement
(via http://jigsaw.w3.org/css-validator/ )
./app/assets/stylesheets/RonRonnement.css.scss: background-color: #cccccc66;
Propriété erronée : background-color #cccccc66 n'est pas une valeur de background-color : #cccccc66
./app/assets/stylesheets/RonRonnement.css.scss: li.comment > h2 > a.title { pointer-events: none; }
La propriété pointer-events n'existe pas : none
Suivi — Flux Atom Auteur collectif dans le flux Atom
La dépêche Agenda du Libre semaine 18 2017 est publiée comme « Posté par Collectif le 30/04/17 à 05:08. Édité par Benoît Sibaud. Modéré par Yvan Munoz. Licence CC by-sa » (initialement créée par moi, puis réattribuée à Collectif).
Par contre dans le flux Atom /news.atom, <author><name>Benoît Sibaud</name></author>
.
Suivi — Modération Liens "Protocol-relative" en cas de conversion journal -> dépêche
Un journal publié puis converti en dépêche contient un lien « protocol-relative » //linuxfr.org/users/machin/journaux/slug-slug-slug
. Et ce lien est marqué en erreur si on essaie de réorganiser la dépêche, car il ne commence pas par http ou https. Les deux options me semblent être :
- corriger la validation de formulaires pour accepter les liens « protocol-relative »
- pousser de l'HTTPS plus largement, et donc mettre le lien https par défaut.
Je penche pour le 2 (pour un argumentaire voire par exemple). Dans app/models/diary.rb (…)
Suivi — Modération Envoyer un courriel en cas de déplacement d'un journal vers un forum
Envoyer un courriel en cas de déplacement d'un journal vers un forum.
Suivi — Statistiques Ajouts de statistiques
- Utiliser accounts.sign_in_count https://linuxfr.org/statistiques/users
- Présenter en plus des statistiques par année sans détailler
- jour de modération tous contenus confondus https://linuxfr.org/statistiques/moderation
- contenus par année tous contenus confondus https://linuxfr.org/statistiques/contents
- commentaires par année tous contenus confondus https://linuxfr.org/statistiques/comments
- tags par année tous contenus confondus https://linuxfr.org/statistiques/tags
- Vérifier l'absence d'éléments inconnus dans les états possibles au niveau des stats pour éviter les oublis
- comments.state : deleted published
- polls.state : archived draft published refused
- forums.state : archived active
- sections.state : archived published
- news.state : candidate deleted draft (…)
Suivi — API OAuth Erreur pour lister les applications utilisatrice de l'API
Dnas la partie admin "Applications de l'API", lien /admin/applications :
I, [2017-02-05T20:37:32.792334 #7275] INFO -- : Rendered admin/applications/index.html.haml within layouts/application (155.5ms)
I, [2017-02-05T20:37:32.792664 #7275] INFO -- : Completed 500 Internal Server Error in 165ms (ActiveRecord: 7.5ms)
F, [2017-02-05T20:37:32.794768 #7275] FATAL -- :
ActionView::Template::Error (undefined method `admin_doorkeeper_application_path' for #<#<Class:0x0000000a8e3d48>:0x00000009422ee0>):
12: %td
13: = app.redirect_uri
14: %td
15: = link_to "Afficher", [:admin, app], class: "show_client_app"
16: = link_to "Modifier", edit_admin_application_path(app), class: "edit_client_app"
17: = button_to "Supprimer", [:admin, app], method: :delete, class: "delete_button",
(…)
Suivi — Administration site Erreur de collation dans la partie Admin / Derniers comptes utilisateur / recherche par pseudo
Erreur de collation dans la partie Admin / Derniers comptes utilisateur / recherche par pseudo :
Dans la partie admin « Les derniers comptes utilisateurs créés », /admin/comptes?utf8=✓&login=coin&date=&ip=
Error: COLLATION 'UTF8_GENERAL_CI' is not valid for CHARACTER SET 'utf8mb4': SELECT accounts
.* FROM accounts
WHE
RE (login LIKE 'coin%' COLLATE UTF8_GENERAL_CI) ORDER BY created_at DESC LIMIT 25 OFFSET 0)
Suivi — Modération Erreur de collation dans la liste des dépêches en modération
Suite à la migration de la base de données en utf8mb4 : un hyperlien A VIRER
(titre de la nouvelle dépêche) mais pointant sur l'ancienne dépêche déjà refusée (et donc non refusable). A priori un souci sur le cached_slug.
+-------+----------+-----------+-------------+
| id | title | state | cached_slug |
| 23591 | À virer | refused | à-virer |
| 37795 | A VIRER | candidate | a-virer |
+-------+----------+-----------+-------------+
Suivi — Statistiques Statistiques sur les éditions post-publication / a posteriori
Avoir des statistiques sur les éditions post-publication (sur le fond ou la forme) et autres interventions a posteriori pour rendre visible ce travail de modération ou d'admin
-
sur les commentaires :
- si l'écart entre la date de création et la date de modération est strictement supérieur à 5min, alors c'est édité par un admin/modéro (si c'est inférieur à 5min, peut-être aussi, mais c'est indiscernable d'une édition par l'auteur actuellement)
- si le commentaire a été masqué
-
sur les contenus
- journal / (…)
Suivi — Statistiques Comparaison de grapheurs Javascript libres pour les statistiques LinuxFr.org
(tiré d'une dépêche du 6 janvier 2013 qui ne vit jamais le jour)
État initial des statistiques LinuxFr.org
Les statistiques du site sont produites avec du code Ruby On Rails qui va lire en bases de données MySQL et Redis.
Les données à représenter sont de quatre types actuellement :
- une série de pourcentages d'un même ensemble, pouvant se recouvrir (dans l'idéal, une représentation en diagramme de Venn, mais elle est généralement limitée à 4 séries de données) ;
- un (…)
Suivi — Modération Comment perdre une partie du contenu en modération avec Grammalecte
J'ai enfin identifié la recette permettant de perdre une partie du contenu en modération avec le greffon Grammalecte pour Firefox.
Prenons une dépêche ayant pour
- titre « Un titre »
- première partie « Ceci est mon premier paragraphe de partie une. » et « Ceci est mon seconde paragraphe de partie une. »
- seconde partie « Ceci est mon premier paragraphe de partie deux. » et « Ceci est mon seconde paragraphe de partie deux. »
En modération, utiliser réorganiser.
Utiliser Grammalecte sur la première partie pour corriger s/seconde/second. Fermer (…)
Suivi — Administration système Contenus mixtes http/https
Dans public/errors/400.html , remplacer l'appel à http://notfound-static.fwebservices.be/404
par //notfound-static.fwebservices.be/404
.
Suivi — Comptes utilisateurs URL d'image trop longue pour pouvoir servir d'avatar
Le champ avatar est un varchar(255) en base de données. Si le chemin complet de l'image est trop long, l'url version img est trop longue pour le champ en base.
I, [2016-12-04T19:03:41.932320 #23749] INFO -- : Started PUT "/compte" for xx.xx.xx.xx at 2016-12-04 19:03:41 +0100
I, [2016-12-04T19:03:41.934082 #23749] INFO -- : Processing by Devise::RegistrationsController#update as HTML
I, [2016-12-04T19:03:41.934191 #23749] INFO -- : Parameters: {"utf8"=>"✓", "authenticity_token"=>"[FILTERED]", "account"=>{"user_attributes"=>{"custom_avatar_url"=>"https
://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxx/11881767_1459095337731613_392113446_a.jpg", "id"=>"50384"}}, "commit"=>"Enregistrer"}
I, [2016-12-04T19:03:42.008291 #23749] INFO -- : Completed 500 Internal Server Error
(…)
Suivi — Tribune HTTP 500 sur un souci de compte dans la tribune ?
Pas encore creusé (compte fermé ou purgé?):
I, [2016-12-07T22:25:06.076409 #8739] INFO -- : Completed 500 Internal Server Error in 120ms (ActiveRecord: 0.3ms)
F, [2016-12-07T22:25:06.080971 #8739] FATAL -- :
ActionView::Template::Error (undefined method `html_safe' for nil:NilClass):
1: %p.chat{id: "board-#{board.id}"}
2: %span{class: "board-left", title: board.user_agent}
3: %time.norloge{datetime: board.created_at.iso8601}= norloge(board, box)
4: %b= board.user_link
5: %span{class: "board-right"}= board.message
app/models/board.rb:34:in `user_link'
app/views/boards/_board.html.haml:4:in `_app_views_boards__board_html_haml__3025735561608719691_35983540'
app/views/boards/_boards.html.haml:6:in `_app_views_boards__boards_html_haml___4517043167309487966_35184960'
app/views/boards/show.html.haml:19:in `_app_views_boards_show_html_haml___3929912801449370356_34808960'
app/controllers/boards_controller.rb:12:in `show'