Ändern des Textes von js.browser_update wird in No-JS-Ansichten nicht angewendet

  1. Ändern Sie js.browser_update unter Anpassen > Text.

  2. Öffnen Sie Discourse in IE10.

  3. Die Standardnachricht wird anstelle der angepassten Nachricht angezeigt.

AFAIK laufen JS-Textanpassungen in JavaScript. Da unser Modus für alte Browser reines HTML ohne JavaScript ist, wird alles, was JavaScript betrifft, dort nicht ausgeführt. Dieses Verhalten ist erwartungsgemäß.

Das ist hier festgelegt. https://github.com/discourse/discourse/blob/master/vendor/assets/javascripts/browser-update.js.erb#L29

Es sollte also anwendbar sein. :man_shrugging:

Oh, das wird nicht mehr funktionieren, da wir alle Globalen entfernen, wobei I18n die letzte war, die letzte Woche entfernt wurde.

Es könnte nach einem Neuaufbau funktionieren @zcuric.

Leider funktioniert es nicht. Wir haben heute ein Release durchgeführt und die App neu erstellt, aber es ist immer dasselbe.

Ich habe das gleiche Problem. Ich dachte, als ich js.browser_update zum ersten Mal geändert habe, wurde es in einem alten Browser angezeigt (aber ich bin mir jetzt nicht mehr zu 100 % sicher), aber heute sehe ich, dass der ursprüngliche Text angezeigt wird. Gibt es eine Möglichkeit, dies zu umgehen … vielleicht indem man diese spezielle Nachricht anders behandelt, da meistens, wenn diese Nachricht angezeigt wird, JavaScript nicht aktiviert ist? Vielleicht ein kurzes Plugin?

Der Grund, warum diese Funktion in einem Browser funktionierte und in einem anderen nicht, könnte darin liegen, dass einige sehr alte Browser die clientseitige Übersetzung nicht unterstützen, während andere dies tun.

Wir versuchen zuerst, die Übersetzung auszuführen, und wenn dies nicht funktioniert, greifen wir auf eine fest codierte Instanz der Standardnachricht auf Englisch zurück:

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

Leider können wir hier nicht viel mehr tun. Hoffentlich werden die Leute irgendwann von diesen Browsern wegkommen.