Wetterfuchsbutton Script für userChrome.js

  • Ja kann ich betätigen, habe es oben bereits geändert.
    Ab Firefox 58.0.1 geht der Wetterfuchs im Moment nicht mehr.
    Auch im aktuellen Nightly nicht.
    Leider.
    Mfg.
    Endor

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/124.0.1
    OS: Windows 10 pro 64 bit und Windows 10 Home 64 bit
    Meine Scripte Sammlung: https://github.com/Endor8/userChrome.js
    Kein Support per PN. Fragen bitte im Forum stellen!

  • Also wenn der Fehler wirklich erst seit Firefox 58.0.1 und noch nicht in Firefox 58.0 auftritt, dann gibt es eigentlich nur eine einzige Änderung, die dafür in Frage kommen kann, und das ist die Schließung einer schwerwiegenden Sicherheitslücke von Firefox:

    https://www.mozilla.org/en-US/security…es/mfsa2018-05/

    Dazu gab es die folgende Ankündigung auf der Mailingliste:

    Zitat

    As of bug 1432966, any HTML injected into chrome-privileged documents[1] is automatically sanitized to remove any possibility of script execution. The sanitization is whitelist-based, and only allows a limited set of HTML elements and attributes. All scripts, XUL nodes, or privileged URLs will automatically be removed. This change has been uplifted all the way to 58 release.

    If you're thinking about writing new code that injects HTML strings into chrome-privileged documents, please think again. Unless it's extremely simple, it probably won't be compatible with these changes (and will also be rejected by our default ESLint rules).

    Existing HTML injection in chrome documents is being gradually removed. Once that's done, the sanitization may be replaced with an outright prohibition.

    -Kris

    [1]: Using the usual HTML fragment creation methods such as `innerHTML`, `outerHTML`, `insertAdjacentHTML`, and `createContextualFragment`. Not, notably, when using document.write().

    Inwiefern dies das Script betrifft, muss der Schreiber des Scripts beurteilen. Nur gab es neben dieser Änderung nur eine einzige andere Änderung in Firefox 58.0.1 und die betrifft etwas vollkommen anderes, kann also auf gar keinen Fall der Grund sein.

    Ich bin nur über die Fehlermeldung "ReferenceError: Cc is not defined" überrascht, denn erstens sehe ich diese Fehlermeldung nicht in Zusammenhang mit dieser Änderung, zweitens erhalte ich eine andere Fehlermeldung:

    Code
    TypeError: Argument 1 of Range.selectNodeContents is not an object

    in der Zeile:

    Code
    range.selectNodeContents(document.getElementById(zId));

    in folgender Methode:

    Code
    $F: function (zId,sXml) {
        var range = document.createRange();
        range.selectNodeContents(document.getElementById(zId));
        range.collapse(false);
        range.insertNode(range.createContextualFragment(sXml.replace(/\n|\t/g, '')));
        range.detach();
    }

    Aber vielleicht läuft das Script ja auch gar nicht auf macOS und die Fehlermeldung ist daher eine andere. Da ich auch in früheren Versionen dieses Script nie installiert hatte, kann ich das nicht sagen.

    Vielleicht hilft dieser Input ja irgendwie.


  • Ich bin nur über die Fehlermeldung "ReferenceError: Cc is not defined" überrascht, denn erstens sehe ich diese Fehlermeldung nicht in Zusammenhang mit dieser Änderung, zweitens erhalte ich eine andere Fehlermeldung:

    Code
    TypeError: Argument 1 of Range.selectNodeContents is not an object


    Ich habe das Script bisher nie genutzt. Kann aber bestätigen das ich hier die selbe Fehlermeldung in der Konsole habe.

  • // Ich verstehe übrigens nicht, wieso man so etwas nicht als WebExtension umsetzt. Das ist doch ein ganz klassischer Fall für eine WebExtension. Hier geht es um nichts, was anders nicht möglich wäre (klar, es würde von der User Experience etwas anders aussehen, ist aber kein Nachteil per se), Nutzer könnten die Erweiterung bequem aktualisieren, wenn Änderungen notwendig werden, und es hätte in Firefox 58.0.1 auf gar keinen Fall ein Kompatibilitätsproblem gegeben. ;)

  • Ich könnte mir vorstellen, dass als Erweiterung dann einiges an individuellen Anpassungsmöglichkeiten dann
    verloren geht. Schließlich und endlich muss ja jeder Benutzer das Script an seine Bedürfnisse anpassen
    können. Das geht mit einer Erweiterung definitiv nicht so leicht, oder wenn überhaupt nur mit
    einem erheblichen Zeitaufwand für den Autor der Erweiterung. Und genau das ist ein Hauptproblem
    heute es fehlt einfach die Zeit für sowas. Ein Script kann auch mal die Gemeinschaft wieder zum laufen
    bringen. Eine Erweiterung nicht.
    Ich hatte schon befürchtet dass es genau an dieser Änderung liegen könnte.
    So wie ich das sehe, ist das ein weiterrer Schritt zum Aus für die Chrome Scripte.
    Mfg.
    Endor

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/124.0.1
    OS: Windows 10 pro 64 bit und Windows 10 Home 64 bit
    Meine Scripte Sammlung: https://github.com/Endor8/userChrome.js
    Kein Support per PN. Fragen bitte im Forum stellen!

  • Alles, was anpassbar ist, könnte man über eine Einstellungs-Seite bereitstellen. Der Aufwand dafür hält sich in Grenzen, insbesondere dann, wenn einem das Design egal ist, eine "hässliche" Seite erfüllt ja auch ihren Zweck. Erheblich ist der Zeitaufwand dafür nicht. Ich sprech da aus Erfahrung, ich hab ja schon ein paar WebExtensions geschrieben. Ob nun Script oder WebExtension, am Ende ist alles JavaScript. ;)


  • Ob nun Script oder WebExtension, am Ende ist alles JavaScript. ;)


    Das sehe ich ganz genauso. Eine Optionsabfrage ist nicht sonderlich aufwändig, zumal es sich bei so einer App nur um wenige Parameter handeln dürfte. Und das Styling kann man ebenfalls als Option anbieten, so wie z.B. bei Tab Center Redux. :)

    Windows 10 | FF 62.0 (64-Bit) / FF 61.0 (64-Bit) / FF 63.0 (64-Bit)

  • Moin,
    das hört sich ja alles ganz gut an - aber, wer gibt sich nun einen Ruck und nimmt sich dieser Sache an? :?:
    Fakt ist doch: der Wetterfuchs hat bereits einen ziemlich langen und dornenreichen Weg hinter sich gebracht!

    Gruß,
    D. Büssen

    Firefox 124.0. + Nightly 126 (WIN 10 - 64 bit)

  • Na, ich sicher nicht... :P
    Denn mich interessiert das Wetter bzw. eine entsprechende App ungefähr so sehr wie der Sack Reis in China... :lol:

    Windows 10 | FF 62.0 (64-Bit) / FF 61.0 (64-Bit) / FF 63.0 (64-Bit)

  • Geht mir genauso. :P Vor allem hätte ich keine Zeit dafür, das ganze Ding umzuschreiben. Schließlich bin ich nicht der Autor des Scripts und daher nicht vertraut mit dem Code. Das macht es natürlich wesentlich einfacher, wenn man das Original geschrieben hat. Ich kann nur Hilfe der Art anbieten, dass ich konkrete Fragen beantworten kann, zum Beispiel wenn die grundlegende WebExtension-Architektur steht und dann unklar ist, wie das mit den Einstellungen funktioniert.

  • Hier ist jetzt mal ein Zwischenergebnis. Testet, wie weit es funktioniert.


  • Hier ist jetzt mal ein Zwischenergebnis. Testet, wie weit es funktioniert.

    Moin,
    nun läuft der Wetterfuchs wieder auf Anhieb. :klasse:
    Die Werte von "Brandenburg" muss ich nur noch auf "Scheswig-Holstein" umändern.
    Habe vorerst mal mit meinen mobilen Versionen 58.0.1 und 59.0.b6 getestet.
    @ aborix >>Vielen Dank für die umgehende Bearbeitung! :)

    Gruß,
    D. Büssen

    Firefox 124.0. + Nightly 126 (WIN 10 - 64 bit)

  • Hallo aborix, was muss ich an dem Script ändern, um beim regionalen Wetter meinen Wohnort einzustellen?

    Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:124.0) Gecko/20100101 Firefox/124.0.1, Windows 11 Pro Version 23H2 (Build 22635.3350)


  • Hallo aborix, was muss ich an dem Script ändern, um beim regionalen Wetter meinen Wohnort einzustellen?

    Moin,
    heiße zwar nicht aborix - vielleicht kann ich hier auch aushelfen:

    Damit die Scripte sich nicht überschreiben, hast Du sicher die alte Version umbenannt? (z.B .... uc.txt)
    Dann kannst Du die letzten Zeilen (28-31) mit RE_ ( 4 Zeilen) kopieren und in die geänderte neue Version einfügen.

    Habe gerade eben das Brandenburger Land in Schlewig-Holstein umgewandelt. Funktioniert nunmehr perfekt.
    Solltest Du aber die alte mit der neuen Version überschrieben haben - dann ist nur Handarbeit angesagt!

    Gruß,
    D. Büssen

    Firefox 124.0. + Nightly 126 (WIN 10 - 64 bit)