Centralisation des bugs


#448

http://www.numerama.com/discussions/t/42650/33?u=laboitenoiredenume
Votre API php est bancale depuis le début, il n'y a aucun intérêt à mettre à jour Discourse, vous tapez sans doute directement en base de données…


#449

Come on, l'intégration que propose le lien que tu donne est encore plus pourrie.

Par contre, c'est maintenant dans notre roadmap cours terme de refaire cette partie la.


#450

Ça fait quand même bientôt 2 ans que traînent des bug aussi simple que l’affichage erroné de l'heure de l'envoie d'une réponse...


#451

Tu remarqueras qu’il y a deux solutions possibles : l’intégration JS officielle qui est en effet limitée à de l’affichage mais fonctionnelle ou alors corriger l’implémentation actuelle sur Numerama : la seule chose à faire en php c’est faire le lien entre l’ID d’un article WordPress et l’ID d’un sujet Discourse. Tout le reste (obtenir les messages, poster des commentaires et likes, signaler un message) est possible en utilisant l’API Discourse, comme je le détaillais ici fin août 2016 ou en février/mars 2016.

Pour obtenir les messages d’un sujet Discourse il suffit d’y rajouter .json : https://www.numerama.com/discussions/t/29084.json

Pour poster un message en AJAX avec jQuery :

$.ajax({
  url: '/discussions/session/csrf.json',
  success: function(data){
    var csrf = data["csrf"];
    $.ajax({
      url: '/discussions/posts',
      method: 'POST',
      headers: { 'X-CSRF-Token': csrf },
      data: {
        'raw' : 'Test ajax jQuery test *test*',
        'topic_id':ID_TOPIC, // ID du sujet, obtenu dans la page ou avec encore un autre $.ajax sur '/ajax-comment.php?action=getLastComments&post_id=ID_ARTICLE', cf Numerama Purity user.js
        /*'reply_to_post_number':NB_POST_IN_TOPIC, */ // optionnel, post_number
        'archetype':'regular',
        'typing_duration_msecs':1900, // cf https://github.com/discourse/discourse/blob/825452df/lib/new_post_manager.rb#L46
        'composer_open_duration_msecs':15000,
        'nested_post':'true'
      },
      success : function(data){ console.log(data); /* afficher le nouveau message, etc */ }
    }); // POST /posts
  }
}); // GET csrf.json

Aimer un message

$.ajax({
  url: '/discussions/session/csrf.json',
  success: function(data){
    var csrf = data["csrf"];
    $.ajax({
      url: '/discussions/post_actions',
      method: 'POST',
      headers: { 'X-CSRF-Token': csrf },
      data: {
        'id':ID_MESSAGE, // ID du message sur Discourse
        'post_action_type_id':2, // like https://github.com/discourse/discourse/blob/f1639bf4f5a51ee5579ca911ecb8bbb356ab4934/app/models/post_action_type.rb#L22-L29
        'flag_topic':false
      },
      success : function(data){ console.log(data); /* afficher le J'aime envoyé, etc. */ }
    }) // POST /post_actions
  }
}); // GET csrf.json

Enlever un J’aime à un message

$.ajax({
  url: '/discussions/session/csrf.json',
  success: function(data){
    var csrf = data["csrf"];
    $.ajax({
      url: '/discussions/post_actions/'+ID_MESSAGE,
      method: 'DELETE',
      headers: { 'X-CSRF-Token': csrf },
      data: {
        'post_action_type_id':2
      },
      success : function(data){ console.log(data); /* enlever le J'aime de l'affichage, etc. */ }
    }) // DELETE /post_actions
  }
}); // GET csrf.json

Signaler un message à la modération avec un texte défini par l’utilisateur

$.ajax({
  url: '/discussions/session/csrf.json',
  success: function(data){
    var csrf = data["csrf"];
    $.ajax({
      url: '/discussions/post_actions',
      method: 'POST',
      headers: { 'X-CSRF-Token': csrf },
      data: {
        'id':ID_MESSAGE, // ID du message sur Discourse
        'post_action_type_id':7, // flag
        'message':'Ce message contrevient à la charte parce que…\n\nCeci est un test.',
        'flag_topic':false
      },
      success : function(data){ console.log(data); /* afficher que le signalement a bien été envoyé, etc. */ }
    }) // POST /post_actions
  }
}); // GET csrf.json

Il suffit d’ouvrir la console réseau de son navigateur avant d’effectuer une action pour découvrir ces paramètres comme je l’expliquais déjà ici, je n’ai fait que traduire les requêtes HTTP vers l’API jQuery en enlevant les paramètres superflus. Il faut aussi gérer les erreurs retournées par Discourse (ex : texte trop court, sujet fermé, utilisateur non connecté, droits d’accès…).
À part les extraits de code c’est au moins la troisième fois que je poste ça, est-ce que cette fois-ci ça va vous être suffisant pour enfin supprimer 90 % de cette API PHP inutile et erronée ? Difficile de vous mâcher encore plus le travail, je l’ai même testé sur la partie WordPress, il vous suffit juste de copier-coller. Double effet kiss-kool, ça corrigera les différentes apostrophes mal échappées.


