MediaWiki:Common.js: Unterschied zwischen den Versionen

Aus Ärztebriefe
Zur Navigation springen Zur Suche springen
EhemaligeNutzer (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
EhemaligeNutzer (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Zeile 68: Zeile 68:
#####################################################################
#####################################################################


var customizeToolbar = function () {
$.ajax({ dataType: 'script', cache: true
url: 'https://meta.wikimedia.org/w/index.php?title=User:Krinkle/Scripts/InsertWikiEditorButton.js&action=raw&ctype=text/javascript'
}).then(function () {


$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
// Happy face
section: 'main',
krInsertWikiEditorButton({
groups: {
id: "mw-customeditbutton-myspecialbutton",
list: {
icon: "//upload.wikimedia.org/wikipedia/commons/thumb/a/a4/Gnome-face-smile.svg/22px-Gnome-face-smile.svg.png",
tools: {
label: 'Insert happy face',
templates: {
insertBefore: '[[File:Gnome-face-smile.svg|21px|',
label: 'Templates',
insertAfter: ']]',
type: 'select',
sampleText: 'Happy face'
list: {
});
'Ping-button': {
label: '{{Ping}}',
action: {
type: 'encapsulate',
options: {
pre: '{{Ping|',
post: '}}'
}
}
},
'Clear-button': {
label: 'Clear',
action: {
type: 'encapsulate',
options: {
pre: '{{Clear}}'
}
}
},
'Done-button': {
label: 'Done',
action: {
type: 'encapsulate',
options: {
pre: '{{Done}}'
}
}
}
}
}
}
}
}
} );
};


/* Check if view is in edit mode and that the required modules are available. Then, customize the toolbar … */
// Monkey
if ( $.inArray( mw.config.get( 'wgAction' ), [ 'edit', 'submit' ] ) !== -1 ) {
krInsertWikiEditorButton({
mw.loader.using( 'user.options' ).then( function () {
id: 'mw-customeditbutton-anotherspecialbutton',
// This can be the string "0" if the user disabled the preference ([[phab:T54542#555387]])
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/1/1b/Gnome-face-monkey.svg/22px-Gnome-face-monkey.svg.png',
if ( mw.user.options.get( 'usebetatoolbar' ) == 1 ) {
label: 'Insert monkey',
$.when(
insertBefore: '[[File:Gnome-face-monkey.svg|21px|',
mw.loader.using( 'ext.wikiEditor.toolbar' ), $.ready
insertAfter: ']]',
).then( customizeToolbar );
sampleText: 'Happy face'
}
});
} );
 
}
});

Version vom 13. Dezember 2018, 20:22 Uhr

function ModifySidebar(action, section, name, link) {
    try {
        switch (section) {
          case "languages":
            var target = "p-lang";
            break;
          case "toolbox":
            var target = "p-tb";
            break;
          case "navigation":
            var target = "p-navigation";
            break;
          default:
            var target = "p-" + section;
            break;
        }
 
        if (action == "add") {
            var node = document.getElementById(target)
                               .getElementsByTagName('div')[0]
                               .getElementsByTagName('ul')[0];
 
            var aNode = document.createElement('a');
            var liNode = document.createElement('li');
 
            aNode.appendChild(document.createTextNode(name));
            aNode.setAttribute('href', link);
            liNode.appendChild(aNode);
            liNode.className='plainlinks';
            node.appendChild(liNode);
        }
 
        if (action == "remove") {
            var list = document.getElementById(target)
                               .getElementsByTagName('div')[0]
                               .getElementsByTagName('ul')[0];
 
            var listelements = list.getElementsByTagName('li');
 
            for (var i = 0; i < listelements.length; i++) {
                if (listelements[i].getElementsByTagName('a')[0].innerHTML == name ||
                    listelements[i].getElementsByTagName('a')[0].href == link) {
 
                    list.removeChild(listelements[i]);
                }
            }
        }
 
    } catch(e) {
      // lets just ignore what's happened
      return;
    }
}
 
function CustomizeModificationsOfSidebar() {
    //adds [[Special:CategoryTree]] to toolbox
    ModifySidebar("add", "toolbox", "CategoryTree", "http://en.wikipedia.org/wiki/Special:CategoryTree");
    //removes [[Special:Upload]] from toolbox
    ModifySidebar("remove", "toolbox", "Upload file", "http://en.wikipedia.org/wiki/Special:Upload");
}
 
addOnloadHook(CustomizeModificationsOfSidebar);



#####################################################################
################# Customize WikiEditor Toolbar ######################
#####################################################################

$.ajax({ dataType: 'script', cache: true
	url: 'https://meta.wikimedia.org/w/index.php?title=User:Krinkle/Scripts/InsertWikiEditorButton.js&action=raw&ctype=text/javascript'
}).then(function () {

	// Happy face
	krInsertWikiEditorButton({
		id: "mw-customeditbutton-myspecialbutton",
		icon: "//upload.wikimedia.org/wikipedia/commons/thumb/a/a4/Gnome-face-smile.svg/22px-Gnome-face-smile.svg.png",
		label: 'Insert happy face',
		insertBefore: '[[File:Gnome-face-smile.svg|21px|',
		insertAfter: ']]',
		sampleText: 'Happy face'
	});

	// Monkey
	krInsertWikiEditorButton({
		id: 'mw-customeditbutton-anotherspecialbutton',
		icon: '//upload.wikimedia.org/wikipedia/commons/thumb/1/1b/Gnome-face-monkey.svg/22px-Gnome-face-monkey.svg.png',
		label: 'Insert monkey',
		insertBefore: '[[File:Gnome-face-monkey.svg|21px|',
		insertAfter: ']]',
		sampleText: 'Happy face'
	});

});