User:Jeff G./monobook/VirtualReferences.js

/*================================================================================================= Benutzer:ParaDox/monobook/VirtualReferences.js V0.31 19. März 2008 (V0.31b 19. Juni 2008) http://de.wikipedia.org/w/index.php?title=Benutzer:ParaDox/monobook/VirtualReferences.js Bisher mit folgenden Browsern getestet: Firefox 2.0.0.14 Opera 9.27 Ab V0.30 ist der "Microsoft Internet Explorer" nicht mehr vorgesehen. Für mehr Info siehe Diskussionsseite: http://de.wikipedia.org/w/index.php?title=Benutzer_Diskussion:ParaDox/monobook/VirtualReferences.js By Benutzer:ParaDox http://de.wikipedia.org/wiki/Benutzer:ParaDox --- Nur die folgenden 4 Zeilen in die eigene „monobook.js“ einfügen: // Benutzer:ParaDox/monobook/VirtualReferences.js document.write('<\/SCRIPT>');

=
====================================================================================*/

$(function {

function addEvent(obj, eventName, functionName, useCaption) { var retVal; if ( obj.addEventListener ) { obj.addEventListener(eventName, functionName, useCaption); return true; } else { return false; }   }    function VRef_click(event) { // ggf. id="VirtualReferences" vor preview-upload an Quelltext anhängen VRefLower = VRefTextBox.value.toLowerCase; VRefPos1 = VRefLower.indexOf(' '); VRefPos2 = VRefLower.indexOf('= 0) || (VRefPos2 >= 0) ) { if ( ( VRefLower.indexOf(' ') < 0 )              && ( VRefLower.indexOf(' ') < 0 )               ) {               VRefTextBox.value += VRef_VirtDiv; }       }    }    if ( document.getElementById('wpTextbox1') ) {

var VRefArr, VRef_temp, VRef_FoundStr, i, VRef_neuDIV; var VRefTextBox, VRefLower, VRefOL; var VRefPos1, VRefPos2; var newLineLength    = 1;      // norm='\n', aber bspw. MSIE='\r\n' var VRefQuellTextOpt = true;   // default für id="FoundReferences" zeigen var VRef_OL_inPreview = false; //  vorhanden? ////       // Virtual Vorschau var VRef_VirtDiv = '\n\n' + '\n' + 'Virtual  ' + ':\n \n'; ////       ////        // Einzelnachweis-DefinitionsVorschau var VRef_FoundDiv1 = '\n' + '' + 'References - ' + '' + 'Preview:' ;       var VRef_FoundDiv2 = ' \n'; ////

////       // init //       VRefTextBox = document.getElementById('wpTextbox1'); if ( !addEvent(document.getElementById('wpPreview'), 'click', VRef_click, false) ) { alert('"VirtualReferences.js" konnte nicht initialisiert werden!'); return false; }       //  vorhanden? VRefOL = document.getElementsByTagName('OL'); for ( i=0; i= 0) && (VRefPos2 == -1) ) { if ( VRefTextBox.value.indexOf('\r\n') >= 0 ) { newLineLength = 2; } else if ( VRefTextBox.value.indexOf('\n\r') >= 0 ) { newLineLength = 2; }           VRefTextBox.value = VRefTextBox.value.substr(0, VRefPos1 - newLineLength ); if ( document.getElementById('VirtualReferences') ) { VRefOL = document.getElementById('VirtualReferences').getElementsByTagName('OL'); VRefQuellTextOpt = false; if ( VRefOL.length < 1 ) { // id='VirtualReferences' ist quasi leer (evtl. wegen "ungültiger"-refs?) document.getElementById('VirtualReferences').style.display = 'none'; } else { if ( VRefOL[0].className == 'references' ) { document.getElementById('VirtualReferences').style.backgroundColor = '#EEFFEE' }               }            }        }        ////

////       // ggf. Einzelnachweis-DefinitionsVorschau if ( document.location.href.indexOf('Benutzer:ParaDox/monobook/VirtualReferences.js') < 0 ) { VRefArr = VRefTextBox.value.match(//gi); if ( VRefArr && VRefQuellTextOpt && !VRef_OL_inPreview ) { VRef_FoundStr = '' for ( i=0; i/g, '&gt;'); VRef_FoundStr += '<li><tt>' + ('00' + String(i+1)).substr(-2) + '</tt>: ' + VRef_temp + '</li>\n'; }               VRef_neuDIV = document.createElement('div'); if ( document.getElementById('toolbar') ) { document.getElementById('bodyContent').insertBefore(VRef_neuDIV, document.getElementById('toolbar')); } else { document.getElementById('editform').insertBefore(VRef_neuDIV, document.getElementById('wpTextbox1')); }               VRef_neuDIV.id = 'VRef_neuDIV'; document.getElementById('VRef_neuDIV').innerHTML = VRef_FoundDiv1 + VRef_FoundStr + '</ul>\n' + VRef_FoundDiv2; }       }        ////    } });