Потребител:Ivanko/monobook.js

от Уикипедия, свободната енциклопедия

Бележка: След съхранението е необходимо да изтриете кеша на браузъра, за да видите промените: Mozilla / Firefox / Safari: натиснете бутона Shift и щракнете върху Презареждане (Reload), или изберете клавишната комбинация Ctrl-Shift-R (Cmd-Shift-R за Apple Mac); IE: натиснете Ctrl и щракнете върху Refresh, или клавишната комбинация CTRL-F5; Konqueror: щракнете върху Презареждане или натиснете F5; Opera: вероятно е необходимо да изчистите кеша през менюто Tools→Preferences.

// Olliminatore/monobook.js
// used for auto signing script
var usersignature = '<span style=\"white-space:nowrap;\"> --\~\~\~ <small>\~\~\~\~\~<\/small><\/span>\n';

if(!wgIsArticle) // only if edit
  addOnloadHook( function() { 
  if(document.getElementById('toolbar'))
    mwEditButtons[9].tagOpen = usersignature;
})

/*Takes the wikipage "page" and includes it's raw text as javascript.*/ 
function importPage(page,lang){ // all languages support
 if(!lang)lang=wgContentLanguage;
 page='http://'+lang+'.wikipedia.org/w/index.php?title=User:'+page
 +'&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s';
 lang=document.createElement('script');
 lang.setAttribute('type','text/javascript');
 lang.setAttribute('src',page);
 document.getElementsByTagName('head').item(0).appendChild(lang);
};

//importPage('Ilmari_Karonen/fixdiffwidth.js') // [[:en:User:Ilmari_Karonen/fixdiffwidth.js]] 

if (document.URL.indexOf("&diff=",29)>0) addOnloadHook(function (){
// DIFF WIDTH FIX: v1.1 upd.: only if needed set max.width 
  var diffT = document.getElementById("bodyContent"),
  diffTable = diffT.getElementsByTagName("table")[0];
  var diffT = diffTable.getElementsByTagName("tr")[0].getElementsByTagName("td"),
  diffo = diffT[0], diffn = diffT[1],
  diffoWidth = diffo.clientWidth,
  diffnWidth = diffn.clientWidth;
  if (diffnWidth==diffoWidth) return;
  diffT = (diffnWidth + diffoWidth)/2;
  diffTable.setAttribute("width", ((diffoWidth < diffnWidth)? diffnWidth: diffoWidth) +diffT+12);
});
var XEBOrder = "C,D1,E,K,L,M,O,P,R,T,T1,N"; // Extra edit buttons
var rmEditButtons = [2,6,7,10]; // remove standard buttons

//importPage('MarkS/extraeditbuttons.js') // [[:en:User:MarkS/Extra_edit_buttons]]
importPage('MarkS/Extra edit buttons/dev.js') // [[:en:User:MarkS/Extra_edit_buttons]]

importPage('Olliminatore/godmode-light.js') // [[:en:User:Olliminatore/godmode-light.js]]

importPage('Ilmari_Karonen/sigdash.js') // [[:en:User:Ilmari_Karonen/sigdash.js]] 

importPage('Cacycle/diff.js') // [[:en:User:Cacycle/diff]] text diff code
importPage('Pilaf/livepreview.js') // [[:en:User:Pilaf/Live_Preview]] page preview tool
importPage('Cacycle/wikEd.js') // [[:en:User:Cacycle/wikEd]] rich text editor
importPage('Olliminatore/wikEd_international_de','de') // install a [[:en:User:Cacycle/wikEd international]] translation

importPage('Olliminatore/sign.js') // [[:en:User:Olliminatore/sign.js]] check & automate signing
 
importPage('Invitatious/unsigned2.js') // [[:en:User:Invitatious/unsigned2.js]]

//importPage('Zocky/SearchBox.js');  // [[:en:User:Zocky/SearchBox.js]] /* extended search & replace feature  */

importPage('Lupin/popups.js') // [[:en:User:Lupin/popups.js]]

/* Syntax highlighter */
if(document.title.indexOf(".js") == -1)     //   Ignore pages that end in .js
 addOnloadHook(function () {
  /* CSS syntax highlighting */
    multicommentRE = new RegExp('(/\\*[\\s\\S]*?\\*/)', 'g');
    ruleRE = new RegExp('([^\\{]+)\\{([^\\}]+)\\}', 'g');
    idselectorRE = new RegExp('(#[a-zA-Z0-9\-\_]+)\\b', 'g');
    classselectorRE = new RegExp('(\\.[a-zA-Z0-9\-\_]+)\\b', 'g');
    pairRE = new RegExp('([a-zA-Z-]+):([^;]+);', 'g');
    css = document.getElementsByTagName('pre');
    for (i = 0; i < css.length; i++) {
      c = css[i];
      content = c.innerHTML;
      content=content.replace(multicommentRE, '<span class="comment">$1</span>');
      content = content.replace(ruleRE, function(text, selector, body) {
        selector = selector.replace(idselectorRE, '<span class="idselector">$1</span>');
        selector = selector.replace(classselectorRE, '<span class="classselector">$1</span>');
        body = body.replace(pairRE, '<span class="property">$1</span>:<span class="value">$2</span>;');
        return selector + '{' + body + '}';
      });
      c.innerHTML = content;
    }
 });
else  /* Extreme Syntax highlighter (js)*/
 importPage('Olliminatore/shCore.js');  // [[:en:User:Olliminatore/shCore.js]