Skilnad mellom versjonar av «MediaWiki:Common.js»
Hopp til navigering
Hopp til søk
(Ny side: →Javascript i denne fila vil gjelde for alle drakter.: /** Dynamic Navigation Bars (experimental) ************************************* * * Description: See Wikipedia:NavFrame. ...) |
Ingen redigeringsforklaring |
||
Line 101: | Line 101: | ||
} | } | ||
$( createNavigationBarToggleButton ); | |||
/** Translate #REDIRECT | |||
* | |||
* Description: A workaround for bug 24114, "Redirect toolbar button doesn't insert localized version of #REDIRECT" | |||
* Original: http://meta.wikimedia.org/wiki/2010_Wikimedia_design_and_feature_change/Feedback/Archive_1#REDIRECT_button | |||
* Maintainers: [[:no:User:Sidhekin]] | |||
* Change: | |||
* must bind the function earlier to get the wanted effect | |||
* added try-catch but not sure if its necessary, the structures will always be defined | |||
* jeblad, 2011-05-12 | |||
*/ | |||
(function(mw, $) { | |||
if ( window.wgWikiEditorEnabledModules && wgWikiEditorEnabledModules.toolbar ) { | |||
try { | |||
$( '#wpTextbox1' ).bind( 'wikiEditor-toolbar-buildSection-advanced', function( event, section ) { | |||
section.groups.insert.tools.redirect.action.options.pre = '#OMDIRIGERING [['; | |||
} ); | |||
} | |||
catch (e) { | |||
// Woopsie, die without a notice | |||
} | |||
} | |||
})(mediaWiki, jQuery); | |||
/** | |||
* Description: Modify parts of the toolbar to better suit this projects needs | |||
* Maintainer: | |||
*/ | |||
(function(mw, $, undefined) { | |||
if ( $.fn.wikiEditor !== undefined ) { | |||
// Execute on load | |||
$( function() { | |||
// just to get rid of some errors | |||
function label(msg, txt, before, after) { | |||
var str = ''; | |||
if (before === undefined ? true : before) str += "{" + "{"; | |||
str += msg; | |||
if (after === undefined ? true : after) str += "}" + "}"; | |||
if (txt) str += " – " + txt; | |||
return str; | |||
} | |||
// just to get rid of some errors | |||
function pre(msg, txt, before) { | |||
var str = ''; | |||
if (before === undefined ? true : before) str += "{" + "{"; | |||
str += msg; | |||
if (txt) str += txt; | |||
return str; | |||
} | |||
// just to get rid of some errors | |||
function peri(msg, txt, before, after) { | |||
var str = ''; | |||
if (before === undefined ? true : before) str += "{" + "{"; | |||
str += msg; | |||
if (txt) str += txt; | |||
if (after === undefined ? true : after) str += "}" + "}"; | |||
return str; | |||
} | |||
// get timestamp for templates | |||
var now = new Date(); | |||
var timestamp = now.getUTCFullYear() + '-' + (now.getUTCMonth()<9 ? '0' : '') + (now.getUTCMonth()+1) + '-' + (now.getUTCDate()<9 ? '0' : '') + now.getUTCDate(); | |||
// add quote signs to the format group in the main section | |||
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { | |||
'section': 'main', | |||
'group': 'format', | |||
'tools': { | |||
'quote': { | |||
label: 'Anførselstegn', | |||
type: 'button', | |||
icon: '//upload.wikimedia.org/wikipedia/commons/a/ac/Norwegian_quote_sign.png', | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: "«", | |||
//peri: "«»", | |||
post: "»" | |||
} | |||
} | |||
} | |||
} | |||
}); | |||
// add quote signs to the format group in the main section | |||
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { | |||
'section': 'main', | |||
'group': 'format', | |||
'tools': { | |||
'link': { | |||
label: 'Lenkeparenteser', | |||
type: 'button', | |||
icon: '//upload.wikimedia.org/wikipedia/commons/b/ba/Norwegian_link_sign.png', | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: "[[", | |||
//peri: "[[]]", | |||
post: "]]" | |||
} | |||
} | |||
} | |||
} | |||
}); | |||
// add quote signs to the format group in the main section | |||
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { | |||
'section': 'main', | |||
'group': 'format', | |||
'tools': { | |||
'link': { | |||
label: 'Malparenteser', | |||
type: 'button', | |||
icon: '//upload.wikimedia.org/wikipedia/commons/4/4a/Norwegian_template_sign.png', | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: "{{", | |||
//peri: "{{}}", | |||
post: "}}" | |||
} | |||
} | |||
} | |||
} | |||
}); | |||
// add an article mark menu in the advanced section | |||
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { | |||
'section': 'advanced', | |||
groups: { | |||
'heading': { | |||
tools: { | |||
'heading': { | |||
label: 'Vedlikehold', | |||
type: 'select', | |||
list: { | |||
'template-neutral' : { | |||
label: label('Nøytralitet', 'artikkelen gir ikke en nøytral fremstilling'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('Nøytralitet', '|ts=' + timestamp + '|'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
}, | |||
'template-verifiable' : { | |||
label: label('Verifiserbar', 'artikkelen er ikke verifiserbar'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('Verifiserbar', '|ts=' + timestamp + '|'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
}, | |||
'template-research' : { | |||
label: label('Forskning', 'artikkelen inneholder originalforskning'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('Forskning', '|ts=' + timestamp + '|'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
}, | |||
'template-accuracy' : { | |||
label: label('Nøyaktighet', 'artikkelen har ikke en nøyaktig fremstilling'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('Nøyaktighet', '|ts=' + timestamp + '|'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
}, | |||
'template-spelling' : { | |||
label: label('Språkvask', 'artikkelens språk trenger en gjennomgang'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('Språkvask', '|ts=' + timestamp + '|'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
}, | |||
'template-format' : { | |||
label: label('Formatering', 'artikkelen trenger wikifisering'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('Formatering', '|ts=' + timestamp + '|'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
}, | |||
'template-workinprogress' : { | |||
label: label('Arbeid pågår', 'artikkelen er under arbeid'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('Arbeid pågår', '|ts=' + timestamp + '|'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
}); | |||
// add a template menu in the advanced sectionined' ) { | |||
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { | |||
'section': 'advanced', | |||
groups: { | |||
'heading': { | |||
tools: { | |||
'heading': { | |||
label: 'Maler', | |||
type: 'select', | |||
list: { | |||
'template-columns' : { | |||
label: label('kolonner', 'etterfølgende liste fordeles over flere kolonner'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('kolonner', '|'), | |||
//peri: peri('columns'), | |||
post: '}}', | |||
ownline: true | |||
} | |||
} | |||
}, | |||
'template-sorted-columns' : { | |||
label: label('sorterte kolonner', 'etterfølgende liste fordeles over flere sorterbare kolonner'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('sorterte kolonner', '|tittel='), | |||
//peri: peri('columns'), | |||
post: '}}', | |||
ownline: true | |||
} | |||
} | |||
}, | |||
'template-nowrap' : { | |||
label: label('nowrap', 'hindre linjeskift i tekst og tall'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('nowrap', '|'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
}, | |||
'template-formatnum' : { | |||
label: label('formatnum', 'tall med mellomrom og desimalkomma'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('formatnum', ':'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
}, | |||
'template-defaultsort' : { | |||
label: label('DEFAULTSORT', 'sortering på etternavn og lignende'), | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: pre('DEFAULTSORT', ':'), | |||
post: '}}', | |||
ownline: false | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
}); | |||
// add a titles menu in the advanced section | |||
$( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { | |||
'section': 'advanced', | |||
groups: { | |||
'heading': { | |||
tools: { | |||
'heading': { | |||
label: 'Titler', | |||
type: 'select', | |||
list: { | |||
'titles-see-also' : { | |||
label: '== Se også == – interne lenker til andre prosjekter', | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: '== Se også ==', | |||
ownline: true | |||
} | |||
} | |||
}, | |||
'titles-references' : { | |||
label: '== Referanser == – oppgitte referanser i teksten', | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: "== Referanser ==\n<references>\n", | |||
post: "\n</references>", | |||
ownline: true | |||
} | |||
} | |||
}, | |||
'titles-literature' : { | |||
label: '== Litteratur == – oppgitt litteratur', | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: '== Litteratur ==', | |||
ownline: true | |||
} | |||
} | |||
}, | |||
'titles-links' : { | |||
label: '== Eksterne lenker == – lenker til nettsteder', | |||
action: { | |||
type: 'encapsulate', | |||
options: { | |||
pre: '== Eksterne lenker ==', | |||
ownline: true | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
}); | |||
}); | |||
} | |||
})(mediaWiki, jQuery); |
Versjonen frå 5. desember 2011 kl. 22:34
/* Javascript i denne fila vil gjelde for alle drakter. */ /** Dynamic Navigation Bars (experimental) ************************************* * * Description: See [[Wikipedia:NavFrame]]. * Maintainers: UNMAINTAINED */ // set up the words in your language var NavigationBarHide = '[' + collapseCaption + ']'; var NavigationBarShow = '[' + expandCaption + ']'; // shows and hides content and picture (if available) of navigation bars // Parameters: // indexNavigationBar: the index of navigation bar to be toggled function toggleNavigationBar(indexNavigationBar) { var NavToggle = document.getElementById("NavToggle" + indexNavigationBar); var NavFrame = document.getElementById("NavFrame" + indexNavigationBar); if (!NavFrame || !NavToggle) { return false; } // if shown now if (NavToggle.firstChild.data == NavigationBarHide) { for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) { if ( hasClass( NavChild, 'NavPic' ) ) { NavChild.style.display = 'none'; } if ( hasClass( NavChild, 'NavContent') ) { NavChild.style.display = 'none'; } } NavToggle.firstChild.data = NavigationBarShow; // if hidden now } else if (NavToggle.firstChild.data == NavigationBarShow) { for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) { if (hasClass(NavChild, 'NavPic')) { NavChild.style.display = 'block'; } if (hasClass(NavChild, 'NavContent')) { NavChild.style.display = 'block'; } } NavToggle.firstChild.data = NavigationBarHide; } } // adds show/hide-button to navigation bars function createNavigationBarToggleButton() { var indexNavigationBar = 0; // iterate over all < div >-elements var divs = document.getElementsByTagName("div"); for (var i = 0; NavFrame = divs[i]; i++) { // if found a navigation bar if (hasClass(NavFrame, "NavFrame")) { indexNavigationBar++; var NavToggle = document.createElement("a"); NavToggle.className = 'NavToggle'; NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar); NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');'); var isCollapsed = hasClass( NavFrame, "collapsed" ); /* * Check if any children are already hidden. This loop is here for backwards compatibility: * the old way of making NavFrames start out collapsed was to manually add style="display:none" * to all the NavPic/NavContent elements. Since this was bad for accessibility (no way to make * the content visible without JavaScript support), the new recommended way is to add the class * "collapsed" to the NavFrame itself, just like with collapsible tables. */ for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) { if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) { if ( NavChild.style.display == 'none' ) { isCollapsed = true; } } } if (isCollapsed) { for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) { if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) { NavChild.style.display = 'none'; } } } var NavToggleText = document.createTextNode(isCollapsed ? NavigationBarShow : NavigationBarHide); NavToggle.appendChild(NavToggleText); // Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked) for(var j=0; j < NavFrame.childNodes.length; j++) { if (hasClass(NavFrame.childNodes[j], "NavHead")) { NavFrame.childNodes[j].appendChild(NavToggle); } } NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar); } } } $( createNavigationBarToggleButton ); /** Translate #REDIRECT * * Description: A workaround for bug 24114, "Redirect toolbar button doesn't insert localized version of #REDIRECT" * Original: http://meta.wikimedia.org/wiki/2010_Wikimedia_design_and_feature_change/Feedback/Archive_1#REDIRECT_button * Maintainers: [[:no:User:Sidhekin]] * Change: * must bind the function earlier to get the wanted effect * added try-catch but not sure if its necessary, the structures will always be defined * jeblad, 2011-05-12 */ (function(mw, $) { if ( window.wgWikiEditorEnabledModules && wgWikiEditorEnabledModules.toolbar ) { try { $( '#wpTextbox1' ).bind( 'wikiEditor-toolbar-buildSection-advanced', function( event, section ) { section.groups.insert.tools.redirect.action.options.pre = '#OMDIRIGERING [['; } ); } catch (e) { // Woopsie, die without a notice } } })(mediaWiki, jQuery); /** * Description: Modify parts of the toolbar to better suit this projects needs * Maintainer: */ (function(mw, $, undefined) { if ( $.fn.wikiEditor !== undefined ) { // Execute on load $( function() { // just to get rid of some errors function label(msg, txt, before, after) { var str = ''; if (before === undefined ? true : before) str += "{" + "{"; str += msg; if (after === undefined ? true : after) str += "}" + "}"; if (txt) str += " – " + txt; return str; } // just to get rid of some errors function pre(msg, txt, before) { var str = ''; if (before === undefined ? true : before) str += "{" + "{"; str += msg; if (txt) str += txt; return str; } // just to get rid of some errors function peri(msg, txt, before, after) { var str = ''; if (before === undefined ? true : before) str += "{" + "{"; str += msg; if (txt) str += txt; if (after === undefined ? true : after) str += "}" + "}"; return str; } // get timestamp for templates var now = new Date(); var timestamp = now.getUTCFullYear() + '-' + (now.getUTCMonth()<9 ? '0' : '') + (now.getUTCMonth()+1) + '-' + (now.getUTCDate()<9 ? '0' : '') + now.getUTCDate(); // add quote signs to the format group in the main section $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { 'section': 'main', 'group': 'format', 'tools': { 'quote': { label: 'Anførselstegn', type: 'button', icon: '//upload.wikimedia.org/wikipedia/commons/a/ac/Norwegian_quote_sign.png', action: { type: 'encapsulate', options: { pre: "«", //peri: "«»", post: "»" } } } } }); // add quote signs to the format group in the main section $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { 'section': 'main', 'group': 'format', 'tools': { 'link': { label: 'Lenkeparenteser', type: 'button', icon: '//upload.wikimedia.org/wikipedia/commons/b/ba/Norwegian_link_sign.png', action: { type: 'encapsulate', options: { pre: "[[", //peri: "[[]]", post: "]]" } } } } }); // add quote signs to the format group in the main section $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { 'section': 'main', 'group': 'format', 'tools': { 'link': { label: 'Malparenteser', type: 'button', icon: '//upload.wikimedia.org/wikipedia/commons/4/4a/Norwegian_template_sign.png', action: { type: 'encapsulate', options: { pre: "{{", //peri: "{{}}", post: "}}" } } } } }); // add an article mark menu in the advanced section $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { 'section': 'advanced', groups: { 'heading': { tools: { 'heading': { label: 'Vedlikehold', type: 'select', list: { 'template-neutral' : { label: label('Nøytralitet', 'artikkelen gir ikke en nøytral fremstilling'), action: { type: 'encapsulate', options: { pre: pre('Nøytralitet', '|ts=' + timestamp + '|'), post: '}}', ownline: false } } }, 'template-verifiable' : { label: label('Verifiserbar', 'artikkelen er ikke verifiserbar'), action: { type: 'encapsulate', options: { pre: pre('Verifiserbar', '|ts=' + timestamp + '|'), post: '}}', ownline: false } } }, 'template-research' : { label: label('Forskning', 'artikkelen inneholder originalforskning'), action: { type: 'encapsulate', options: { pre: pre('Forskning', '|ts=' + timestamp + '|'), post: '}}', ownline: false } } }, 'template-accuracy' : { label: label('Nøyaktighet', 'artikkelen har ikke en nøyaktig fremstilling'), action: { type: 'encapsulate', options: { pre: pre('Nøyaktighet', '|ts=' + timestamp + '|'), post: '}}', ownline: false } } }, 'template-spelling' : { label: label('Språkvask', 'artikkelens språk trenger en gjennomgang'), action: { type: 'encapsulate', options: { pre: pre('Språkvask', '|ts=' + timestamp + '|'), post: '}}', ownline: false } } }, 'template-format' : { label: label('Formatering', 'artikkelen trenger wikifisering'), action: { type: 'encapsulate', options: { pre: pre('Formatering', '|ts=' + timestamp + '|'), post: '}}', ownline: false } } }, 'template-workinprogress' : { label: label('Arbeid pågår', 'artikkelen er under arbeid'), action: { type: 'encapsulate', options: { pre: pre('Arbeid pågår', '|ts=' + timestamp + '|'), post: '}}', ownline: false } } } } } } } } }); // add a template menu in the advanced sectionined' ) { $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { 'section': 'advanced', groups: { 'heading': { tools: { 'heading': { label: 'Maler', type: 'select', list: { 'template-columns' : { label: label('kolonner', 'etterfølgende liste fordeles over flere kolonner'), action: { type: 'encapsulate', options: { pre: pre('kolonner', '|'), //peri: peri('columns'), post: '}}', ownline: true } } }, 'template-sorted-columns' : { label: label('sorterte kolonner', 'etterfølgende liste fordeles over flere sorterbare kolonner'), action: { type: 'encapsulate', options: { pre: pre('sorterte kolonner', '|tittel='), //peri: peri('columns'), post: '}}', ownline: true } } }, 'template-nowrap' : { label: label('nowrap', 'hindre linjeskift i tekst og tall'), action: { type: 'encapsulate', options: { pre: pre('nowrap', '|'), post: '}}', ownline: false } } }, 'template-formatnum' : { label: label('formatnum', 'tall med mellomrom og desimalkomma'), action: { type: 'encapsulate', options: { pre: pre('formatnum', ':'), post: '}}', ownline: false } } }, 'template-defaultsort' : { label: label('DEFAULTSORT', 'sortering på etternavn og lignende'), action: { type: 'encapsulate', options: { pre: pre('DEFAULTSORT', ':'), post: '}}', ownline: false } } } } } } } } }); // add a titles menu in the advanced section $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', { 'section': 'advanced', groups: { 'heading': { tools: { 'heading': { label: 'Titler', type: 'select', list: { 'titles-see-also' : { label: '== Se også == – interne lenker til andre prosjekter', action: { type: 'encapsulate', options: { pre: '== Se også ==', ownline: true } } }, 'titles-references' : { label: '== Referanser == – oppgitte referanser i teksten', action: { type: 'encapsulate', options: { pre: "== Referanser ==\n<references>\n", post: "\n</references>", ownline: true } } }, 'titles-literature' : { label: '== Litteratur == – oppgitt litteratur', action: { type: 'encapsulate', options: { pre: '== Litteratur ==', ownline: true } } }, 'titles-links' : { label: '== Eksterne lenker == – lenker til nettsteder', action: { type: 'encapsulate', options: { pre: '== Eksterne lenker ==', ownline: true } } } } } } } } }); }); } })(mediaWiki, jQuery);