User:Ais523/stubtagtab2.js
From OpenWetWare
Jump to navigationJump to search
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
// Stub tag tab. Original version by [[User:ais523]], on a request by [[User:thesublime514]]. // Enhancements made on requests by [[User:Alai]] and [[User:jj137]]. // ([[User:ais523/stubtagtab2.js]]) // <source lang="javascript"> addOnloadHook(function(){ if(wgNamespaceNumber==0&&wgAction=="view") { if(document.getElementById("ca-edit")) addPortletLink('p-cactions', 'javascript:stubtagtab()', 'stub', 'ca-stubtag', 'Add a stub tag to this page', ''); } if(location.href.indexOf("&autoaddstubtag=")!=-1&&document.getElementById('wpTextbox1')!=null) { var x=decodeURIComponent(location.href.split("&autoaddstubtag=")[1]); if(x.indexOf("-stub")==-1) x+="-stub"; document.getElementById('wpTextbox1').value+="\n{"+"{"+x+"}}"; //add to the end of the article document.getElementById('wpSummary').value= "Tagging with {"+"{"+x+"}} using [[WP:US/S|user scripts]]"; document.getElementById('wpPreview').click(); } }); function stubtagtab() { var h; // A list of subpages of WikiProject Stub sorting/Stub types/ that are relevant to this var a=['Commerce','Culture','Education','Geography','Government, law, and politics','History', 'Leisure','Military and weaponry','Miscellaneous','Organizations','People', 'Religion, mythology, faiths, and beliefs','Science','Sports','Technology','Transport']; var i=0; h="<div style='color:#000000; background-color:#fff8f8;'>• "; while(i<a.length) { h+="<a href='javascript:stubtagmenu(\""+a[i]+"\");'>"+a[i]+"</a> • "; i++; } h+="</div><div id='stubtagmenudiv' style='color:#000000; background-color:#fffff8;'></div>"; document.getElementById("contentSub").innerHTML=h; } function stubtagmenurender(a) { if(a.responseText.indexOf("<text>")==-1) { document.getElementById('stubtagmenudiv').innerHTML= "<i>Loading, please wait...</i>"; return; } var s=a.responseText.split("<text>")[1].split("</text>")[0]; s=s.split("<").join("<").split(">").join(">"); s=s.split(""").join('"').split("&").join('&'); s=s.split('<a href="/wiki/Template:'); var i=s.length; while(--i) s[i]=s[i].split('" title').join('\');" title'); s=s.join('<a temphref="javascript:stubtagwith(\''); s=s.split('<a href=').join('<a style="color:#000000;" notanhref='); s=s.split('<a temphref=').join('<a href='); document.getElementById('stubtagmenudiv').innerHTML=s; } function stubtagmenu(x) { //Fetch the relevant subpage of the WikiProject var a = sajax_init_object(); a.open('GET', wgServer+wgScriptPath+'/api.php?action=parse&prop=text&text='+ encodeURIComponent('__NOTOC____NOEDITSECTION__{{Wikipedia:WikiProject Stub sorting/Stub types/'+ x+'}}')+'&format=xml'); a.onreadystatechange = function(){stubtagmenurender(a)}; a.send(''); } function stubtagwith(x) { if(x==null||x=="") return; location.href=wgServer+wgScript+"?title="+encodeURIComponent(wgPageName)+ "&action=edit&autoaddstubtag="+encodeURIComponent(x); } // </source> <!--[[Category:Wikipedia scripts]]-->