Modifier le texte js.browser_update n'est pas pris en compte dans les vues sans JS

  1. Modifiez js.browser_update dans Personnaliser > Texte.

  2. Ouvrez Discourse dans IE10

  3. Le message par défaut s’affiche au lieu du message personnalisé

À ma connaissance, les personnalisations de texte en JS s’exécutent en JavaScript. Comme notre mode pour les anciens navigateurs est du HTML pur sans JavaScript, tout ce qui relève de JS ne s’exécutera pas dans ce contexte. Ce comportement est attendu.

1 « J'aime »

C’est défini ici. https://github.com/discourse/discourse/blob/master/vendor/assets/javascripts/browser-update.js.erb#L29

Donc cela devrait être applicable. :man_shrugging:

1 « J'aime »

Oh, cela ne fonctionnera plus car nous supprimons toutes les variables globales, I18n ayant été la dernière supprimée la semaine dernière.

Cela pourrait fonctionner après une nouvelle construction @zcuric.

3 « J'aime »

Malheureusement, cela ne fonctionne pas. Nous avons effectué une publication aujourd’hui et reconstruit l’application, mais c’est toujours pareil.

Je rencontre le même problème. J’ai cru que, lors de mon premier changement de js.browser_update, le message s’affichait sur un ancien navigateur (mais je ne suis plus tout à fait sûr maintenant), mais aujourd’hui, je constate qu’il affiche le texte original. Y a-t-il une solution à ce problème… peut-être en traitant ce message particulier différemment, étant donné que, la plupart du temps, JavaScript ne sera pas activé lorsque ce message s’affiche ? Peut-être un petit plugin ?

La raison pour laquelle vous avez vu ce travail sur un navigateur, puis pas sur un autre, pourrait être que certains navigateurs très anciens ne prennent pas en charge la traduction côté client, tandis que d’autres le peuvent.

Nous essayons d’abord d’exécuter la traduction, et si cela ne fonctionne pas, nous nous rabattons sur une instance codée en dur du message par défaut en anglais :

https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/scripts/browser-update.js#L50

Malheureusement, nous ne pouvons pas faire grand-chose de plus à ce sujet. Espérons que les gens délaisseront ces navigateurs à un moment donné.