Ergebnis 1 bis 3 von 3

Thema: Greasemonkey-Script bearbeiten

  1. #1
    2nd Runner
    Gast

    Greasemonkey-Script bearbeiten


    Greasemonkey ist ein FireFox Addon auf das man zahlreiche kleine Website-Verbesserungen downloaden / selbst erstellen kann.
    Ich hatte mir eben das Greasemoney-Script "CivForum exteded" (HIER) runtergeladen.
    Damit kann man zb Anhänge mit nur einem Klick einfügen, allerdings nur als att2.
    Was müsste man an dieser dazugehörigen Datei ändern, um die Bilder direkt mit att einfügen zu können?

    Achtung Spoiler:
    PHP-Code:
    // ==UserScript==
    // @name           CivForum.de Extended
    // @autor          Masqurin
    // @namespace      http://www.civforum.de/member.php?u=13778
    // @date           2009-10-30
    // @version        v1.02
    // @source         http://userscripts.org/scripts/show/58026
    // @description    Erweitert die Moeglichkeiten des CivForum.de
    // @include        http://*civforum.de/showthread.php*
    // @include        http://*civforum.de/forumdisplay.php*
    // @include        http://*civforum.de/newreply.php*
    // @include        http://*civforum.de/newthread.php*
    // @include        http://*civforum.de/editpost.php*
    // ==/UserScript==

    if(document.URL.indexOf("showthread") != -1)
    {
        
    BottomNavigation(1);
    }
    else if(
    document.URL.indexOf("forumdisplay") != -1)
    {
        
    BottomNavigation(2);
    }
    else if(
    document.URL.indexOf("newthread") != -|| document.URL.indexOf("newreply") != -|| document.URL.indexOf("editpost"))
    {
        
    document.addEventListener("focus", function() { Attachments() }, false);
    }


    function 
    BottomNavigation(option)
    {
        var 
    CivNav document.evaluate("//span[contains(@class, 'navbar')]"documentnullXPathResult.ORDERED_NODE_ITERATOR_TYPEnull);
        var 
    TmpNav CivNav.iterateNext();
        if(!
    TmpNav) { return; }
        var 
    AddNav "\n<!-- CivForum.de Extended Navigation -->\n<br />\n<table class=\"tborder\" cellpadding=\"6\" cellspacing=\"1\" border=\"0\" width=\"100%\" align=\"center\">\n <tr>\n <td class=\"alt1\" colspan=\"2\">\n";
        while(
    TmpNav)
        {
            
    AddNav += "   <span class=\"navbar\">" TmpNav.innerHTML "</span>\n";
            
    TmpNav  CivNav.iterateNext();
        }
        
    AddNav += "  </td>\n </tr>\n</table>\n<!-- / CivForum.de Extended Navigation -->\n";
        if(
    option == 1)
        {
            var 
    Space document.evaluate("//div[contains(@class, 'smallfont')][contains(@align, 'center')]/a[contains(@rel, 'nofollow')]"documentnullXPathResult.ORDERED_NODE_ITERATOR_TYPEnull);
            
    TmpNav    Space.iterateNext();
            if(!
    TmpNav) { return; }
            
    CivNav           TmpNav.parentNode;
            var 
    ExtNav       document.createElement('div');
            
    ExtNav.innerHTML AddNav;
            
    CivNav.appendChild(ExtNav);
        }
        else if(
    option == 2)
        {
            var 
    Space  document.evaluate("//table[contains(@style, 'margin-top')]"documentnullXPathResult.ORDERED_NODE_ITERATOR_TYPEnull);
            
    TmpNav     Space.iterateNext();
            if(!
    TmpNav) { return; }
            
    CivNav           TmpNav.parentNode;
            var 
    ExtNav       document.createElement('div');
            
    ExtNav.innerHTML AddNav;
            
    CivNav.appendChild(ExtNav);
        }
    }

    function 
    Attachments()
    {
        var 
    AttIDCivAtt2CheckTmpAtt2;
        var 
    count   0;
        var 
    CivAtt1 document.evaluate("//div[contains(@id, 'attachlist')]/div/div//a[@href]"documentnullXPathResult.ORDERED_NODE_SNAPSHOT_TYPEnull);
        var 
    TmpAtt1 CivAtt1.snapshotItem(count);
        while(
    TmpAtt1)
        {
            
    CivAtt2 document.evaluate("//div[contains(@id, 'attachlist')]/div/div"documentnullXPathResult.ORDERED_NODE_SNAPSHOT_TYPEnull);
            
    TmpAtt2 CivAtt2.snapshotItem(count);
            
    AttID   TmpAtt1.href;
            if(
    AttID.length 75)
            {
                
    AttID   AttID.substring(51,57);
            }
            else
            {
                
    AttID   AttID.substring(47,53);
            }
            switch(
    count)
            {
                case 
    0: var AttButton0 CreateButton(1AttID);
                        
    AttButton0.addEventListener("click", function() { InsertBBCode(1AttButton0.id) }, false);
                        var 
    AttButton1 CreateButton(2AttID);
                        
    AttButton1.addEventListener("click", function() { InsertBBCode(2AttButton1.id) }, false);
                        break;
                case 
    1: var AttButton2 CreateButton(1AttID);
                        
    AttButton2.addEventListener("click", function() { InsertBBCode(1AttButton2.id) }, false);
                        var 
    AttButton3 CreateButton(2AttID);
                        
    AttButton3.addEventListener("click", function() { InsertBBCode(2AttButton3.id) }, false);
                        break;
                case 
    2: var AttButton4 CreateButton(1AttID);
                        
    AttButton4.addEventListener("click", function() { InsertBBCode(1AttButton4.id) }, false);
                        var 
    AttButton5 CreateButton(2AttID);
                        
    AttButton5.addEventListener("click", function() { InsertBBCode(2AttButton5.id) }, false);
                        break;
                case 
    3: var AttButton6 CreateButton(1AttID);
                        
    AttButton6.addEventListener("click", function() { InsertBBCode(1AttButton6.id) }, false);
                        var 
    AttButton7 CreateButton(2AttID);
                        
    AttButton7.addEventListener("click", function() { InsertBBCode(2AttButton7.id) }, false);
                        break;
                case 
    4: var AttButton8 CreateButton(1AttID);
                        
    AttButton8.addEventListener("click", function() { InsertBBCode(1AttButton8.id) }, false);
                        var 
    AttButton9 CreateButton(2AttID);
                        
    AttButton9.addEventListener("click", function() { InsertBBCode(2AttButton9.id) }, false);
                        break;
            }
            
    Check TmpAtt2.innerHTML;
            if(!
    Check.match("Attachment-ID"))
            {
                
    TmpAtt2.innerHTML TmpAtt2.innerHTML "<span> (Attachment-ID: " AttID ")</span> ";
                switch(
    count)
                {
                    case 
    0TmpAtt2.appendChild(AttButton0);
                            
    TmpAtt2.appendChild(AttButton1);
                            break;
                    case 
    1TmpAtt2.appendChild(AttButton2);
                            
    TmpAtt2.appendChild(AttButton3);
                            break;
                    case 
    2TmpAtt2.appendChild(AttButton4);
                            
    TmpAtt2.appendChild(AttButton5);
                            break;
                    case 
    3TmpAtt2.appendChild(AttButton6);
                            
    TmpAtt2.appendChild(AttButton7);
                            break;
                    case 
    4TmpAtt2.appendChild(AttButton8);
                            
    TmpAtt2.appendChild(AttButton9);
                            break;
                }
            }
            
    count++;
            
    TmpAtt1 CivAtt1.snapshotItem(count);
        }
    }

    function 
    CreateButton(settingAttID)
    {
        var 
    AttButton;
        if(
    setting == 1)
        {
            
    AttButton                  document.createElement("input");
            
    AttButton.id               AttID;
            
    AttButton.type             "Button";
            
    AttButton.value            "Einfügen";
            
    AttButton.title            "Klicken um [ATT2]" AttID "[/ATT2] einzufügen";
            
    AttButton.style.fontWeight "normal";
            
    AttButton.style.fontSize   "11px";
            
    AttButton.style.fontFamily "verdana, geneva, lucida, 'lucida grande', arial, helvetica, sans-serif";
        }
        else if(
    setting == 2)
        {
            
    AttButton                  document.createElement("input");
            
    AttButton.id               AttID;
            
    AttButton.type             "Button";
            
    AttButton.value            "Zentriert";
            
    AttButton.title            "Klicken um [CENTER][ATT2]" AttID "[/ATT2][/CENTER] einzufügen";
            
    AttButton.style.fontWeight "normal";
            
    AttButton.style.fontSize   "11px";
            
    AttButton.style.fontFamily "verdana, geneva, lucida, 'lucida grande', arial, helvetica, sans-serif";
        }
        return 
    AttButton;
    }

    function 
    InsertBBCode(settingAttID)
    {
        var 
    Insert;
        var 
    TextArea document.getElementById("vB_Editor_001_textarea");
        var 
    startPos TextArea.selectionStart;
        var 
    endPos   TextArea.selectionEnd;
        switch(
    setting)
        {
            case 
    1Insert "[ATT2]" AttID "[/ATT2]\n"; break;
            case 
    2Insert "[CENTER][ATT2]" AttID "[/ATT2][/CENTER]\n"; break;
        }
        
    TextArea.value TextArea.value.substring(0startPos) + Insert TextArea.value.substring(endPosTextArea.value.length);



    Ich kenne mich mit sowas überhaupt nicht aus, ist warscheinlich simpel...
    Danke im Vorraus

    MfG

  2. #2
    Beyond Mars Avatar von [VK]
    Registriert seit
    05.02.08
    Beiträge
    59.566
    ganz unten
    {
    case 1: Insert = "Bild\n"; break;
    case 2: Insert = "
    Bild
    \n"; break;
    }

    hier müsste man wohl die 2 entfernen

  3. #3
    2nd Runner
    Gast
    danke funktioniert.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •