1. Nachrichten
  2. Forum
    1. Unerledigte Themen
    2. Forenregeln
  3. Spenden
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. camp-firefox.de
  2. Boersenfeger

Beiträge von Boersenfeger

  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 4. Juli 2023 um 14:38
    Zitat von 2002Andreas

    Sei nicht zu fleißig.

    Ja, doch viel zu tun gehabt... Leider stehe ich immer noch vor dem Problem..

    Anscheinend bewirken Änderungen in diesem Codeteil (bei mir ab Zeile 62) überhaupt nix, habe mal 40 px genommen... es sieht dann immer noch wie vorher aus

    CSS
    #tabContextUndoList > menupopup > menuitem:nth-child(1), 
    #ContextUndoList > menupopup  > menuitem:nth-child(1) {
      display: none !important;
    }
    
    #tabContextUndoList :is(menu,menuitem),
    #ContextUndoList :is(menu,menuitem) {
      min-height: 40px !important;
      padding-top: 0 !important; 
      padding-bottom: 0 !important;
    }
    Alles anzeigen
  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 2. Juli 2023 um 17:49

    Leider keine Änderung

    Für heute Feierabend, muss zur Schicht...

    Danke einstweilen :)

  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 2. Juli 2023 um 17:39

    Gut, der andere Eintrag ist auch verschwunden... ^^

    Jetzt müsste nur noch der Zeilenabstand angepasst werden...

    Dharkness

    JavaScript
    // ==UserScript==
    // @name           BackupProfile.uc.js
    // @namespace      BackupProfile.github.com
    // @description    Schaltfläche zum Sichern des Firefoxprofils
    // @charset        UTF-8
    // @author         ywzhaiqi、defpt
    // @version        v2018.01.10
    // @note              Vorlage Script von ywzhaiqi (+ Mischung aus diversen Varianten aus dem Fuchsforum 1.11.21)
    // @note           Sicherungsdatei enthaelt auch Profilname 
    // @note            FileUtils.getFile ersetzt 2.7.23         
    // @reviewURL      http://bbs.kafan.cn/thread-1758785-1-1.html
    (function () {
        Components.utils.import("resource:///modules/CustomizableUI.jsm");
        CustomizableUI.createWidget({
            id : "Backup-button",
            defaultArea : CustomizableUI.AREA_NAVBAR,
            label : "Profilsicherung",
            tooltiptext : "Sichern der aktuellen Konfiguration",
            onClick: function(){
                // Speicherort - Ordner festlegen - Sichern funktioniert nur wenn Speicherort- bzw. Ordner vorhanden ist!!
                var path = "G:\\Nutzername\\Sicherungen\\Firefox\\Firefox Sicherung\\Arbeiter\\";
                // var path = "";
                // Ausschlussliste
                var excludes = 'bookmarkbackups *cache* crashes fftmp *healthreport* minidumps safebrowsing *webapps* saved-telemetry-pings *thumbnails* *session* *Telemetry* *hotfix* *.sqlite-shm *.sqlite-wal *.bak parent.lock blocklist.xml content-prefs.sqlite directoryLinks.json mimeTypes.rdf compatibility.ini parent.lock formhistory.sqlite';
    
    
                if (!path) {
                    var nsIFilePicker = Ci.nsIFilePicker;
                    var FP = Cc['@mozilla.org/filepicker;1'].createInstance(nsIFilePicker);
                    FP.init(window, 'Sicherungspfad wählen', nsIFilePicker.modeGetFolder);
    
                    if (FP.show() == nsIFilePicker.returnOK) {
                        path = FP.file.path;
                    } else {
                        return false;
                    }
                }
    
                excludes = excludes.replace(/\./g, '\\.').replace(/\*/g, '.*').replace(/\s+/g, '|');
                excludes = new RegExp(excludes, 'i');
    
                var zw = Cc['@mozilla.org/zipwriter;1'].createInstance(Ci.nsIZipWriter);
                var pr = {PR_RDONLY: 0x01, PR_WRONLY: 0x02, PR_RDWR: 0x04, PR_CREATE_FILE: 0x08, PR_APPEND: 0x10, PR_TRUNCATE: 0x20, PR_SYNC: 0x40, PR_EXCL: 0x80};
                var fu = ChromeUtils.importESModule('resource://gre/modules/FileUtils.sys.mjs').FileUtils;
                var dir = new FileUtils.File(PathUtils.join(PathUtils.profileDir,[]));
                
                let d = new Date();
                d = d.getDate() + '.' + (d.getMonth() + 1).toString().padStart(2, '0') + '.' + d.getFullYear().toString().padStart(2, '0')  + '  '  + d.getHours().toString().padStart(2, '0') + '\uA789' + d.getMinutes().toString().padStart(2, '0') + '\uA789' + d.getSeconds().toString().padStart(2, '0');
    
                // Die folgende Zeile formt den Archivnamen
                var archiveName = 'Profil Arbeiter ' + ' ' + d + '.zip';  /* 'd' ersetzt 'localnow' */ 
            
                var xpi = fu.File(path + '\\' + archiveName);
                
                zw.open(xpi, pr.PR_RDWR | pr.PR_CREATE_FILE | pr.PR_TRUNCATE);
                var dirArr = [dir];
                for (var i=0; i<dirArr.length; i++) {
                    var dirEntries = dirArr[i].directoryEntries;
                    while (dirEntries.hasMoreElements()) {
                        var entry = dirEntries.getNext().QueryInterface(Ci.nsIFile);
                        if (entry.path == xpi.path) {
                            continue;
                        }
    
                        if (entry.isDirectory()) {
                           dirArr.push(entry);
                        }
    
                        var relPath = entry.path.replace(dirArr[0].path, '');
                        if (relPath.match(excludes)) {
                            continue;
                        }
    
                        var saveInZipAs = relPath.substr(1);
                        saveInZipAs = saveInZipAs.replace(/\\/g,'/');
                        // Konfigurationsdateien können gesperrt werden
                        try {
                            zw.addEntryFile(saveInZipAs, Ci.nsIZipWriter.COMPRESSION_FASTEST, entry, false);
                        } catch (e) {}
                    }
                }
                zw.close();
                alert('Die aktuelle Konfiguration wurde als:\n'+ archiveName +'\ngesichert in:\n' + path);
    
                function alert(aString, aTitle) {
                    Cc['@mozilla.org/alerts-service;1'].getService(Ci.nsIAlertsService).showAlertNotification("", aTitle, aString, false, "", null);
                }
    
                function bupgetCurrentProfileName(){
                    function readFile(aFile){
                        var stream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream);    stream.init(aFile, 0x01, 0, 0);
                        var cvstream = Cc["@mozilla.org/intl/converter-input-stream;1"].createInstance(Ci.nsIConverterInputStream);
                        cvstream.init(stream, "UTF-8", 1024, Ci.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER);
                        var content = "", data = {};
                        while (cvstream.readString(4096, data)) {
                            content += data.value;
                        }
                        cvstream.close();
                        return content.replace(/\r\n?/g, "\n");
                    }
                    var PrefD = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("PrefD", Components.interfaces.nsIFile);
                    var ini = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("AppRegD", Components.interfaces.nsIFile);
    
                    ini.append("profiles.ini");
                    var ini = readFile(ini);
                    var profiles = ini.match(/Name=.+/g);
                    var profilesD = ini.match(/Path=.+/g);
                    for ( var i = 0; i < profiles.length;i++) {
                    if ((profilesD[i]+"$").indexOf(PrefD.leafName+"$") >= 0) {
                        profiles[i].match(/Name=(.+)$/);
                        return RegExp.$1;
                        }
                    }
                    return null;
                }
            },
        });
    
        var cssStr = '@-moz-document url("chrome://browser/content/browser.xhtml"){'
             + '#Backup-button .toolbarbutton-icon {'
             + 'list-style-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1%2B%2FAAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNC8xMS8wOGGVBZQAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzQGstOgAAABxklEQVQ4ja2UMUgbURjHfxeSFBzuBEuCkkAgIA5JDdzWohVnQe3UpRDE2UXpKKXdWro4ixlcdNJAydxiyHZkCIKIOEnLpZQSRFFz%2Bjqk73nvuDtb2j883nv%2F73u%2F%2B%2B69ewf%2FWUZgbgEFYDgiPw18B86An8DtQw%2BYdF1XRLVGoyGEEKJara4Bj0MKIhGYDxuGQVSTqtVqH0ql0uzvNzLigCQSicjmeZ7K63Q6u5VKZRoYigXGVWhZlpbbbrfrwKjfS4ZVGKVCoUCz2aTX65FOp6WdA04igf69CsqyLMrlctAWsRXGAf9EavXyFELEZT4A2TwYsLQKF%2BYXAJhb3VPep4%2BLzK3uqd7vS9Xr%2B2qsAW9u4eyoxcZSFoCVLZfTwxaA6v2xjaUsuYmnWrU60IOr%2FmD8etvl%2Fausikl%2FZcsFULEbD02hwPUdl7cvs1qiBAb9eOCdwdjEM2AABdh88wJA%2BbK%2FX6MDtVPmHyRPOfjRPfc87%2FPfgJLJ5AzwRc0BbNseB8a63e6TuKsXpnw%2BP5nJZAzgq%2BM4x3IPzwFM07woFovv%2Bv3%2BUDTiXqlU6tI0zQs%2FI%2FSe2bYt%2FyCPgJFA%2BAdwDeA4zrfg2l%2BwUqCoC1F3YQAAAABJRU5ErkJggg%3D%3D)'
             + '}}';
        var sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
        var ios = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService);
        sss.loadAndRegisterSheet(ios.newURI("data:text/css;base64," + btoa(cssStr), null, null), sss.USER_SHEET);
    })();
    Alles anzeigen

    Zeile 21 anpassen!

  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 2. Juli 2023 um 17:27

    Upps, eben stand noch ein CSS-Code dabei, allerdings klappt es sowohl mit als auch ohne nicht, der Abstand bleibt groß... der Eintrag "Geschlossenen Tab wieder öffnen" ist verschwunden, der andere "Alle Tabs wieder öffnen" aber noch vorhanden.

    Wurde das Script auch nochmal geändert?

  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 2. Juli 2023 um 16:06

    Habe noch eine Baustelle:

    im von mir eingekürztem Script UndoListinTabMenuToo.uc.js

    JavaScript
    // ==UserScript==
    // @name           UndoListInTabmenuToo.uc.js
    // @namespace      http://space.geocities.yahoo.co.jp/gl/alice0775
    // @description    Kürzlich geschlossene Tabsliste in Tab-Kontext und Hauptkontextmenü einfügen.
    // @include        main
    // @compatibility  Firefox 115
    // @author         Alice0775
    // @version        2023/07/02 Einträge für Fenster entfernt
    // @version        2023/06/16 08:00 Bug 1819675 - Expand recently closed tabs to include all Windows
    // @version        2022/05/10 fix ref to context-media-eme-separator
    // @version        2021/12/09 remove JSON.parse (Bug 1733425)
    // @version        2021/04/25 fix 1689378
    // @version        2019/11/14 remove eval
    // @version        2019/06/30 10:00 Bug 1555060 Convert <tabs> to a custom element
    // @version        2019/06/24 23:00 wait for gBrowser initialized
    // @version        2019/05/21 08:30 fix 69.0a1 Bug 1551320 - Replace all createElement calls in XUL documents with createXULElement
    // @version        2018/05/10 60
    // @version        2017/11/18 nsIPrefBranch to nsIPrefBranch
    // @version        2010/09/18 00:00 4.0b7pre
    // @version        2009/02/03 13:00 Tab-Verlauf im Tooltip anzeigen
    // @Note           Fügt die UndoClose-Tab-Liste zu Tabs und Kontextmenüs hinzu
    // @OriginalCode   Orginalcode aus browser.js für populateUndoSubmenu verwenden
    // @version        2018/05/09 15:00 61
    // ==/UserScript==
    // @version        2010/03/26 13:00  Minefield/3.7a4pre Bug 554991 -  allow tab context menu to be modified by normal XUL overlays
    // @version        2010/03/15 00:00  Minefield/3.7a4pre Bug 347930 -  Tab strip should be a toolbar instead
    // @version        2009/09/09 15:00 Mittelklick-Handhabung
    // @version        2009/09/03 22:00 Firefox3.7a1pre Funktion wurde wieder hergestellt. (Bug 489925. getElementById should not return anonymous nodes)
    // @version        2009/08/22 00:00 Firefox3.6 Ändern des stringbandle
    // @version        2009/04/24 00:00 #394759 [Firefox:Session Restore]-Add undo close window feature
    // @version        2008/10/12 18:00 Fx3.0.4pre Mittelklick-Popupmenü wurde nicht geschlossen und andere Korrekturen
    // @version        2007/10/05 10:00
    
    var UndoListInTabmenu = {
    // -- config --
      TABCONTEXTMENU : true , //Im Tabkontextmenü: anzeigen: true, nicht anzeigen: false
      CONTEXTMENU    : true,  //Im Hauptkontextmenü: anzeigen: true , nicht anzeigen: false
    // -- config end--
      ss: null,
    
      get tabContext() {
        return document.getElementById("tabContextMenu");
      },
    
      get navigatorBundle() {
        return Services.strings.createBundle(
               "chrome://browser/locale/browser.properties"
               );
      },
    
      init: function(){
    
        if (this.TABCONTEXTMENU){
          //Tabkontextmenü
          var tabContext = this.tabContext;
          this.makePopup(tabContext, null, "tabContextUndoList");
        }
        if (this.CONTEXTMENU){
          //Hauptkontextmenü
          var contextMenu = document.getElementById("contentAreaContextMenu");
          var refItem = document.getElementById("context-media-eme-separator");
          this.makePopup(contextMenu, refItem, "ContextUndoList");
        }
        // Geschlossene Tabs dem NS-Sitzungsspeicher entnehmen
        this._ss = SessionStore;
    
      },
    
      makePopup: function(popup, refItem, id){
        var menu;
        //label
        const locale = "de";
        
        /* "Liste Kürzlich geschlossener Fenster"
        menu = document.createXULElement("menu");
        menu.setAttribute("id", "historyUndoWindowMenu3");
        menu.setAttribute("label", "K\u00FCrzlich geschlossene Fenster");
        menu.setAttribute("accesskey", "F");
        menu.setAttribute("disabled", "true");
        popup.insertBefore(menu, refItem);
    
        this.historyUndoWindowPopup3 = menu = menu.appendChild(document.createXULElement("menupopup"));
        menu.setAttribute("id", "historyUndoWindowPopup3");
        menu.setAttribute("onpopupshowing", "UndoListInTabmenu.populateUndoWindowSubmenu(this);"); */
    
        //Liste kürzlich geschlossener Tabs
        const LABELTEXT = "Kürzlich geschlossene Tabs";    //create menu
        menu = document.createXULElement("menu");
        menu.setAttribute("label", LABELTEXT);
        menu.setAttribute("accesskey", "T");
        if (id)
          menu.setAttribute("id", id);
        //menu.setAttribute("disabled", true);
        var menupopup = document.createXULElement("menupopup");
        menupopup.setAttribute("onpopupshowing", "UndoListInTabmenu.populateUndoSubmenu(this);");
        menu.appendChild(menupopup);
        popup.insertBefore(menu, refItem);
    
        //Eventlistener hinzufügen
        popup.addEventListener('popupshowing',function(event) {
          UndoListInTabmenu.toggleRecentlyClosedWindows();
          // no restorable tabs, so make sure menu is disabled, and return
          if (UndoListInTabmenu._ss.getClosedTabCount(window) == 0) {
            menu.setAttribute("disabled", true);
            //menu.setAttribute("hidden", true);
            return;
          }
          menu.removeAttribute("disabled");
          //menu.setAttribute("hidden", false);
        },false);
      },
      
       /* Befüllen, wenn das Chronik-Menü geöffnet ist (Fx3.6) */
       
      populateUndoSubmenu: function(undoPopup) {
            while (undoPopup.hasChildNodes()) {
                undoPopup.removeChild(undoPopup.firstChild);
            }
            var utils = RecentlyClosedTabsAndWindowsMenuUtils;
            var tabsFragment = utils.getTabsFragment(
              window,
          "menuitem",
          /* aPrefixRestoreAll = */ true,
          "menu-history-reopen-all-tabs"
        ); 
            undoPopup.appendChild(tabsFragment);
            undoPopup.firstChild.setAttribute("accesskey", "R");
            var m = undoPopup.insertBefore(document.createXULElement("menuitem"), undoPopup.childNodes[0]);
            m.setAttribute("label", "Letzten geschlossenen Tab wieder öffnen (s)");
            m.setAttribute("oncommand", "undoCloseTab()");
            m.setAttribute("accesskey", "o");
        undoPopup.insertBefore(document.createXULElement("menuseparator"), undoPopup.childNodes[2]); 
      
        // populate tab historis for tooltip
        var undoItems = UndoListInTabmenu._ss.getClosedTabDataForWindow(window);
        for (var i = 0; i < undoItems.length; i++) {
          var entries = undoItems[i].state.entries;
          var tooltiptext = "";
          for (var j = entries.length - 1; j > -1; j--){
            if (j != entries.length - 1)
              tooltiptext += "\n";
            tooltiptext += parseInt(j + 1, 10) + ". " + entries[j].title;
          }
          undoPopup.childNodes[i + 2/*restore all, sep*/].setAttribute("tooltiptext", tooltiptext);
        }
    
        // "Append Clear undo close tb list"
        undoPopup.appendChild(document.createXULElement("menuseparator"));
    
        m = undoPopup.appendChild(document.createXULElement("menuitem"));
        m.setAttribute("label", "Liste der letzten Tabs l\u00F6schen");
        m.setAttribute("accesskey", "h");
        m.addEventListener("command", function() {
          let prefs = Services.prefs;
          let max_undo = prefs.getIntPref("browser.sessionstore.max_tabs_undo");
          prefs.setIntPref("browser.sessionstore.max_tabs_undo", 0);
          prefs.setIntPref("browser.sessionstore.max_tabs_undo", max_undo);
        }, false);
      },
    
      toggleRecentlyClosedWindows: function PHM_toggleRecentlyClosedWindows() {
        // enable/disable the Recently Closed Windows sub menu
        let undoPopup = this.historyUndoWindowPopup3;
        // no restorable windows, so disable menu
        if (this._ss.getClosedWindowCount() == 0)
          this.historyUndoWindowPopup3.parentNode.setAttribute("disabled", true);
        else
          this.historyUndoWindowPopup3.parentNode.removeAttribute("disabled");
      },
    
      /**
       * Populate when the history menu is opened
       */
      populateUndoWindowSubmenu: function PHM_populateUndoWindowSubmenu(undoPopup) {
            while (undoPopup.hasChildNodes()) {
                undoPopup.removeChild(undoPopup.firstChild);
            }
            let utils = RecentlyClosedTabsAndWindowsMenuUtils;
            let windowsFragment = utils.getWindowsFragment(
          window,
          "menuitem",
          /* aPrefixRestoreAll = */ true,
          "menu-history-reopen-all-windows"
        );
        undoPopup.appendChild(windowsFragment);
        undoPopup.firstChild.setAttribute("accesskey", "R");
        undoPopup.insertBefore(document.createXULElement("menuseparator"), undoPopup.childNodes[1]);
        } 
        };
    
    // Wir sollten die Weiterleitung nur starten, wenn das Browserfenster den Startprozess abgeschlossen hat
    // Ansonsten sollten wir warten, bis der Start abgeschlossen ist.
        if (gBrowserInit.delayedStartupFinished) {
        UndoListInTabmenu.init();
        } 
        else {
        let delayedStartupFinished = (subject, topic) => {
        if (topic == "browser-delayed-startup-finished" &&
            subject == window) {
          Services.obs.removeObserver(delayedStartupFinished, topic);
          UndoListInTabmenu.init();
        }
        };
        Services.obs.addObserver(delayedStartupFinished,
                               "browser-delayed-startup-finished");
        }
    Alles anzeigen

    ist der Zeilen-Abstand des ausgeworfenen Ergebnisses zu groß, ausserdem sollen die beiden eingekreisten Einträge verschwinden. Ich kriegs mal wieder nicht hin.


    Zitat von FuchsFan

    Aber dort nur, wenn das noch so Components.utils.import("resource:///modules/CustomizableUI.jsm"); eingetragen ist. ;)

    Nö, ist hier in 114.0.2 an die neuen Gegebenheiten angepasst und funktioniert!


    JavaScript
    var zw = Cc['@mozilla.org/zipwriter;1'].createInstance(Ci.nsIZipWriter);
    var pr = {PR_RDONLY: 0x01, PR_WRONLY: 0x02, PR_RDWR: 0x04, PR_CREATE_FILE: 0x08, PR_APPEND: 0x10, PR_TRUNCATE: 0x20, PR_SYNC: 0x40, PR_EXCL: 0x80};
    var fu = ChromeUtils.importESModule('resource://gre/modules/FileUtils.sys.mjs').FileUtils;
    var dir = new FileUtils.File(PathUtils.join(PathUtils.profileDir,[]));

    Zeile 41 bis 44

  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 2. Juli 2023 um 15:18

    Funktioniert auch in 114.0.2, gerade getestet... ;)

  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 2. Juli 2023 um 14:57

    Danke! :saint:

  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 2. Juli 2023 um 14:06

    Sören Hentzschel Vielen Dank! Deine vorgeschlagene Änderung macht das Script wieder einsetzbar. :) :thumbup:

    Im verlinkten Thread steht

    Zitat

    Target Milestone: --- → 116 Branch

    Wäre die Änderung auch schon in Firefox 115 funktionabel?

  • userChrome.js Scripte für den Fuchs (Diskussion)

    • Boersenfeger
    • 2. Juli 2023 um 11:41

    Auch ich benötige mal eine Überprüfung:

    Mein BackUp-Script funktioniert im Nightly nicht mehr...

    JavaScript
    // ==UserScript==
    // @name           BackupProfile.uc.js
    // @namespace      BackupProfile.github.com
    // @description    Schaltfläche zum Sichern des Firefoxprofils
    // @charset        UTF-8
    // @author         ywzhaiqi、defpt
    // @version        v2018.01.10
    // @note           Vorlage Script von ywzhaiqi (+ Mischung aus diversen Varianten aus dem Fuchsforum 1.11.21)
    // @note           Sicherungsdatei enthaelt auch Profilname
    // @reviewURL      http://bbs.kafan.cn/thread-1758785-1-1.html
    (function () {
        ChromeUtils.importESModule("resource:///modules/CustomizableUI.sys.mjs");
        CustomizableUI.createWidget({
            id : "Backup-button",
            defaultArea : CustomizableUI.AREA_NAVBAR,
            label : "Profilsicherung",
            tooltiptext : "Sichern der aktuellen Konfiguration",
            onClick: function(){
                // Speicherort - Ordner festlegen - Sichern funktioniert nur wenn Speicherort- bzw. Ordner vorhanden ist!!
                var path = "G:\\M.....\\Sicherungen\\Firefox\\Firefox Sicherung\\Nightly\\";
                // var path = "";
                // Ausschlussliste
                var excludes = 'bookmarkbackups *cache* crashes fftmp *healthreport* minidumps safebrowsing *webapps* saved-telemetry-pings *thumbnails* *session* *Telemetry* *hotfix* *.sqlite-shm *.sqlite-wal *.bak parent.lock blocklist.xml content-prefs.sqlite directoryLinks.json mimeTypes.rdf compatibility.ini parent.lock formhistory.sqlite';
    
    
                if (!path) {
                    var nsIFilePicker = Ci.nsIFilePicker;
                    var FP = Cc['@mozilla.org/filepicker;1'].createInstance(nsIFilePicker);
                    FP.init(window, 'Sicherungspfad wählen', nsIFilePicker.modeGetFolder);
    
                    if (FP.show() == nsIFilePicker.returnOK) {
                        path = FP.file.path;
                    } else {
                        return false;
                    }
                }
    
                excludes = excludes.replace(/\./g, '\\.').replace(/\*/g, '.*').replace(/\s+/g, '|');
                excludes = new RegExp(excludes, 'i');
    
                var zw = Cc['@mozilla.org/zipwriter;1'].createInstance(Ci.nsIZipWriter);
                var pr = {PR_RDONLY: 0x01, PR_WRONLY: 0x02, PR_RDWR: 0x04, PR_CREATE_FILE: 0x08, PR_APPEND: 0x10, PR_TRUNCATE: 0x20, PR_SYNC: 0x40, PR_EXCL: 0x80};
                var fu = ChromeUtils.importESModule('resource://gre/modules/FileUtils.sys.mjs').FileUtils;
                var dir = fu.getFile('ProfD', []);
                
                let d = new Date();
                d = d.getDate() + '.' + (d.getMonth() + 1).toString().padStart(2, '0') + '.' + d.getFullYear().toString().padStart(2, '0')  + '  '  + d.getHours().toString().padStart(2, '0') + '\uA789' + d.getMinutes().toString().padStart(2, '0') + '\uA789' + d.getSeconds().toString().padStart(2, '0');
    
                // Die folgende Zeile formt den Archivnamen
                var archiveName = 'Profil Nightly ' + ' ' + d + '.zip';  /* 'd' ersetzt 'localnow' */ 
            
                var xpi = fu.File(path + '\\' + archiveName);
    
                zw.open(xpi, pr.PR_RDWR | pr.PR_CREATE_FILE | pr.PR_TRUNCATE);
                var dirArr = [dir];
                for (var i=0; i<dirArr.length; i++) {
                    var dirEntries = dirArr[i].directoryEntries;
                    while (dirEntries.hasMoreElements()) {
                        var entry = dirEntries.getNext().QueryInterface(Ci.nsIFile);
                        if (entry.path == xpi.path) {
                            continue;
                        }
    
                        if (entry.isDirectory()) {
                           dirArr.push(entry);
                        }
    
                        var relPath = entry.path.replace(dirArr[0].path, '');
                        if (relPath.match(excludes)) {
                            continue;
                        }
    
                        var saveInZipAs = relPath.substr(1);
                        saveInZipAs = saveInZipAs.replace(/\\/g,'/');
                        // Konfigurationsdateien können gesperrt werden
                        try {
                            zw.addEntryFile(saveInZipAs, Ci.nsIZipWriter.COMPRESSION_FASTEST, entry, false);
                        } catch (e) {}
                    }
                }
                zw.close();
                alert('Die aktuelle Konfiguration wurde als:\n'+ archiveName +'\ngesichert in:\n' + path);
    
                function alert(aString, aTitle) {
                    Cc['@mozilla.org/alerts-service;1'].getService(Ci.nsIAlertsService).showAlertNotification("", aTitle, aString, false, "", null);
                }
    
                function bupgetCurrentProfileName(){
                    function readFile(aFile){
                        var stream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream);    stream.init(aFile, 0x01, 0, 0);
                        var cvstream = Cc["@mozilla.org/intl/converter-input-stream;1"].createInstance(Ci.nsIConverterInputStream);
                        cvstream.init(stream, "UTF-8", 1024, Ci.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER);
                        var content = "", data = {};
                        while (cvstream.readString(4096, data)) {
                            content += data.value;
                        }
                        cvstream.close();
                        return content.replace(/\r\n?/g, "\n");
                    }
                    var PrefD = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("PrefD", Components.interfaces.nsIFile);
                    var ini = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("AppRegD", Components.interfaces.nsIFile);
    
                    ini.append("profiles.ini");
                    var ini = readFile(ini);
                    var profiles = ini.match(/Name=.+/g);
                    var profilesD = ini.match(/Path=.+/g);
                    for ( var i = 0; i < profiles.length;i++) {
                    if ((profilesD[i]+"$").indexOf(PrefD.leafName+"$") >= 0) {
                        profiles[i].match(/Name=(.+)$/);
                        return RegExp.$1;
                        }
                    }
                    return null;
                }
            },
        });
    
        var cssStr = '@-moz-document url("chrome://browser/content/browser.xhtml"){'
             + '#Backup-button .toolbarbutton-icon {'
             + 'list-style-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1%2B%2FAAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNC8xMS8wOGGVBZQAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzQGstOgAAABxklEQVQ4ja2UMUgbURjHfxeSFBzuBEuCkkAgIA5JDdzWohVnQe3UpRDE2UXpKKXdWro4ixlcdNJAydxiyHZkCIKIOEnLpZQSRFFz%2Bjqk73nvuDtb2j883nv%2F73u%2F%2B%2B69ewf%2FWUZgbgEFYDgiPw18B86An8DtQw%2BYdF1XRLVGoyGEEKJara4Bj0MKIhGYDxuGQVSTqtVqH0ql0uzvNzLigCQSicjmeZ7K63Q6u5VKZRoYigXGVWhZlpbbbrfrwKjfS4ZVGKVCoUCz2aTX65FOp6WdA04igf69CsqyLMrlctAWsRXGAf9EavXyFELEZT4A2TwYsLQKF%2BYXAJhb3VPep4%2BLzK3uqd7vS9Xr%2B2qsAW9u4eyoxcZSFoCVLZfTwxaA6v2xjaUsuYmnWrU60IOr%2FmD8etvl%2Fausikl%2FZcsFULEbD02hwPUdl7cvs1qiBAb9eOCdwdjEM2AABdh88wJA%2BbK%2FX6MDtVPmHyRPOfjRPfc87%2FPfgJLJ5AzwRc0BbNseB8a63e6TuKsXpnw%2BP5nJZAzgq%2BM4x3IPzwFM07woFovv%2Bv3%2BUDTiXqlU6tI0zQs%2FI%2FSe2bYt%2FyCPgJFA%2BAdwDeA4zrfg2l%2BwUqCoC1F3YQAAAABJRU5ErkJggg%3D%3D)'
             + '}}';
        var sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
        var ios = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService);
        sss.loadAndRegisterSheet(ios.newURI("data:text/css;base64," + btoa(cssStr), null, null), sss.USER_SHEET);
    })();
    Alles anzeigen

    Bei klick auf das Icon wird der Vorgang nicht angestoßen... bei Euch?

  • Offenbar funktionieren alle Benutzerskripte nicht mehr im Nightly

    • Boersenfeger
    • 26. Juni 2023 um 11:02

    Speravir: Danke für den Link, ich hab gleich mal 3 andere Scripte auf den neuesten Stand gebracht... :)

  • µBlock Origin Ad-Blocker -Diskussionsthread

    • Boersenfeger
    • 26. Juni 2023 um 10:42

    .DeJaVu und Mitlesende:

    Er hat sich gemeldet.

    No UpDate since 4 Days in uBlockOrigin 1.50.1b* · Issue #78 · Kees1958/W3C_annual_most_used_survey_blocklist
    Hello, for about 4 days the list in uBlockOrigin 1.50.1b* is no longer updated. Is it possible to fix this? Thanks a lot Bo
    github.com

    Es gibt eine Neue Version :)

  • Fehlender Lesezeichenordner

    • Boersenfeger
    • 20. Juni 2023 um 18:39

    Ich sichere regelmäßig nur meine privaten Dateien. Da kann man sicher die Hände über dem Kopf zusammenschlagen, aber wenn dieser Rechner (Win 10) die Grätsche macht, ist eh ein neuer fällig, der dann Windows 11 beinhaltet.

  • µBlock Origin Ad-Blocker -Diskussionsthread

    • Boersenfeger
    • 20. Juni 2023 um 17:45

    Danke! .. ich nutze ziemlich die gleichen. ;)

    Ich werde noch ein paar Tage zuwarten und sie dann ggf. ebenfalls deinstallieren.

  • Fehlender Lesezeichenordner

    • Boersenfeger
    • 20. Juni 2023 um 17:43
    Zitat von .DeJaVu

    Kannst du für Mozbackup ganz dick unterstreichen. Dieses Programm arbeitet seit über 8 Jahren fehlerhaft, weil sich Firefox in der Zeit reichlich geändert. Daher sind alle Backups damit praktisch wertlos.

    .. wenn ich da korrigieren darf... Die mangelhafte Wiederherstellung war einer der Gründe, warum Pavel die Weiterentwicklung eingestellt hat. Er hat schlicht den Fehler nicht gefunden und wollte keine weitere Zeit investieren. Im übrigen war MozBackUp nur bis Windows 7 getestet und freigegeben.

  • µBlock Origin Ad-Blocker -Diskussionsthread

    • Boersenfeger
    • 20. Juni 2023 um 14:43

    Moin, diese Liste hat sich seit einigen Tagen nicht aktualisiert

    Den Entwickler habe ich angeschrieben.

    No UpDate since 4 Days in uBlockOrigin 1.50.1b* · Issue #78 · Kees1958/W3C_annual_most_used_survey_blocklist
    Hello, for about 4 days the list in uBlockOrigin 1.50.1b* is no longer updated. Is it possible to fix this? Thanks a lot Bo
    github.com

    Bislang noch keine Reaktion, macht auch nix, war erst gestern.

    Ich wollte auch nur wissen, ob jemand diese Liste nutzt und meine Feststellung bestätigen kann oder nicht.

    Danke für eure Meinungen.... :)

  • Fehlender Lesezeichenordner

    • Boersenfeger
    • 20. Juni 2023 um 14:30

    Nee, warste nicht... :D Er nutzte das Programm MozBackUp nur für BackUps, nicht Windows 7...

  • Fehlerhafte Grafikdarstellung bei bestimmten Websites

    • Boersenfeger
    • 19. Juni 2023 um 18:26

    .. dann mag die Sicherheitssoftware vielleicht das Windowsbenutzerkonto "zerschossen" haben.

  • Webcam für Briefkasten

    • Boersenfeger
    • 19. Juni 2023 um 18:23
    Zitat von Glanni

    Ich filme niemanden... die Kamera wird im Briefkasten installiert sein und kann niemanden filmen...

    .. wozu möchtest du sie dann dort installieren?

  • Webcam für Briefkasten

    • Boersenfeger
    • 19. Juni 2023 um 17:40

    // Du möchtest also aus deinem Briefkasten heraus die Umgebung überwachen? Ganz dünnes Eis... ggf. sogar mit Strafe bewährt..

    Etwas Lektüre: https://www.datenschutz-praxis.de/verarbeitungst…nter-der-dsgvo/

  • Fehlerhafte Grafikdarstellung bei bestimmten Websites

    • Boersenfeger
    • 19. Juni 2023 um 17:37
    Zitat von Woodman45

    Bitdefender hat sich seit 2015 (Aus dem Jahr stammt das Video) wohl auch weiter entwickelt.


    ...bleibt aber trotzdem überflüssig, ja, sogar gefährlich....

Unterstütze uns!

Jährlich (2025)

94,2 %

94,2% (612,48 von 650 EUR)

Jetzt spenden
  1. Kontakt
  2. Datenschutz
  3. Impressum
Community-Software: WoltLab Suite™
Mastodon