User:Voice of All/Google/monobook.js
From Wikipedia, the free encyclopedia
If a message on your talk page led you here, please be wary of who left it. The code below could contain malicious content capable of compromising your account; if your account appears to be compromised, it will be blocked. If you are unsure whether the code is safe, you can ask at the appropriate village pump.
Note: After saving, you have to bypass your browser's cache to see the changes. In Internet Explorer and Firefox, hold down the Ctrl key and click the Refresh or Reload button. Opera users have to clear their caches through Tools→Preferences, see the instructions for Opera. Konqueror and Safari users can just click the Reload button.
//<pre><nowiki> /////////////////////Google search tabs///////////////////// addOnloadHook(googletab) function googletab() { if(document.getElementById('ca-nstab-main')) { if (document.title.indexOf('Editing ') == -1) { if (location.href.search('\\&action=') == -1) { addTab("javascript:googlesrch('regular')", "?", "ca-google", "Google search", ""); } } } } //Google search function googlesrch(type) { var rest = ''; var target = wgTitle; //for disambigged stuff if (target.indexOf("(") !=-1 && target.indexOf(")") !=-1) { rest = target.split(" (")[1].split(")")[0]; target = target.split(" (")[0]; } if (type == 'regular') { srch_window = window.open('http://www.google.com/search?hl=en&lr=&safe=on&q=%22' + escape(target) + '%22+' + escape(rest) + '&btnG=Search', 'Googlesearch' + target, 'status,toolbar,location,menubar,directories,resizeable,scrollbars,fullscreen=yes'); } } ///////////////////// /////////////////////Reference divs///////////////////// addOnloadHook(Ref_navbar_div) function Ref_navbar_div() { var references = false; var ref_div = false; //get references var ols = document.getElementsByTagName('ol'); if (!ols[0]){return;} for (var i=0; i<ols.length; i++) { if (ols[i].className == 'references') {references = ols[i]; break;} } if (!references){return;} var l = references.getElementsByTagName('li'); // Only do this for long lists if (l.length < 15){return;} // Renumber refs for (var i=0; i<l.length; i++) { var num = i+1; l[i].innerHTML = num + '. ' + l[i].innerHTML; } var divs = document.getElementsByTagName('div'); if (!divs[0]){return;} for (var i=0; i<divs.length; i++) { if (divs[i].className == 'references-small') {ref_div = divs[i]; break;} } // Removed any columns, change tag type if (ref_div) { ref_div.innerHTML = '<ul>' + ref_div.getElementsByTagName('ol')[0].innerHTML + '</ul>'; ref_div.setAttribute("style", ""); // Scrollbars ref_div.getElementsByTagName('ul')[0].setAttribute("style", "width:95%; height:400px; overflow: scroll; clear: both;"); } } ///////////////////// ////////////////////////Reference (cite.php) Toggling//////////////////////// addOnloadHook(toggle_refs_add) function toggle_refs_add() { if (document.title.indexOf('Editing ') == 0 && document.title.search('(Image:|Template:| talk:|Category:|Portal:|Wikipedia:|MediaWiki:|Help:|Talk:|User:|View and restore deleted pages)') == -1) {addToolboxLink("javascript:toggle_refs()","Toggle references","toggle-ref");} } function zreplace_refs() { z_auto_ref_countup += 1; var string = '<<REF:' + z_auto_ref_countup + '>>'; return string; } function zreturn_refs(match,number) { if (ref_return_js_cache[number-1] != undefined) {var string = ref_return_js_cache[number-1];} else {alert('Error parsing reference #' + number + '.'); var string = match;} return string; } function toggle_refs() { if (document.editform.wpTextbox1.value.indexOf('<<REF:') == -1 && document.editform.wpTextbox1.value.search(/<[Rr]ef[> ]/) != -1) { txt = document.editform.wpTextbox1.value; ref_return_js_cache = txt.match(/<[Rr]ef[> ].+<\/[Rr]ef>/gm); z_auto_ref_countup = 0; document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(/<[Rr]ef[> ].+<\/[Rr]ef>/gm,zreplace_refs); if (edit_input) {lock_input();} else {unlock_input();} } else if (document.editform.wpTextbox1.value.indexOf('<<REF:') != -1) { if (document.getElementById('wpSummary') == undefined) {unlock_input();} document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(/<<REF:(\d+)>>/gm,zreturn_refs); } else if (document.getElementById('wpSummary')) {lock_input();} else {unlock_input();} } // var input_locked_message='<br><strong>References abbreviated - (PRESS "TOGGLE REFERENCES" AGAIN TO BE ABLE SAVE/PREVIEW THE PAGE)</strong>'; var edit_input=true; function lock_input() { edit_input=false; document.getElementById('contentSub').innerHTML += input_locked_message; var divs = document.getElementById('bodyContent').getElementsByTagName('div'); input_help_js_return_cache = document.getElementById('wpSummaryLabel').innerHTML; document.getElementById('wpSummaryLabel').innerHTML = ''; for (i=0; i <divs.length; i++) { if (divs[i].className == 'editOptions') {input_form_js_return_cache = divs[i].innerHTML; divs[i].innerHTML = '';} } } function unlock_input() { document.getElementById('contentSub').innerHTML = document.getElementById('contentSub').innerHTML.replace(input_locked_message,''); edit_input=true; var page = document.title.replace('Editing ','').replace('Edit Conflict','').replace('Edit conflict','').split(' - ')[0]; var divs = document.getElementById('bodyContent').getElementsByTagName('div'); for (i=0; i <divs.length; i++) { if (divs[i].className == 'editOptions') {divs[i].innerHTML = input_form_js_return_cache;} } document.getElementById('wpSummaryLabel').innerHTML = input_help_js_return_cache; } //////////////////////// //</nowiki></pre>

