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. Endor

Beiträge von Endor

  • Vorschlag: Angepinnter Thread zu UserChrome.css und UserContent.css

    • Endor
    • 3. Oktober 2017 um 14:52

    Ja das mit den Codes Stimmt schon, sind großen teils identisch mit Codes für Stylish.
    Bedienungsanleitung könnte uns halt eventuell etwas Arbeit ersparen.
    Bräuchte natürlich auch ein paar Bilder dazu, usw.
    Mal sehen.
    Mfg.
    Endor

  • Vorschlag: Angepinnter Thread zu UserChrome.css und UserContent.css

    • Endor
    • 3. Oktober 2017 um 14:41

    Ich schließe mich der Meinung von milupo an.
    Wenigstens einen angepinnten Thread für userChrome.css Codes,
    bzw. einer Bedienungsanleitung als ersten Beitrag eventuell mit
    einem Inhaltsverzeichnis der Codes. Dann sehen wir weiter was daraus wird.
    Mfg.
    Endor

  • Wechsel von "Stylish" zu "Stylus"

    • Endor
    • 3. Oktober 2017 um 12:49

    Leider habe ich bis jetzt keine Möglichkeit gefunden wie man das Panel breiter kriegt.
    Bin überfragt....
    :shock:
    Mfg.
    Endor

  • Wechsel von "Stylish" zu "Stylus"

    • Endor
    • 3. Oktober 2017 um 09:09

    ja ist hier genau so.
    Habe noch keine Möglichkeit gefunden das Panel mehrspaltig darzustellen.
    Vielleicht hat Andreas eine Idee.
    Mfg.
    Endor

  • Wechsel von "Stylish" zu "Stylus"

    • Endor
    • 3. Oktober 2017 um 08:51

    Hallo Road-Runner.
    Bitte mal testen ist aber noch nicht perfekt:

    CSS
    @namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);
    @-moz-document url(chrome://browser/content/browser.xul) {
    #BMB_bookmarksPopup .scrollbox-innerbox,
    #bookmarksMenu menupopup .scrollbox-innerbox
    {
      /* Main menu and Bookmark folders */
      display: block !important;
      -moz-column-count: 3;
      -moz-column-width: 330px;
      -moz-column-rule: 1px solid #ccc;
      padding-top: 4px;
      padding-bottom: 4px;
    }
    #BMB_bookmarksPopup .bookmark-item[container="true"] menupopup .scrollbox-innerbox,
    #bookmarksMenuPopup .bookmark-item[container="true"] menupopup .scrollbox-innerbox
    {
      /* Bookmark folders only -- overrides previous */
      -moz-column-count: 2;
      -moz-column-width: 300px;
    }
    
    
    #BMB_bookmarksPopup menu, #BMB_bookmarksPopup menuitem, #BMB_bookmarksPopup menuseparator,
    #bookmarksMenuPopup menu, #bookmarksMenuPopup menuitem, #bookmarksMenuPopup menuseparator
    {
      width: 100% !important;
    }
    
    
    #BMB_bookmarksPopup menupopup,
    #bookmarksMenu menupopup
    {
     /* for Nautipolis theme */
      max-width: 1020px !important;
    }
    /* Remove scrolling triangles */
    #BMB_bookmarksPopup .autorepeatbutton-up, #BMB_bookmarksPopup .arrowscrollbox-overflow-start-indicator,
    #bookmarksMenuPopup .autorepeatbutton-up, #bookmarksMenuPopup .arrowscrollbox-overflow-start-indicator, 
    #BMB_bookmarksPopup .arrowscrollbox-overflow-end-indicator, #BMB_bookmarksPopup .autorepeatbutton-down,
    #bookmarksMenuPopup .arrowscrollbox-overflow-end-indicator, #bookmarksMenuPopup .autorepeatbutton-down
    {
      display: none !important;
    }
    }
    Alles anzeigen

    Mfg.
    Endor

  • Wechsel von "Stylish" zu "Stylus"

    • Endor
    • 3. Oktober 2017 um 08:21

    Freut mich wenn es Dir weiterhilft.
    Man kann mit dem selben System auch Codes zum Ändern von Seiteninhalt verwenden.
    Nur die müssen in die Datei, oder über die Datei userContent.css geladen werden.
    Das nur zur Info.
    Wenn Du Hilfe brauchst melde Dich einfach.
    Mfg.
    Endor

  • Wechsel von "Stylish" zu "Stylus"

    • Endor
    • 3. Oktober 2017 um 08:07

    Ja genau diesen.
    Ich habe ihn nur leicht geändert:

    CSS
    @namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);
    @-moz-document url(chrome://browser/content/browser.xul) {
    #bookmarksMenu menupopup .scrollbox-innerbox
    {
      /* Main menu and Bookmark folders */
      display: block !important;
      -moz-column-count: 3;
      -moz-column-width: 330px;
      -moz-column-rule: 1px solid #ccc;
      padding-top: 4px;
      padding-bottom: 4px;
    }
    
    
    #bookmarksMenuPopup .bookmark-item[container="true"] menupopup .scrollbox-innerbox
    {
      /* Bookmark folders only -- overrides previous */
      -moz-column-count: 2;
      -moz-column-width: 300px;
    }
    
    
    #bookmarksMenuPopup menu, #bookmarksMenuPopup menuitem, #bookmarksMenuPopup menuseparator
    {
      width: 100% !important;
    }
    
    
    #bookmarksMenu menupopup
    {
     /* for Nautipolis theme */
      max-width: 1020px !important;
    }
    /* Remove scrolling triangles */
    #bookmarksMenuPopup .autorepeatbutton-up, #bookmarksMenuPopup .arrowscrollbox-overflow-start-indicator, 
    #bookmarksMenuPopup .arrowscrollbox-overflow-end-indicator, #bookmarksMenuPopup .autorepeatbutton-down
    {
      display: none !important;
    }
    }
    Alles anzeigen

    Du kannst diesen wie gesagt im Profilordner im UnterOrdner chrome als userChrome.css Datei abspeichern.
    Da ich verschiedene Codes verwende, habe ich zur besseren Organisation im chrome Orner noch einen Unterordner CSS
    angelegt, dort werden die Codes Dateien mit entsprechender Bezeichnung abgelegt.
    In der userChrome.css Datei kommt dann nur das rein:

    Code
    @import "../chrome/css/Lesezeichen-Mehrspaltig.css";
    @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");

    Mfg.
    Endor

  • Wechsel von "Stylish" zu "Stylus"

    • Endor
    • 3. Oktober 2017 um 07:50

    Nö, finde ich mittlerweile nicht mehr.
    Ja es ist anders, manches komplizierter aber machbar ist vieles.
    Habe mir meinen 58er Nightly mittlerweile recht passend zusammen gebaut.

    Dein CSS Code oben funktioniert auch im 58er einwandfrei.
    Wie gesagt eht halt jetzt nur noch mit userChrome.css Datei.
    Mfg.
    Endor

  • Wechsel von "Stylish" zu "Stylus"

    • Endor
    • 3. Oktober 2017 um 07:37

    Es steht übrigens genau genau geschrieben, dass man damit die Firefox Oberfläche nicht ändern kann.

    Zitat von AMO

    Leider können wegen der Sicherheitsbestimmungen der WebExtensions Plattform keine
    browserinternen Seiten oder der Browser selbst gestaltet werden.


    Quelle: https://addons.mozilla.org/de/firefox/addon/styl-us/

    Erweiterungen dürfen nur noch Seiteninhalt verändern.
    Also nutzt dir dafür diese Erweiterung nichts.
    Denn das geht nur noch über die userChrome.css Datei die muss, sofern nicht vorhanden,
    in einen neu zu erstellenden Ordner mit der Bezeichnung chrome in den Profilordner.
    Mfg.
    Endor

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

    • Endor
    • 2. Oktober 2017 um 13:06

    Hallo universum123.
    Eine Schaltfläche alleine kannst Du da nicht verschieben.
    Du hast ja mit dem Script drei Schaltflächen, die werden dann alle zusammen verschoben.
    Oder hast Du bei Dir im Script nur den Thunderbird drinnen und sonst nichts?
    Wenn dann müsstest Du uns schon Deine angepasste Version vom Script hier
    einstellen.
    Mfg.
    Endor

  • Ereignis ID 10016

    • Endor
    • 2. Oktober 2017 um 07:55

    Lies mal das, vielleicht hilft es Dir ja:
    https://support.microsoft.com/de-de/help/402…ows-server-2016

    Mfg.
    Endor

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

    • Endor
    • 2. Oktober 2017 um 06:36

    Hallo aborix.
    Vielen Dank.
    Ist oben jetzt geändert.
    Mfg.
    Endor

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

    • Endor
    • 1. Oktober 2017 um 12:19

    Müsste jetzt auch mit dem Script passen. Hoffe ich wenigstens.
    Habe unten einen Absatz eingefügt:

    CSS
    (function() {
      if (location != 'chrome://browser/content/browser.xul')
        return;
    
    
      function getCurrentProfileName(){
        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;
      };
    
      try {  
        CustomizableUI.createWidget({
          id: 'profile-name',
          type: 'custom',
          defaultArea: CustomizableUI.AREA_MENUBAR,
          onBuild: function(aDocument) {
            var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbaritem');
            toolbaritem.id = 'profile-name';
            toolbaritem.className = 'chromeclass-toolbar-additional';
            toolbaritem.setAttribute('label', 'Profil-Name');
            var label = document.createElement('label');
            label.setAttribute('value', getCurrentProfileName());
            toolbaritem.appendChild(label);
            return toolbaritem;
          }
        });
      } catch(e) { return };
    
      var css = '\
    		@-moz-document url("chrome://browser/content/browser.xul") { \
    			#profile-name {margin-top: 3px; margin-bottom: -2px !important; font-weight: bold; font-size: 14px;\
    			} \
    		}';
    	var cssUri = Services.io.newURI('data:text/css,' + encodeURIComponent(css), null, null);
    	var SSS = Cc['@mozilla.org/content/style-sheet-service;1'].getService(Ci.nsIStyleSheetService);
    	SSS.loadAndRegisterSheet(cssUri, SSS.AUTHOR_SHEET);
    
    })();
    Alles anzeigen

    Werte dann noch nach Wunsch anpassen.
    Mfg.
    Endor

  • uBlock Origin Ad-Blocker - Versionsinfo

    • Endor
    • 1. Oktober 2017 um 08:23

    Die neue Beta Version uBlock Origin 1.14.11rc9 ist erschienen!

    Die neuesten Versionen und Informationen gibt es immer hier:
    https://github.com/gorhill/uBlock/releases

    Direktdownload vom Entwickler

    Direktdownload von AMO

    [b]Diskussionen und Fragen zu ublock Origin bitte nur im
    uBlock Origin Ad-Blocker - Diskussionsthread posten.

    Vielen Dank! :P

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

    • Endor
    • 30. September 2017 um 17:07

    Leider nein.
    Die Adressleiste kann im Moment nicht mehr angesprochen werden.
    Keine Ahnung ob sich das nochmal ändern wird.

    Edit:
    Geht anscheinend doch:
    Teste mal dieses Script:

    Code
    //   Feed Button 0.1
    
    
        (function () {
    
    
           if (location != 'chrome://browser/content/browser.xul') return;
    
    
           const buttonId = 'jprss-button';
           const buttonLabel = 'RSS Button für Adressleiste';
           const buttonTooltiptext = 'RSS Button für Adressleiste';
           const buttonIcon = 'url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAhNJREFUeNqkk9%2BLjGEUxz%2FPM%2B80Q1rmiqstm0K7dlOSRjbFBSGsK1ruiMTFti6sP0AoN4rcSO2FCyWxS42EMrhZrB9xMS0mwtXKMjtr5n1f53nPzPtOflzI6T095%2Bn9nu%2F5nvM8jwnDkImBnmLg%2B3lCH2SvZuQzupIsGhusTX3pOD2e89w%2B8Ov5Res2wsy02yjIWnGvxW2DRQpYQ6lwfZ6DRQRRUq4d1hxOqlQmoXQPXo7A24eQngUpgYcBrN6na0zgVAc1uHxA4jpk26BzK3RvU58sw%2FAuLeTU1GfiVr1mT4Q%2F4N19AQXK%2BPqGxuuPwYo9sFf2F7aAL7hgOh5KoqBegcHnSQsfJX5wFu6egM8vYNNJ6B%2BGi9sFW41hXjJhkTc6ID%2BlwuINsGQz7DgnBMdh%2FBI86Ybl%2FbBwlUArMYGNz8j1%2FuERvJeB3RqC83np%2FQ2sPQodvVA8pdCenVLke0N2TNBooVPkHRyDQ89gqSi4slv%2FrdwvWtNQLsKCZaKg2sxvELiJBt%2FkeI4kM%2BgdUmDpJszvEgLpdqIAmbmCr%2F6phRq%2FWSYjd%2BC2xmlPVarcXwjcMXriY2eSZBdn5wjJ7AZZVj3KEsXGtpyCTclPCT%2FdgWsFBaWk5za5rVOvYKRP4hx8lXi0T4ltC0EtNOXS1cft0cVpPiZj%2BKvJWwitnYpg7jUaY7qcSP7NfMl9GhH8j%2F0UYAByQLfCOoz1CQAAAABJRU5ErkJggg%3D%3D)';       
    
           var jprssIcon = {               
              init: function() {
                 var appcontent = document.getElementById("appcontent");
                 appcontent.addEventListener("pageshow", jprssIcon.onPageLoad, true);       
                 var container = gBrowser.tabContainer;
                 container.addEventListener("TabSelect", jprssIcon.onPageLoad, false);
              },     
              onPageLoad: function(aEvent) {
                 var feedButton = document.getElementById("jprss-button");
                 var feeds = gBrowser.selectedBrowser.feeds;       
                 feedButton.removeAttribute("feed");       
                 if (feeds && feeds.length > 0) {
                    feedButton.style.opacity = '1';
                    if (feeds.length == 1) {
                       feedButton.setAttribute("feed", feeds[0].href);
                    }
                 } else {
                    feedButton.style.opacity = '0.5';
                 }
              },
              onFeedButtonClick: function(event) {
                 event.stopPropagation();       
                 if (event.target.hasAttribute("feed") &&
                    event.eventPhase == Event.AT_TARGET &&
                    (event.button == 0 || event.button == 1)) {
                       FeedHandler.subscribeToFeed(null, event);
                 }
              }         
           };             
    
           var button = document.createElement('toolbarbutton');
           button.id = buttonId;
           button.setAttribute('class', 'toolbarbutton-1 chromeclass-toolbar-additional');
           button.setAttribute('type', 'menu');
           button.setAttribute('label', buttonLabel);
           button.setAttribute('tooltiptext', buttonTooltiptext);       
           button.style.listStyleImage = buttonIcon;   
           button.style.opacity = '0.5';
           button.addEventListener('click', function(event) {
              return jprssIcon.onFeedButtonClick(event)
           });
    
           var menupopup = document.createElement('menupopup');          
           menupopup.id = 'jprss-menu';          
           menupopup.setAttribute('onpopupshowing', 'return FeedHandler.buildFeedList(this)');    
           menupopup.setAttribute('oncommand', 'return FeedHandler.subscribeToFeed(null, event)'); 
           menupopup.setAttribute('onclick', 'checkForMiddleClick(this, event)');
    
           button.appendChild(menupopup);
    
           document.getElementById('page-action-buttons').insertBefore(button, document.getElementById('.autocomplete-history-dropmarker.urlbar-history-dropmarker'));   
    
    
           var toolbars = document.getElementsByTagName('toolbar');
           for (var i=0; i<toolbars.length; i++) {          
              var currentset = toolbars[i].getAttribute('currentset');      
              if (currentset.split(',').indexOf(button.id) >= 0) {      
                 var j;
                 if (i == 0) j = 1
                 else j = 0;         
                 toolbars[j].currentSet += ',' + button.id;         
                 toolbars[i].currentSet = currentset;   
              };      
           };
    
           var dropmarker = document.getAnonymousElementByAttribute(button, 'class', 'toolbarbutton-menu-dropmarker');
           if (dropmarker)
              dropmarker.style.display = 'none';
    
           window.addEventListener('DOMContentLoaded', function() {
              jprssIcon.init();
           }, false);   
    
        }) ();
    Alles anzeigen

    Edit2
    Hier das von Dir verwendete Script:

    CSS
    //   Feed Button  0.5
    
        (function () {
    
    
           if (location != 'chrome://browser/content/browser.xul') return;
    
           const buttonLabel = 'RSS Button für Adressleiste';
           const buttonTooltiptext = 'RSS Button für Adressleiste';
           const buttonIcon = 'url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAhNJREFUeNqkk9%2BLjGEUxz%2FPM%2B80Q1rmiqstm0K7dlOSRjbFBSGsK1ruiMTFti6sP0AoN4rcSO2FCyWxS42EMrhZrB9xMS0mwtXKMjtr5n1f53nPzPtOflzI6T095%2Bn9nu%2F5nvM8jwnDkImBnmLg%2B3lCH2SvZuQzupIsGhusTX3pOD2e89w%2B8Ov5Res2wsy02yjIWnGvxW2DRQpYQ6lwfZ6DRQRRUq4d1hxOqlQmoXQPXo7A24eQngUpgYcBrN6na0zgVAc1uHxA4jpk26BzK3RvU58sw%2FAuLeTU1GfiVr1mT4Q%2F4N19AQXK%2BPqGxuuPwYo9sFf2F7aAL7hgOh5KoqBegcHnSQsfJX5wFu6egM8vYNNJ6B%2BGi9sFW41hXjJhkTc6ID%2BlwuINsGQz7DgnBMdh%2FBI86Ybl%2FbBwlUArMYGNz8j1%2FuERvJeB3RqC83np%2FQ2sPQodvVA8pdCenVLke0N2TNBooVPkHRyDQ89gqSi4slv%2FrdwvWtNQLsKCZaKg2sxvELiJBt%2FkeI4kM%2BgdUmDpJszvEgLpdqIAmbmCr%2F6phRq%2FWSYjd%2BC2xmlPVarcXwjcMXriY2eSZBdn5wjJ7AZZVj3KEsXGtpyCTclPCT%2FdgWsFBaWk5za5rVOvYKRP4hx8lXi0T4ltC0EtNOXS1cft0cVpPiZj%2BKvJWwitnYpg7jUaY7qcSP7NfMl9GhH8j%2F0UYAByQLfCOoz1CQAAAABJRU5ErkJggg%3D%3D)';   
    
           var feedButton = document.getElementById('feed-button');
           if (!feedButton) {
             window.CustomizableUI.addWidgetToArea('feed-button','nav-bar');
             feedButton = document.getElementById('feed-button');
           };
           feedButton.setAttribute('label', buttonLabel);
           feedButton.setAttribute('tooltiptext', buttonTooltiptext);
           feedButton.style.listStyleImage = buttonIcon;
           feedButton.style.MozImageRegion = 'rect(0px 24px 24px 0px)';
    
    
           var urlbarIcons = document.getElementById('page-action-buttons');
           urlbarIcons.appendChild(feedButton);      
    
           var css = '#feed-button .toolbarbutton-icon {padding: 0px !important; margin-bottom: -2px!important;} #feed-button {margin-top: 3px !important; margin-bottom: -4px !important;} #feed-button[disabled]{display: none !important;}';
           var stylesheet = document.createProcessingInstruction('xml-stylesheet', 'type="text/css" href="data:text/css;utf-8,' + encodeURIComponent(css) + '"');
           document.insertBefore(stylesheet, document.documentElement);   
    
        }) ();
    Alles anzeigen

    Müsste so nun auch wieder funktionieren.
    Mfg.
    Endor
    Mfg.
    Endor

  • FF 57.0 Ersatz für TabMixPlus

    • Endor
    • 30. September 2017 um 14:59

    Für Linux wird das wohl nichts. Das geht soweit mir bekannt nur für Windows.
    Mfg.
    Endor

  • FF 57.0 Ersatz für TabMixPlus

    • Endor
    • 30. September 2017 um 14:02

    Ein Userchrome Script könnte ich dir dafür empfehlen.
    Man muss etwas fummeln aber dann könnte es recht interessant werden.
    Siehe hier wie man damit umgeht:
    https://github.com/Endor8/userChr…ster/userChrome
    und hier das Script:
    https://github.com/ardiman/userCh…/tabwheelscroll
    Mfg.
    Endor

  • Abschied

    • Endor
    • 30. September 2017 um 13:55

    Hallo BarbaraZ-.
    Ich war anfänglich auch Deiner Meinung was Firefox 57 betrifft.
    Aber mittlerweile hat sich das geändert. CTR brauche ich zum Beispiel überhaupt nicht mehr.
    Man kann sehr vieles über CSS Codes und userChrome Scripte anpassen.
    Damit lässt es sich auch mit Firefox 57 leben. Ja es ist am Anfang etwas umständlicher
    bis man wieder alles ungefähr so hat wie man es gewohnt ist, aber dann sieht man auch die
    Vorteile der neuen Version. Also überlege es Dir nochmal gründlich in Ruhe.
    Wir sind alle da, wenn Du Hilfe brauchst. Nur keine Angst.
    Ich würde es sehr bedauern wenn Du nicht mehr hier wärst.
    Mfg.
    Endor

  • Aufklappendes Fenster in englisch

    • Endor
    • 30. September 2017 um 13:49

    Das stammt doch aus der aktuellen Nightly.
    Da muss man damit leben, dass einiges eben noch nicht auf Deutsch übersetzt ist.
    Das ist da eben so.
    Du kannst Dir ja das deutsche Sprachpaket runter laden entpacken und den entsprechenden
    Eintrag selber übersetzen. Leider musst Du das dann bei jedem täglichen Update neu machen.
    Habe ich tatsächlich früher mal gemacht. Irgendwann war ich es dann Leid und habe es
    so verwendet wie es eben ist.
    Mfg.
    Endor

  • Firefox 52.0.2 datareporting

    • Endor
    • 29. September 2017 um 18:48

    Danke, das wünsche ich dir auch :D
    Mfg.
    Endor

Unterstütze uns!

Jährlich (2026)

72,4 %

72,4% (560,79 von 775 EUR)

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