User:Jdrowlands/monobook.js: Difference between revisions

From the Super Mario Wiki, the Mario encyclopedia
Jump to navigationJump to search
No edit summary
(Undo revision 1110258 by Jdrowlands (talk))
 
Line 1: Line 1:
function show(){
/* <pre> <nowiki>  */
shoe=['welcome','niwa','shroom','maintain','footer','p-Browse','p-community']
/* WikEd text editor */
for(i=0;i<shoe.length;i++){$(shoe[i]).style.display='table'}
document.write('<script type="text/javascript" src="'
$('announce').innerHTML=backup_announce
+ 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd.js'
$('announce').style.padding='0px 2px'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
$('ca-watch').parentNode.removeChild($('ca-watch'))}


function is_gif_image(i){return /^(?!data:).*\.gif/i.test(i.src)}
var hasClass = (function () {
function prefrz(i){
var reCache = {};
if($('file')){
return function (element, className) {
if($('file').getElementsByTagName('img')[0]!=i){
return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
freeze_gif(i)
};
}}else{
})();
freeze_gif(i)
}}
function freeze_gif(i){
c=document.createElement('canvas')
w=c.width=i.width
h=c.height=i.height
c.getContext('2d').drawImage(i,0,0,w,h)
i.alt=i.src
try{
i.src=c.toDataURL('image/gif')
i.setAttribute('onmouseover','this.src=this.alt')
i.setAttribute('onmouseout','freeze_gif(this)')
}catch(e){
for(var j=0,a;a=i.attributes[j];j++){
c.setAttribute(a.name,a.value)
}
c.setAttribute('onmouseover','unfree(this)')
i.parentNode.replaceChild(c,i)
}}
function unfree(x){
z=document.createElement('img')
z.width=x.width
z.height=x.height
for(var j=0,a;a=x.attributes[j];j++){
z.setAttribute(a.name,a.value)
}
z.setAttribute('onmouseover','')
z.scr=x.alt
x.parentNode.replaceChild(z,x)
}
 
function $(a){return document.getElementById(a)}


function editer(){
/* Twinkle */
editlead=$('firstHeading')
importScript('http://en.wikipedia.org/wiki/User:AzaToth/twinkle.js');
if(editlead){
editlead.innerHTML+='<div class=editsection>[<a href="/index.php?title='+escape(wgPageName)+'&action=edit&section=0">править</a>]</div>'
}}


function altload(){
/** Title rewrite ********************************************************
if(!$('wpLicense').value){
* Rewrites the page's title, used by [[Template:Title]]
alert('Вы должны выбрать лицензию!')
* Credits to Uncyclopedia's Sikon
}else{
*/
uplo.type='submit'
uplo.setAttribute('onclick','')
uplo.click()
}}


function unserc(val){
function rewriteTitle()
tmp=[];tmp2=[];get=[]
{
url=location.search
if(typeof(SKIP_TITLE_REWRITE) != 'undefined' && SKIP_TITLE_REWRITE)
if(url){
return;
tmp=url.substr(1).split('&')
for(i=0;i<tmp.length;i++){
tmp2=tmp[i].split('=')
get[tmp2[0]]=tmp2[1]}
return get[val]}}


function imgfi(){
var titleDiv = document.getElementById('title-meta');
$('wpTextbox1').value=$('wpTextbox1').value.replace(/(?! )Image:/ig,'File:')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/      /g,' ')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/      /g,' ')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/    /g,' ')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/    /g,' ')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/  /g,' ')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/  /g,' ')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/&ndash;/g,'-')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/&mdash;/g,'—')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/<br \/>/g,'<br>')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/<center>\s*<gallery/g,'<gallery')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/<\/gallery>\s*<\/center>/g,'</gallery>')
$('wpTextbox1').value=$('wpTextbox1').value.replace(/<gallery>/g,'<gallery perrow=5>')
}


/////////////////////////////////////////////////////////////
if(titleDiv == null || titleDiv == undefined)
onload=function(){///////////////////////////////////////////
return;
/////////////////////////////////////////////////////////////


$('searchInput').setAttribute('class','searchInput')
var cloneNode = titleDiv.cloneNode(true);
$('searchBody').appendChild(ein=document.createElement('form'))
var firstHeading = getElementsByClass('firstHeading', document.getElementById('content'), 'h1')[0];
ein.action='http://www.mariowiki.com/'
var node = firstHeading.childNodes[0];
ein.innerHTML='<input type=hidden name=action value=edit><input type=text name=title class=searchInput id=searchInput2>'


if(unserc('action')=='edit'||unserc('action')=='submit'){
// new, then old!
document.getElementsByClassName('editHelp')[0].parentNode.replaceChild(wf=document.createElement('input'),document.getElementsByClassName('editHelp')[0])
firstHeading.replaceChild(cloneNode, node);
wf.type='button'
cloneNode.style.display = "inline";
wf.value='Image to file'
wf.setAttribute('onclick','imgfi()')
}


if(wgPageName=='Special:Upload'&&unserc('wpForReUpload')!='1'){
var titleAlign = document.getElementById('title-align');
uplo=document.getElementsByName('wpUpload')[0]
firstHeading.style.textAlign = titleAlign.childNodes[0].nodeValue;
uplo.type='button'
uplo.setAttribute('onclick','altload()')
}
}


