User:Test/monobook.js
From Wikipedia
< User:Test
Note: After saving, you may have to bypass your browser's cache to see the changes. Mozilla / Firefox / Safari: hold down Shift while clicking Reload, or press Ctrl-Shift-R (Cmd-Shift-R on Apple Mac); IE: hold Ctrl while clicking Refresh, or press Ctrl-F5; Konqueror:: simply click the Reload button, or press F5; Opera users may need to completely clear their cache in Tools→Preferences.
// ============================================================
// BEGIN Mooving of the editsection links
/*
* moveEditsection
* Dieses Script verschiebt die Editsection-Buttons von rechts oberhalb
* der Überschriften in die Überschriften.
* Positiv getestet unter: Firefox 1.0, Opera 8.0, Internet Explorer 6.0
* Anmerkungen, Verbesserungen, Hinweise, Nörgeleien jederzeit gerne gesehen!
*
* Zum Abschalten die folgende Zeile (ohne führendes Sternchen) in die eigene
* monobook.js (zu finden unter Benutzername/monobook.js) kopieren:
* var oldEditsectionLinks = true;
*
* dbenzhuser (de:Benutzer:Dbenzhuser)
*/
function moveEditsection() {
if (typeof oldEditsectionLinks == 'undefined' || oldEditsectionLinks == false) {
// Sammelt alle div-Elemente der Klasse "editsection".
var editsections = new Array();
var divs = document.getElementById("bodyContent").getElementsByTagName("div");
for(var i = 0; i < divs.length; i++) {
if(divs[i].className == "editsection") {
editsections.push(divs[i]);
}
}
// Wenn die Seite Editsection-Buttons enthält.
if (editsections.length != 0) {
// Sucht zu jedem Editsection-Button die dazugehörige Überschrfift.
var i = 0;
var element, heading;
while (editsections[i] != null) {
element = editsections[i];
heading = element.nextSibling;
while(!/^H[1-6]$/.test(heading.nodeName)) {
heading = heading.nextSibling;
}
// Erstellt innerhalb der Überschrift ein per CSS formatiertes span-Element.
// Dort hinein wird dann der Editsection-Link verschoben.
// Anschließend werden die Reste des alten Editsection-Buttons entfernt.
var spanElement = document.createElement("span");
var spaceNode = document.createTextNode(" ");
heading.appendChild(spaceNode);
heading.appendChild(spanElement);
spanElement.setAttribute("class", "editsection");
spanElement.style.fontSize = "x-small";
spanElement.style.fontWeight = "normal";
while (element.childNodes.length != 0) {
spanElement.appendChild(element.childNodes[0]);
}
element.parentNode.removeChild(element);
i++;
}
}
}
}
// onload
addOnloadHook(moveEditsection);
// END Mooving of the editsection links
// ============================================================
function addPurge(){
ta['ca-purge'] = ['g', 'Purge the internal cache for this page'];
if(!document.getElementById) return;
var x = document.getElementById('ca-history');
var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
if(!x) return;
if(x.children) x = x.children[0];
else x = x.childNodes[0];
addlilink(tabs, x.href.replace(/=history/, "=purge"), 'purge', 'ca-purge');
}
function addEditSection0(){
ta['ca-edit-0'] = ['', 'Edit the zeroth section of this page'];
if(!document.getElementById) return;
var x = document.getElementById('ca-edit');
if(!x) return;
var y = document.createElement('LI');
y.id = 'ca-edit-0';
if(x.className == 'selected'){
if(/&action=edit§ion=0$/.test(window.location.href)){
x.className = 'istalk';
y.className = 'selected';
} else {
x.className = 'selected istalk';
}
} else if(x.className == 'selected istalk'){
if(/&action=edit§ion=0$/.test(window.location.href)){
x.className = 'istalk';
y.className = 'selected istalk';
} else {
y.className = 'istalk';
}
} else {
y.className = x.className;
x.className = 'istalk';
}
var z = document.createElement('A');
if(x.children){
z.href = x.children[0].href + '§ion=0';
z.appendChild(document.createTextNode('0'));
y.appendChild(z);
document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling);
}else{
z.href = x.childNodes[0].href + '§ion=0';
z.appendChild(document.createTextNode('0'));
y.appendChild(z);
document.getElementById('p-cactions').childNodes[3].insertBefore(y,x.nextSibling);
}
}
function vitajte(){
var reg = prompt("Reg?");
if(!reg) return;
document.editform.wpSummary.value = 'Vitajte/Welcome ';
var txt = document.editform.wpTextbox1;
if(txt.value.length > 0) txt.value += '\n';
txt.value += '{{Vitajte|redaktor=Bubamara|reg=reg' + reg + '}}';
txt.focus();
}
function addlilink(tabs, url, name, id){
var na = document.createElement('a');
na.href = url;
na.id = id;
na.appendChild(document.createTextNode(name));
var li = document.createElement('li');
li.appendChild(na);
tabs.appendChild(li);
return li;
}
function morelinks(){
var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
if(document.title.indexOf("Editing User talk")
== 0){
addlilink(tabs, 'javascript:vitajte()', 'vitajte', '');
}
}
function LinkFA()
{
// iterate over all <span>-elements
for(var i=0; a = document.getElementsByTagName("span")[i]; i++) {
// if found a FA span
if(a.className == "FA") {
// iterate over all <li>-elements
for(var j=0; b = document.getElementsByTagName("li")[j]; j++) {
// if found a FA link
if(b.className == "interwiki-" + a.id) {
b.style.padding = "0 0 0 16px";
b.style.backgroundImage = "url('http://upload.wikimedia.org/wikipedia/en/6/60/LinkFA-star.png')";
b.style.backgroundRepeat = "no-repeat";
b.title = "This article has gained featured status";
}
}
}
}
}
function myLoadFuncs(){
addPurge();
addEditSection0();
morelinks();
LinkFA();
}
if (window.addEventListener)
window.addEventListener("load",myLoadFuncs,false);
else if (window.attachEvent)
window.attachEvent("onload",myLoadFuncs);
else{
window._old_ABCD_onload = window.onload;
window.onload = function(){
window._old_ABCD_onload();
myLoadFuncs();
}
}
/////////////////////////////////////////////////////////////////////////
// Od stv
if (window.addEventListener) {
window.addEventListener("load", przyciskiOpis, false);
} else if (window.attachEvent) {
window.attachEvent("onload", przyciskiOpis);
}
function przyciskiOpis() {
przyciskiDodaj('ort.', 'dodajOpis("ort.")', 'userButtonsStyle',
'Został poprawiony błąd ortograficzny');
przyciskiDodaj('lit.', 'dodajOpis("lit.")', 'userButtonsStyle',
'Została poprawiona literówka');
przyciskiDodaj('drobne', 'dodajOpis("drobne")', 'userButtonsStyle',
'Drobne zmiany');
przyciskiDodaj('linki', 'dodajOpis("linki")', 'userButtonsStyle',
'Zostały poprawione linki');
przyciskiDodaj('kat.', 'dodajOpis("kat.")', 'userButtonsStyle',
'Została poprawiona/dodana kategoria');
przyciskiDodaj('grafika', 'dodajOpis("grafika")', 'userButtonsStyle',
'Została poprawiona/dodana grafika');
przyciskiDodaj('stub', 'dodajOpis("stub")', 'userButtonsStyle',
'Ten artykuł to stub');
}
function przyciskiDodaj(pTekst, pAkcja, pKlasa, pOpis) {
k = document.getElementById('userButtonsA');
if (k) {
nowySpan = document.createElement('span');
nowyText = document.createTextNode(pTekst);
nowySpan.appendChild(nowyText);
nowyOnClick = document.createAttribute('onclick');
nowyOnClick.nodeValue = pAkcja;
nowySpan.setAttributeNode(nowyOnClick);
nowySpan.title = pOpis;
nowyClass = document.createAttribute('class');
nowyClass.nodeValue = pKlasa;
nowySpan.setAttributeNode(nowyClass);
k.appendChild(document.createTextNode(' '));
k.appendChild(nowySpan);
// document.editform.wpMinoredit.onclick = onMinorEditClick;
}
}
var clickedMinor = false;
function onMinorEditClick() {
if (this.checked && !clickedMinor)
{
dodajOpis("drobne");
clickedMinor = true;
}
}
function dodajOpis(opis) {
if (document.editform.wpSummary.value != '' && document.editform.wpSummary.value.charAt(0) != '/') {
document.editform.wpSummary.value += ', ' + opis
}
else {
document.editform.wpSummary.value += ' ' + opis
}
}
// This is based on the original code on Wikipedia:Tools/Editing tools
//
// The original code was on the project page and needed to be cut and paste to the user's
// monobook.js page. However, this caused problems with the quote marks. So I have moved
// it to its own page.
//
// I do not know a lot about Javascript so please do not ask for a complicated change
//
// See the [[User:MarkS/Extra edit buttons]] for changes log
function InsertButtonsToToolBar()
{
//Strike-Out Button
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://upload.wikimedia.org/wikipedia/en/c/c9/Button_strike.png",
"speedTip": "Strike",
"tagOpen": "<s>",
"tagClose": "</s>",
"sampleText": "Strike-through text"}
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://upload.wikimedia.org/wikipedia/commons/b/ba/Button_conserver.png",
"speedTip": "Hlasuj Za",
"tagOpen": "",
"tagClose": "",
"sampleText": "#{{za}} \~\~\~\~"}
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://upload.wikimedia.org/wikipedia/commons/f/fc/Button_supp.png",
"speedTip": "Hlasuj Proti",
"tagOpen": "",
"tagClose": "",
"sampleText": "#{{proti}} \~\~\~\~"}
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://upload.wikimedia.org/wikipedia/commons/4/4e/Button_neutre.png",
"speedTip": "Hlasuj Neutral",
"tagOpen": "",
"tagClose": "",
"sampleText": "#{{neutral}} \~\~\~\~"}
}
addOnloadHook( InsertButtonsToToolBar );