Bêta test fonctionnalités forum
#452

@cdecou

Je ne sais pas si c'est vous qui gérez ça et si vous êtes déjà au courant, mais la nouvelle version de Mastodon (1.6.0) implémente le protocole ActivityPub, qui devient prioritaire dur OStatus.

Les avantages sont nombreux par rapport à OStatus, une mise à jour de l'instance Numerama sera préférable à terme je pense.


#453

@cdecou

Le certificat de social.numerama.com a expiré.

social.numerama.com utilise un certificat de sécurité invalide. Le certificat a expiré le 17 septembre 2017 à 09:32. La date courante est 18 septembre 2017 à 12:57. Code d’erreur : SEC_ERROR_EXPIRED_CERTIFICATE
Ce site a recours à HTTP Strict Transport Security (HSTS) pour indiquer à Firefox de n’établir qu’une connexion sécurisée. Ainsi il n’est pas possible d’ajouter d’exception pour ce certificat.


#454

Oups, Corrigé.

Je lance une mise à jour.

BM


#455

Je viens de récupérer mon "PSEUDO" Mr.Burns ... \^___^/ ca fait 6 mois que j'attendais, c'est la joie dans mon coeur!

[Edit]
AHHH bah non tiens... apparement mon pseudo change en fonction d'ou je me trouve ^^... ♫ musique de x-files


#456

Nous allons bientôt finaliser la refonte des commentaires de notre côté (api etc) la correction sera effectuée.


#457

Hello.

Vous l’aurez surement constaté de votre côté, mais nous nous sommes en très grande partie débarassés de notre « API en mousse ». Toutes les fonctionnalités permettant de lier Numerama à Discourse ont été revues pour intégrer l’API officielle de Discourse (connexion, commentaires, recherche, etc.), sauf sur la récupération des commentaires (des besoins de remonter plus d’informations qui nous y obligent).

Si vous notez quelques bugs, commencez par vous déconnecter des deux côtés (Numerama et Discourse) et à vous reconnecter (d’un côté ou de l’autre) pour restester et nous soumettre cela :).

Merci pour le coup de pouce de certains d’entre vous.


Pimp my Numerama avec des userscripts :dizzy:
#458

Y a que moi qui ait ça ?


Firefox 56 sous Windows


#459

Pareil sur mobile (Edge) pas en PC, opera ou firefox


#460

Oui aussi. Et ça ne logue pas vraiment. Le commentaire n’est pas publié. Il m’a fallu un bout de temps pour trouver comment vraiment me loguer en allant dans mon compte et cliquant sur ´se connecter’. C’est assez penible car ça se delogue à chaque fois que le navigateur est quitter.


#461

Pas un bug, mais je ne sais où poster :

Faites attention Numé, il n'y a plus de place pour les articles ...

:smiling_imp:


#462

uBO :

! bleeeeeuuaaaah, quelle horreur
www.numerama.com/content/themes/project-n-theme/resources/assets/images/Habillage_OnePlus5T.jpg

Pas terrible, car ça risque de changer de nom voire de chemin bientôt, mais bon, si ça peut soulager tes souffrances temporairement et que tu ne peux te résoudre à lire dans la partie discussion (qui n’est pas affectée par cette faute de goût), c’est un début…


#463

Non, non ça va ... c'était juste histoire de :wink: en fait je préfère le bandeau du OnePlus par exemple aux autres tentatives (les posts subventionés, ou autres pubs) le truc c'est qu'on à tout en même temps là ... O.o


#464

Difficile de savoir si ça a déjà été signalé mais je poste quand même :

Sur de nombreuses pages, il y a confusion entre mon pseudo (Chris1) et mon nom d'utilisateur (Chris). Les liens ainsi générés et l'image de profil pointent donc vers l'utilisateur ayant le pseudo "Chris" ce qui correspond à Christine Durand.

Sévérité : gênant.

Voilà, j'espère que c'est un problème sur la partie front sinon ça risque d'être rigolo en bdd.


#465

Hello :slight_smile:

On a également vu ce problème de notre côté, on va essayer de résoudre ça prochainement, promis. Le bug n'est pas nouveau, mais c'est la première fois qu'il affecte le site en production. Un peu dommage. On vous prévient quand ça sera réglé.

Merci de l'avoir remonté !


#466

Salut !

Tu parles de Discourse ou des commentaires depuis le site de Numerama ? En effet, c’est problématique. Je veux bien un peu plus de détails, on va regarder ça.


#467

je parle du menu principal, par exemple sur la page d'accueil :

Ce n'est pas mon image de profil utilisateur (mais celui de Christine Durand). Si je déroule le menu, tous les liens relatifs à mon profil renvoient vers Christine.
Je soupçonne que le bug soit introduit durant la création de mon compte car changer mon nom d'utilisateur n'influe pas sur la confusion.