MediaWiki:Common.js
Megjegyzés: közzététel után frissítened kell a böngésződ gyorsítótárát, hogy lásd a változásokat.
- Firefox / Safari: tartsd lenyomva a Shift gombot és kattints a Frissítés gombra a címsorban, vagy használd a Ctrl–F5 vagy Ctrl–R (Macen ⌘–R) billentyűkombinációt
- Google Chrome: használd a Ctrl–Shift–R (Macen ⌘–Shift–R) billentyűkombinációt
- Internet Explorer / Edge: tartsd nyomva a Ctrl-t, és kattints a Frissítés gombra, vagy nyomj Ctrl–F5-öt
- Opera: Nyomj Ctrl–F5-öt
/* Az ide elhelyezett JavaScript kód minden felhasználó számára lefut az oldalak betöltésekor. */
/*
== Képjegyzet ==
*/
if (mw.config.get('wgNamespaceNumber') != -1
&& mw.config.get('wgAction') && (mw.config.get('wgAction') == 'view' || mw.config.get('wgAction') == 'purge')
&& document.URL.search (/[?&]oldid=/) < 0
&& document.URL.search (/[?&]diff=/) < 0
&& mw.config.get('imageAnnotator.disabled', false) != true) {
mw.loader.load('//commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-ImageAnnotator.js&action=raw&ctype=text/javascript');
}
/*
== Becsukható <div> ==
*/
// ============================================================
// BEGIN Dynamic Navigation Bars (experimantal)
// set up the words in your language
var NavigationBarHide = '▲ becsuk';
var NavigationBarShow = '▼ kinyit';
// set up max count of Navigation Bars on page,
// if there are more, all will be hidden
// NavigationBarShowDefault = 0; // all bars will be hidden
// NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
var NavigationBarShowDefault = 0;
// 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 (NavChild.className == 'NavPic') {
NavChild.style.display = 'none';
}
if (NavChild.className == '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 (NavChild.className == 'NavPic') {
NavChild.style.display = 'block';
}
if (NavChild.className == '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
for(var i=0; NavFrame = document.getElementsByTagName("div")[i]; i++) {
// if found a navigation bar
if (NavFrame.className == "NavFrame") {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
var NavToggleText = document.createTextNode(NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
var NavLength = NavFrame.childNodes.length; //Menet közben valamiért bekerül a végére egy undefined gyerek
for(var j=0; j < NavLength; j++) {
if (NavFrame.childNodes[j].className == "NavHead") {
NavFrame.childNodes[j].appendChild(NavToggle);
}
}
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
// if more Navigation Bars found than Default: hide all
if (NavigationBarShowDefault < indexNavigationBar) {
for(var i=1; i<=indexNavigationBar; i++) {
toggleNavigationBar(i);
}
}
}
if (!fCreateNavigationBarToggleButton)
$(createNavigationBarToggleButton);
var fCreateNavigationBarToggleButton = 1;
// END Dynamic Navigation Bars
// ============================================================
/*
== Becsukható táblázat ==
* Az angol változattól annyiban tér el, hogy 'sticky' class esetén
* megjegyzi a tábla állapotát (lap-szinten, nem tábla-szinten).
* A lapneveket egy sütibe gyűjti -> csak kevés oldalon használd!
* TODO: collapseTable/createCollapseButtons átírása, hogy változót
* használjanak az id-s gányolás helyett, és a megjegyzés lehessen id-alapú
*/
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* Wikipedia:NavFrame.
* Maintainers: User:R. Koot
*/
var autoCollapse = 2;
var collapseCaption = "▲ becsuk";
var expandCaption = "▼ kinyit";
function collapseTable( tableIndex, sticky ) {
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
if ( !Table || !Button ) {
return false;
}
if (sticky) {
var closedTables = $.cookie('closedTables');
if (closedTables == null) closedTables = '';
var pageRE = new RegExp('\\b' + escapeRegexp(mw.config.get('wgPageName')) + '\\b');
}
var Rows = Table.getElementsByTagName( "tr" );
if ( Button.firstChild.data == collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = 'none';
}
Button.firstChild.data = expandCaption;
if (sticky && !closedTables.match(pageRE)) {
$.cookie('closedTables', closedTables + ' ' + mw.config.get('wgPageName'), {expires: 7});
}
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
if (sticky && closedTables.match(pageRE)) {
closedTables = closedTables.replace(pageRE, '').replace(/ /, ' ').replace(/(^ | $)/, '');
$.cookie('closedTables', closedTables, {expires:7});
}
}
}
function createCollapseButtons() {
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
for ( var i = 0; i < Tables.length; i++ ) {
if ( $(Tables[i]).hasClass("collapsible" ) ) {
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
if ( $( Tables[i]).hasClass("sticky" ) ) {
ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ", true);" );
} else {
ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ", false);" );
}
ButtonLink.appendChild( ButtonText );
Button.appendChild( ButtonLink );
var Header = Tables[i].getElementsByTagName( "tr" )[0].getElementsByTagName( "th" )[0];
/* only add button and increment count if there is a header row to work with */
if (Header) {
Header.insertBefore( Button, Header.childNodes[0] );
tableIndex++;
}
}
}
var closedTables = $.cookie('closedTables');
var pageRE = new RegExp('\\b' + escapeRegexp(mw.config.get('wgPageName')) + '\\b');
var isClosed = (closedTables && closedTables.match(pageRE));
for ( var i = 0; i < tableIndex; i++ ) {
if ( $(NavigationBoxes[i]).hasClass("sticky" ) ) {
if (isClosed) collapseTable( i );
}
else if ( $(NavigationBoxes[i]).hasClass("collapsed" ) || ( tableIndex >= autoCollapse && $(NavigationBoxes[i]).hasClass("autocollapse" ) ) ) {
collapseTable( i );
}
}
}
/*
== Legördülő menü és extra gombok az edittools-ba ==
*/
if (mw.config.get('wgAction') == 'edit' || mw.config.get('wgAction') == 'submit' || mw.config.get('wgPageName') == 'Special:Upload') { //scripts specific to editing pages
mw.loader.using( 'mediawiki.toolbar', function() {
var buttons = [
{
'id': "button-redirect",
'imageFile': "//upload.wikimedia.org/wikipedia/en/c/c8/Button_redirect.png",
'speedTip': "Átirányítás",
'tagOpen': "#ÁTIRÁNYÍTÁS [[",
'tagClose': "]]",
'sampleText': "Cél"
},
{
'id': "button-strike",
'imageFile': "//upload.wikimedia.org/wikipedia/en/c/c9/Button_strike.png",
'speedTip': "Áthúzott szöveg",
'tagOpen': "<s>",
'tagClose': "</s>",
'sampleText': "Áthúzott szöveg"
},
{
'id': "button-small",
'imageFile': "//upload.wikimedia.org/wikipedia/en/5/58/Button_small.png",
'speedTip': "Apró betűs szöveg",
'tagOpen': "<small>",
'tagClose': "</small>",
'sampleText': "Apró betűs szöveg"
},
{
'id': "button-teletype",
'imageFile': "//upload.wikimedia.org/wikipedia/commons/3/30/Tt_icon.png",
'speedTip': "Írógép-szöveg",
'tagOpen': "<tt>",
'tagClose': "</tt>",
'sampleText': "Fix szélességű szöveg"
},
{
'id': "button-insert-reflink",
'imageFile': "//upload.wikimedia.org/wikipedia/commons/7/79/Button_reflink.png",
'speedTip': "Forráshivatkozás",
'tagOpen': "<ref>",
'tagClose': "</ref>",
'sampleText': "Hivatkozás szövegének helye"
},
{
'id': "button-insert-reflist",
'imageFile': "//upload.wikimedia.org/wikipedia/commons/f/fe/Button_refs.png",
'speedTip': "Forráshivatkozás lábrész",
'tagOpen': "{" + "{Jegyzetek}}",
'tagClose': "",
'sampleText': ""
},
{
'id': "button-insert-templatelink",
'imageFile': "//upload.wikimedia.org/wikipedia/commons/e/eb/Button_plantilla.png",
'speedTip': "Sablon",
'tagOpen': "{{",
'tagClose': "}}",
'sampleText': "Példa sablon"
}
];
for ( var i = 0, len = buttons.length; i < len; i++ ) {
mw.toolbar.addButton(
buttons[i].imageFile,
buttons[i].speedTip,
buttons[i].tagOpen,
buttons[i].tagClose,
buttons[i].sampleText,
buttons[i].id,
buttons[i].id
);
}
});
}
/*
== Extra gombok WikiEditorhoz (fejlett eszköztár) ==
*/
// WikiEditor toolbar customization
$(function() {
if ( typeof $.wikiEditor != "undefined" ) {
$( '#wpTextbox1' ).on( 'wikiEditor-toolbar-buildSection-main', function( event, section ) {
if (mw.config.get('wgUserLanguage')=='hu') {
// change bold/italic icon
var tools = section.groups.format.tools;
if ( !( 'hu' in tools.bold.icon ) ) {
tools.bold.icon['hu'] = 'format-bold-F.png'; // no need for full URL because this one exists in default Vector icon set
}
if ( !( 'hu' in tools.italic.icon ) ) {
tools.italic.icon['hu'] = '//upload.wikimedia.org/wikipedia/commons/6/6a/Toolbaricon_italic_D.png';
}
}
// change signature to en dash
if (section.groups.insert.tools.signature) {
section.groups.insert.tools.signature.action.options.pre = '–\u00a0~~' + '~~';
}
});
// special characters
$( '#wpTextbox1' ).on( 'wikiEditor-toolbar-buildSection-characters', function( event, section ) {
var paren = function(left, right) {
return { label: left + right, action: { type: 'encapsulate', options: { pre: left, post: right } } };
};
var pages = {
basic: {
layout: 'characters',
label: 'Alap',
characters: [ 'á', 'é', 'í', 'ó', 'ö', 'ő', 'ú', 'ü', 'ű', 'Á', 'É', 'Í', 'Ó', 'Ö', 'Ő', 'Ú', 'Ü', 'Ű',
'~', '|', '#', paren('„', '”'), paren('»', '«'), paren('’', '’'), '’', '–', '…', paren('<', '>'), '°', '‰',
'×', '→', '∅', 'µ', '²', '³', '½', '⅓', '⅔', '¼', '¾', '€', '§', '†', '‡', '©', '®', '•', '·', ' ', '‑' ]
}
};
for (var i in section.pages) {
pages[i] = section.pages[i];
}
section.pages = pages;
});
}
});