Extension soll beim Update bestimmte Dateien nicht ändern...

  • Hallo,

    Ich bin gerade dabei, unsere Extension automatisch updatefähig zu machen. Klappt momentan ganz gut, nur haben wir folgende Problematik:

    In dem Ordner /defaults/ liegt eine XML-Datei, die eine Übersicht über den Studienverlauf darstellt, in der dann auch die Noten gesichert werden, die der Benutzer einträgt.

    Wenn nun aber die Extension ein Update macht, wird dann diese XML wieder mit einem "Blanko"-XML überschrieben, was ja gar nicht gut ist, weil dann der Benutzer seine Noten wieder eintragen muss.

    Meine Frage also: Gibt es irgendeine Möglichkeit der Extension mitzuteilen, dass der beim Update eine bestimmte Datei NICHT ändern soll?

    Freue mich auf Antworten :)
    Christian

  • Ich glaube, das geht nicht. Wie ich es machen würde:

    Ich würde die eigentliche xml-Datei nicht in der .xpi-Datei speichern, sondern nur eine (leere) template-Datei. Beim start deiner Erweiterung kopierst du dann die template-Datei zur eigentlichen Datendatei, falls diese noch nicht vorhanden ist.

  • Du meinst dann wohl, dass dann die "eigentliche Datei" im Profil- oder Benutzerordner liegen soll?

    Als ich gerade eben diesen Link gesehen habe - http://kb.mozillazine.org/File_IO#Getting_special_files - kam mir die Idee, dass ich einfach die XML in das Profil- oder Benutzerverzeichnis kopiere und dann - wie du es schon sagtest ;) - beim Starten der Ext. prüfe, ob diese in dem Ordner liegt und falls es leer ist, den Template da rein mache.

    Eine Frage noch zu dem Link http://kb.mozillazine.org/File_IO#Getting_special_files
    Dort steht, dass der String "Home" zu dem "OS root" führt. Es ist doch hoffentlich das Home-Verzeichnis von dem Benutzer gemeint, oder? Will ja nicht, dass das jedermann die Noten am Ende sehen kann ;)

  • Zitat von MisterDither

    Du meinst dann wohl, dass dann die "eigentliche Datei" im Profil- oder Benutzerordner liegen soll?

    Als ich gerade eben diesen Link gesehen habe - http://kb.mozillazine.org/File_IO#Getting_special_files - kam mir die Idee, dass ich einfach die XML in das Profil- oder Benutzerverzeichnis kopiere und dann - wie du es schon sagtest ;) - beim Starten der Ext. prüfe, ob diese in dem Ordner liegt und falls es leer ist, den Template da rein mache.


    Genau das.

    Zitat


    Eine Frage noch zu dem Link http://kb.mozillazine.org/File_IO#Getting_special_files
    Dort steht, dass der String "Home" zu dem "OS root" führt. Es ist doch hoffentlich das Home-Verzeichnis von dem Benutzer gemeint, oder? Will ja nicht, dass das jedermann die Noten am Ende sehen kann ;)


    So wie ich den Text (und das Beispiel) verstehe, gehe ich auch davon aus, dass das Home-Verzeichnis gemeint ist. Im Zweifelsfalle würde ich das einfach ausprobieren.