Fenêtre modale de type Facebook pour les sujets - Est-ce mieux ?

J’ai passé du temps à bidouiller pour donner un look différent à d’autres sites, et j’ai créé une modale de sujet style Facebook. Elle semble charger plus vite pour moi et paraît plus fluide sur desktop.

Qu’en pensez-vous ?

Le lien pour tester est https://www.carptalk-online.co.uk/ (ne fonctionne que sur desktop)

bien joué ! j’apprécie beaucoup, même si je ne suis pas utilisateur de Facebook. ton site est super cool. :star_struck:

aussi, je ne me rendais pas compte que les carpes pouvaient devenir aussi énormes ! :fishing_pole:

Très cool ! L’as-tu testé dans des sujets avec plus de 20 réponses ? C’est à ce moment-là que nous chargeons davantage de « pages » de messages au défilement, et d’après mon expérience, c’est l’une des plus grandes complications avec ce type de vue alternative.

Non, je vais le faire maintenant et je te tiendrai au courant.

Fonctionne correctement - URL SUPPRIMÉE

Je vois la page se charger comme vous le dites, mais elle fonctionne comme prévu.

Le sujet n’apparaît pas dans une fenêtre modale lorsque l’on clique sur le lien direct. Par contre, cela fonctionne depuis la liste des sujets.

Oui, c’est la prochaine chose que je dois examiner, mais je me pose la question : est-ce que cela a de l’importance ? C’est exactement comme se comporte Facebook : le lien direct mène au message réel, et si on clique en naviguant, une fenêtre modale s’ouvre.

Bel concept. Êtes-vous capable de maintenir une connexion constante avec le bus de messages pour les nouveaux messages tout en chargeant les anciens ?

Oui, car la modale charge l’application Discourse normale pour les sujets à l’intérieur d’une iframe, au lieu de rendre une copie personnalisée du sujet. L’iframe établit sa propre connexion MessageBus, et Discourse continue de gérer le flux de messages normalement, y compris le chargement des anciens messages et la réception des nouveaux messages publiés.

La page parente reste également active en arrière-plan, donc techniquement, il y a deux instances Discourse et deux connexions MessageBus tant que la modale est ouverte. Cela fonctionne, bien que ce soit légèrement plus lourd qu’une implémentation entièrement native. Fermer la modale supprime l’iframe et sa connexion.

Je ne sais pas si cela a de l’importance, et je n’utilise pas Facebook :stuck_out_tongue:

J’étais simplement surpris que cliquer sur ton lien n’affichait pas le sujet dans une fenêtre modale, alors que tu l’as posté précisément pour montrer qu’il fonctionnait dans une fenêtre modale.

Mon message initial contenait un lien vers la page d’accueil. Tu as cliqué sur ma réponse à Kris qui testait les sujets, haha ? Comment vas-tu d’ailleurs ? Je ne t’ai pas vu depuis un moment.

Je viens de terminer la version mobile et je suis satisfait du fonctionnement global. La prochaine étape consiste à trouver une meilleure méthode pour optimiser le tout et réduire le temps de chargement. Avez-vous des suggestions ?

Après plusieurs tests, j’ai utilisé la version sans JavaScript que Google voit, et elle se charge instantanément dans la modale. Si je pouvais d’une manière ou d’une autre utiliser le contenu de cette version, cela accélérerait le processus.

L’affichage sur ordinateur est très réussi,

mais le chargement sur mobile est un peu lent. Après avoir cliqué, on ne voit qu’une page vide avec un bouton de fermeture en haut à droite, ce qui oblige à attendre longtemps face à un écran blanc.

Voici ce sur quoi je travaille en ce moment :slight_smile: Pour l’instant, c’est juste un concept que je souhaite concrétiser. Cependant, sur mon appareil, cela se charge en 2 secondes sur mobile avec l’icône de chargement Discourse, donc je ne suis pas sûr de ce qui se passe. Probablement parce que le serveur est à Londres, au Royaume-Uni, et qu’il n’y a pas encore de CDN.

La distance est effectivement trop grande, ce qui entraîne des délais de transmission réseau.

J’ai maintenant réussi à charger les sujets instantanément dans la modale, il me reste maintenant à trouver un moyen d’utiliser la première instance Discourse chargée pour les réponses, etc. (cela se passe sur le serveur de test)

J’ai désactivé cette fonctionnalité sur le site principal, car il commence à recevoir du trafic avec des inscriptions d’utilisateurs, donc elle a été déplacée sur un serveur de test. J’espère avoir terminé d’ici la mi-août, si quelqu’un s’intéresse à une fenêtre modale.