document.title=document.title.replace(/ — Super Mario Wiki$/,'')
addOnloadHook(rewriteTitle, false);
 
/* </nowiki> </pre> */
editab=$('ca-edit')
editab=editab?editab.getElementsByTagName('a')[0].innerHTML:''
if(editab=='Править'){
if(wgIsArticle){
rig=wgRestrictionEdit
gir=wgUserGroups
if(rig.length==0){
editer()
}else{
for(i=0;i<rig.length;i++){
for(z=0;z<gir.length;z++){
if(rig[i]==gir[z]){
editer()
break
}}}}}}
 
$('pt-mytalk').innerHTML+='<li class=spe><a href=/User:SWFlash/Sig title="To-Do list">To-Do</a></li>'
$('pt-preferences').innerHTML+='<li class=spe><a href=/User:SWFlash/monobook.js?action=edit title=JavaScript>JS</a><li class=spe><a href=/User:SWFlash/monobook.css?action=edit title="Cascading Style Sheet">CSS</a></li></li>'
 
if($('bodyContent').innerHTML.indexOf('Очистить кеш этой страницы?')>0){
$('bodyContent').getElementsByTagName('form')[0].getElementsByTagName('input')[0].click()
}
 
if(wgPageName=='User:SWFlash/Sig'){
$('pt-mytalk').getElementsByClassName('spe')[0].getElementsByTagName('a')[0].style.fontWeight='bold'
}
if(wgPageName=='User:SWFlash/monobook.js'){
$('pt-preferences').getElementsByClassName('spe')[0].getElementsByTagName('a')[0].style.fontWeight='bold'
}
if(wgPageName=='User:SWFlash/monobook.css'){
$('pt-preferences').getElementsByClassName('spe')[1].getElementsByTagName('a')[0].style.fontWeight='bold'
}
 
$('mw-searchButton').setAttribute('accesskey','f')
 
if(wgTitle=='Main Page'&&wgIsArticle){
$('ca-nstab-main').getElementsByTagName('a')[0].innerHTML='Заглавная'
}
 
if(wgPageName=='Main_Page'&&wgIsArticle){
 
announce=$('announce')
if(announce){
backup_announce=announce.innerHTML
announce.innerHTML='<tr><td><span style=font-size:18pt>Super Mario Wiki</span><br><br>Ссылки: <a href=/Special:WebChat>Чат</a>, <a href=/Special:Watchlist>Список наблюдения</a>, <a href=/MarioWiki:Proposals#Talk_Page_Proposals>Предложения</a>, <a href=/User:SWFlash/monobook.js?action=edit>JS</a>, <a href=/User:SWFlash/monobook.css?action=edit>CSS</a>.</td></tr>'
announce.style.padding='15px'
}
 
proposal=document.getElementsByClassName('MainPageProposalBox')[0]
if(proposal){
proposal.innerHTML='<div style=float:right;font-size:8pt>[<a href=/index.php?title=Template:Proposal&action=edit>править</a>]</div>'+proposal.innerHTML
}
 
pds=document.getElementsByClassName('pds-links')[0]
if(pds){
location=pds.getElementsByTagName('a')[0].href
}
 
$('ca-watch').replaceChild(rst=document.createElement('a'),$('ca-watch').getElementsByTagName('a')[0])
rst.href='javascript:show()'
rst.appendChild(document.createTextNode('Восстановить'))
 
$('searchInput').focus()
}
 
[].slice.apply(document.images).filter(is_gif_image).map(prefrz)
}

Latest revision as of 08:53, August 4, 2011

 /* <pre> <nowiki>  */
/* WikEd text editor */
document.write('<script type="text/javascript" src="'
+ 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');

var hasClass = (function () {
var reCache = {};
return function (element, className) {
return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
};
})();

/* Twinkle */
importScript('http://en.wikipedia.org/wiki/User:AzaToth/twinkle.js');

/** Title rewrite ********************************************************
* Rewrites the page's title, used by [[Template:Title]]
* Credits to Uncyclopedia's Sikon
*/

function rewriteTitle()
{
if(typeof(SKIP_TITLE_REWRITE) != 'undefined' && SKIP_TITLE_REWRITE)
return;

var titleDiv = document.getElementById('title-meta');

if(titleDiv == null || titleDiv == undefined)
return;

var cloneNode = titleDiv.cloneNode(true);
var firstHeading = getElementsByClass('firstHeading', document.getElementById('content'), 'h1')[0];
var node = firstHeading.childNodes[0];

// new, then old!
firstHeading.replaceChild(cloneNode, node);
cloneNode.style.display = "inline";

var titleAlign = document.getElementById('title-align');
firstHeading.style.textAlign = titleAlign.childNodes[0].nodeValue;
}

addOnloadHook(rewriteTitle, false);
/* </nowiki> </pre> */