MediaWiki:Common.js
Izgled
Napomena: Nakon što objavite izmjene, možda ćete morati osvježiti keš preglednika da biste vidjeli izmjene.
- Firefox / Safari: Držite Shift i kliknite na Reload ili pritisnite Ctrl-F5 ili Ctrl-R (⌘-R na Macu)
- Google Chrome: Pritisnite Ctrl-Shift-R (⌘-Shift-R na Macu)
- Internet Explorer / Edge: Držite Ctrl i kliknite na Refresh ili pritisnite Ctrl-F5
- Opera: Pritisnite Ctrl-F5.
/**
* Main Page layout fixes
*
* Description: Adds an additional link to the complete list of languages available.
* Maintainers: [[User:AzaToth]], [[User:R. Koot]], [[User:Alex Smotrov]]
*/
if ( mw.config.get('wgPageName') === 'Početna_strana' || mw.config.get('wgPageName') === 'Razgovor:Početna_strana' ) {
$( function () {
mw.util.addPortletLink( 'p-lang', '//meta.wikimedia.org/wiki/List_of_Wikipedias',
'Svi jezici', 'interwiki-completelist', 'Spisak svih Wikipedija' );
} );
}
/*
</pre>
==addLoadEvent==
<pre> */
function addLoadEvent(func) {
if (window.addEventListener)
window.addEventListener("load", func, false);
else if (window.attachEvent)
window.attachEvent("onload", func);
}
/* </pre>
/** Interwiki links to featured articles ***************************************
*
* Description: Highlights interwiki links to featured articles (or
* equivalents) by changing the bullet before the interwiki link
* into a star.
* Maintainers: [[User:R. Koot]]
*/
function LinkFA()
{
if ( document.getElementById( "p-lang" ) ) {
var InterwikiLinks = document.getElementById( "p-lang" ).getElementsByTagName( "li" );
for ( var i = 0; i < InterwikiLinks.length; i++ ) {
var className = InterwikiLinks[i].className.match(/interwiki-[-\w]+/);
if ( document.getElementById( className + '-fa' ) && InterwikiLinks[i].className.indexOf( 'badge-featuredarticle' ) === -1 ) {
InterwikiLinks[i].className += " FA"
InterwikiLinks[i].title = "Dobri članci na drugim Wikipedijama.";
} else if ( document.getElementById( className + '-ga' ) && InterwikiLinks[i].className.indexOf( 'badge-goodarticle' ) === -1 ) {
InterwikiLinks[i].className += " GA"
InterwikiLinks[i].title = "Odabrani članci na drugim Wikipedijama.";
}
}
}
}
$(LinkFA);
/* </pre>
===PageNumbers===
<pre> */
function PageNumbers() {
var indexNavigationBar = 0;
// iterate over all < span >-elements until class "PageNumber" is found
for(
var i=0;
SpanElem = document.getElementsByTagName("span")[i];
i++
) {
// if found a page number
if (SpanElem.className == "PageNumber") {
SpanElem.style.display = 'none';
var PageDisplay = document.createElement("li");
PageDisplay.setAttribute('id', 't-pagenumberdisplay');
var PageDisplayLink = document.createElement("a");
PageNumberText = document.createTextNode("");
PageDisplayLink.appendChild(PageNumberText);
PageDisplay.appendChild(PageDisplayLink);
var SpecialPageLink = document.getElementById("t-specialpages");
SpecialPageLink.parentNode.appendChild(PageDisplay);
displayPageNumbers(DisplayPageNumbersDefault);
break;
}
}
}
/* </pre>
===displayPageNumbers===
<pre> */
function displayPageNumbers(bool) {
SetCookie ("DisplayPageNumbers",bool);
var PageDisplayLink = document.getElementById("t-pagenumberdisplay").firstChild;;
// iterate over all < span >-elements
for(
var i=0;
SpanElem = document.getElementsByTagName("span")[i];
i++
) {
// if found a page number
if (SpanElem.className == "PageNumber") {
// if page number shall be displayed
if(bool==true && SpanElem.style.display=='none') {
SpanElem.style.display = 'inline';
//SpanElem.style.color = '#000000';
//SpanElem.style.fontWeight = 'bold';
PageDisplayLink.firstChild.data = ("Seitenzahlen ausblenden");
PageDisplayLink.setAttribute('href', 'javascript:displayPageNumbers(!DisplayPageNumbersDefault);');
}
// if page number shall be hidden
if(bool==false) {
SpanElem.style.display = 'none';
PageDisplayLink.firstChild.data = ("Seitenzahlen einblenden");
PageDisplayLink.setAttribute('href', 'javascript:displayPageNumbers(!DisplayPageNumbersDefault);');
}
}
}
DisplayPageNumbersDefault = bool;
}
/* </pre>
==Annotations==
<pre> */
//default setting, may be overridden by user
var DisplayAnnotationsDefault = true;
function Annotations() {
var indexNavigationBar = 0;
// iterate over all < span >-elements until class "Annotation" is found
for(
var i=0;
SpanElem = document.getElementsByTagName("span")[i];
i++
) {
// if found a annotation
if (SpanElem.className == "Annotation") {
SpanElem.style.display = 'none';
var AnnotationDisplay = document.createElement("li");
AnnotationDisplay.setAttribute('id', 't-annotationdisplay');
var AnnotationDisplayLink = document.createElement("a");
AnnotationText = document.createTextNode("");
AnnotationDisplayLink.appendChild(AnnotationText);
AnnotationDisplay.appendChild(AnnotationDisplayLink);
var SpecialPageLink = document.getElementById("t-specialpages");
SpecialPageLink.parentNode.appendChild(AnnotationDisplay);
displayAnnotations(DisplayAnnotationsDefault);
break;
}
}
}
/* </pre>
===displayAnnotations===
<pre> */
function displayAnnotations(bool) {
var AnnotationDisplayLink = document.getElementById("t-annotationdisplay").firstChild;;
// iterate over all < span >-elements
for(
var i=0;
SpanElem = document.getElementsByTagName("span")[i];
i++
) {
// if found a page number
if (SpanElem.className == "Annotation") {
// if page number shall be displayed
if(bool==true) {
SpanElem.style.display = 'inline';
AnnotationDisplayLink.firstChild.data = ("Anmerkungen ausblenden");
AnnotationDisplayLink.setAttribute('href', 'javascript:displayAnnotations(!DisplayAnnotationsDefault);');
}
// if page number shall be hidden
if(bool==false) {
SpanElem.style.display = 'none';
AnnotationDisplayLink.firstChild.data = ("Anmerkungen einblenden");
AnnotationDisplayLink.setAttribute('href', 'javascript:displayAnnotations(!DisplayAnnotationsDefault);');
}
}
}
DisplayAnnotationsDefault = bool;
}
/* </pre>
==LineBreaks==
<pre> */
//default setting, may be overridden by user
var DisplayLineBreaksDefault = true;
function LineBreaks() {
var indexNavigationBar = 0;
// iterate over all < span >-elements until class "LineBreak" is found
for(
var i=0;
SpanElem = document.getElementsByTagName("span")[i];
i++
) {
// if found a lbr
if (SpanElem.className == "LineBreak") {
SpanElem.style.display = 'none';
var LineBreakDisplay = document.createElement("li");
LineBreakDisplay.setAttribute('id', 't-linebreakdisplay');
var LineBreakDisplayLink = document.createElement("a");
LineBreakText = document.createTextNode("");
LineBreakDisplayLink.appendChild(LineBreakText);
LineBreakDisplay.appendChild(LineBreakDisplayLink);
var SpecialPageLink = document.getElementById("t-specialpages");
SpecialPageLink.parentNode.appendChild(LineBreakDisplay);
displayLineBreaks(DisplayLineBreaksDefault);
break;
}
}
}
/* </pre>
===displayLineBreaks===
<pre> */
function displayLineBreaks(bool) {
var LineBreakDisplayLink = document.getElementById("t-linebreakdisplay").firstChild;;
// iterate over all < span >-elements
for(
var i=0;
SpanElem = document.getElementsByTagName("span")[i];
i++
) {
// if found a page number
if (SpanElem.className == "LineBreak") {
// if page number shall be displayed
if(bool==true) {
SpanElem.style.display = 'inline';
LineBreakDisplayLink.firstChild.data = ("Zeilenumbrüche ausblenden");
LineBreakDisplayLink.setAttribute('href', 'javascript:displayLineBreaks(!DisplayLineBreaksDefault);');
}
// if lbr shall be hidden
if(bool==false) {
SpanElem.style.display = 'none';
LineBreakDisplayLink.firstChild.data = ("Zeilenumbrüche einblenden");
LineBreakDisplayLink.setAttribute('href', 'javascript:displayLineBreaks(!DisplayLineBreaksDefault);');
}
}
}
DisplayLineBreaksDefault = bool;
}
/* </pre>
==interwikiExtra==
<pre> */
function interwikiExtra() {
// iterate over all <span>-elements
for(var i=0; a = document.getElementsByTagName("span")[i]; i++) {
// if found a linkInfo span
if(a.className == "interwiki-info") {
// iterate over all <li>-elements
var count=0;
for(var j=0; b = document.getElementsByTagName("li")[j]; j++) {
if(b.className == "interwiki-" + a.id && b.className.indexOf("badge-featuredarticle") === -1 && b.className.indexOf("badge-goodarticle") === -1) {
b.innerHTML = b.innerHTML + " " + mw.html.escape(a.title);
if(a.title == "(OV)") { b.title = "Originaltext"; }
}
else if(b.className == "interwiki-" + a.id.substr(0,a.id.length-1)) {
count = count+1;
if(a.id.charAt(a.id.length-1) == count) {
b.innerHTML = b.innerHTML + " " + mw.html.escape(a.title);
}
}
}
}
if(a.className == "AndereVersion") {
p = a.title.indexOf("|");
pvers = document.getElementById("p-version");
if (pvers == null) {
c = document.getElementById("column-one");
c.innerHTML = c.innerHTML
+ "<div class=\"portlet\" id=\"p-version\">"
+ "<h5>Andere Versionen</h5>"
+ "<div class=\"pBody\">"
+ "<ul>"
+ "</ul>"
+ "</div>";
pvers = document.getElementById("p-version");
}
e = pvers.getElementsByTagName("ul")[0];
e.innerHTML = e.innerHTML
+ "<li class=\"\"><a href='"
+ a.title.substr(0,p).replace("'", ''')
+ "'>" + mw.html.escape( a.title.substr(p+1,a.title.length-1) ) + "</a> " +"</li>"
}
if(a.className == "AnderesFormat") {
p = a.title.indexOf("|");
pvers = document.getElementById("p-format");
if (pvers == null) {
c = document.getElementById("column-one");
c.innerHTML = c.innerHTML
+ "<div class=\"portlet\" id=\"p-format\">"
+ "<h5>Andere Formate</h5>"
+ "<div class=\"pBody\">"
+ "<ul>"
+ "</ul>"
+ "</div>";
pvers = document.getElementById("p-format");
}
e = pvers.getElementsByTagName("ul")[0];
e.innerHTML = e.innerHTML
+ "<li class=\"\"><a href=':"
+ a.title.substr(0,p).replace("'", ''')
+ "'>" + mw.html.escape( a.title.substr(p+1,a.title.length-1) ) + "</a> " +"</li>"
}
}
}
/* </pre>
==BilingualLink==
<pre> */
function BilingualLink() {
if( document.body.className.substring(0,4) != "ns-0" ) return;
var doc_url = document.URL;
var url = '';
// iterate over all <li>-elements
for(var j=0; b = document.getElementsByTagName("li")[j]; j++) {
if(b.className.substring(0,10) == "interwiki-" ) {
var lang = b.className.substring(10,b.className.length);
if( doc_url.indexOf('?title=') != -1 ) {
var qm = doc_url.indexOf('&match=');
if( qm != -1 ) url = doc_url.substring(0,qm)+"&match="+lang;
else url = doc_url+"&match="+lang;
} else {
var qm = doc_url.indexOf('?');
if( qm != -1 ) url = doc_url.substring(0,qm)+"?match="+lang;
else url = doc_url+"?match="+lang;
}
b.innerHTML = b.innerHTML+
"<a href='"+url+"'> ⇔</a>";
}
}
}
/* </pre>
==ProofReadLink==
<pre> */
function ProofReadLink () {
// iterate over all < span >-elements until class "ProofRead" is found
for(
var i=0;
SpanElem = document.getElementsByTagName("span")[i];
i++
) {
// if found a page number
if (SpanElem.className == "ProofRead") {
ImageSrc=SpanElem.title;
var ProofReadTab = document.createElement("li");
ProofReadTab.setAttribute('id', 'ca-proofread');
var ProofReadTabLink = document.createElement("a");
ProofReadTabLink.href=document.getElementById("ca-edit").firstChild.href + "&image="+ImageSrc;
ProofReadTabText = document.createTextNode("Korrekturlesen");
ProofReadTabLink.appendChild(ProofReadTabText);
ProofReadTab.appendChild(ProofReadTabLink);
var VersionLink = document.getElementById("ca-history");
VersionLink.parentNode.appendChild(ProofReadTab);
break;
}
}
}
/* </pre>
==Only If Editing==
<pre> */
//Vordefinition für eigene Sonderzeichenleiste
MyChar = new Array();
MyCharText = new Array();
MyCharEnd = new Array();
MyCharDefault = new Array();
//Im Bearbeitungsmodus?
var isEditing = document.URL.indexOf("action=edit") > 0 || document.URL.indexOf("action=submit") > 0;
// ============================================================
// BEGIN import Onlyifediting-functions (z.B. für Dropdown-Leiste zum Einfügen von Sonderzeichen)
// Optionen für das Sonderzeichenmenü in [[MediaWiki:Edittools]]
// wird in [[MediaWiki:Monobook.js]] ganz unten eingebunden
// Diese Variablen können in den Benutzer-Javascripts angepasst werden
/* </pre>
===addEditButton===
<pre> */
//The cleaner way to add an editbar button.
function addEditButton(imageFile, tagOpen, sampleText, tagClose, speedTip)
{
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "/media/wikipedia/" +
imageFile,
"tagOpen": tagOpen,
"sampleText": sampleText,
"tagClose": tagClose,
"speedTip": speedTip
};
}
/* </pre>
====addEditButtons====
<pre> */
//Don't wait for onload for adding the mwCustom buttons...build this table before the page loads, so wikibits.js knows to display them.
addEditButton( 'commons/3/30/Btn_toolbar_rayer.png',
'<s>', 'Prekriži', '</s>', 'Prekriži');
addEditButton( 'commons/8/88/Btn_toolbar_enum.png',
'# ', '1', '\n# 2\n# 3', 'Numerisana lista');
addEditButton( 'commons/1/11/Btn_toolbar_liste.png',
'* ', 'A', '\n* B\n* C', 'Lista');
addEditButton( 'commons/9/9e/Btn_toolbar_gallery.png',
'\n<gallery>\n', 'Slika:Slika.jpg|Opis',
'\nSlika:Neka druga slika.jpg|Opis\nSlika:Treća slika.jpg ' +
'|Opis\n</gallery>', 'Galerija');
addEditButton( 'commons/3/37/Btn_toolbar_commentaire.png',
'<!--', 'Komentar', '-->', 'Komentar');
addEditButton( 'commons/e/ee/Button_redirect-hr.png',
'#Preusmjeri [[', '{{subst:lcfirst:{{PAGENAME}}}}',
']]', 'Cilj preusmjeravanja');
addEditButton( 'commons/5/5f/Button_center.png',
'<center>', 'primjer', '</center>', 'Centrirani tekst');
addEditButton( 'commons/e/e9/Button_headline2.png',
'\n===', 'Drugi podnaslov', '===', 'Drugi podnaslov');
addEditButton( 'commons/8/8e/Button_shifting.png', ':',
'Pomakni u desno', ':', 'Pomakni u desno');
addEditButton( 'commons/1/17/Button_small_2.png', '<small>',
'Smanjen tekst', '</small>', 'Smanjen tekst');
addEditButton( 'commons/6/6a/Button_sup_letter.png', '<sup>',
'Faktor tekst', '</sup>', 'Faktor');
addEditButton( 'commons/a/aa/Button_sub_letter.png', '<sub>',
'Subscript', '</sub>', 'Subscript');
addEditButton( 'commons/9/93/Button_sub_link.png',
'[[Stranica#', 'Podnaslov', ']]', 'Podnaslov');
addEditButton( 'commons/f/fd/Button_blockquote.png',
'<blockquote style="border: 1px solid blue; padding: ' +
'2em;">\n',
'primjer', '\n</blockquote>', 'Citat u okviru');
//addEditButton( 'commons/1/13/Button_enter.png', '<br />', '', '',
// 'Novi red');
/* </pre>
===InsertTagsValue===
<pre> */
//Autoinkrement-Tags
function insertTagsValue(uchar, ucharend, uchardefault, ucharnr) {
var txtarea = document.editform.wpTextbox1;
// IE
if (document.selection && !is_gecko) {
var theSelection = document.selection.createRange().text;
// Mozilla
} else if(txtarea.selectionStart || txtarea.selectionStart == '0') {
var replaced = false;
var startPos = txtarea.selectionStart;
var endPos = txtarea.selectionEnd;
if (endPos-startPos)
replaced = true;
var scrollTop = txtarea.scrollTop;
var theSelection = (txtarea.value).substring(startPos, endPos);
}
if (theSelection == "") {
if(!(lastVal = GetCookie("CharDefaultValue-"+ ucharnr))) lastVal ="0";
theSelection= parseInt(lastVal)+parseInt(uchardefault.substr(1));
theSelection= theSelection.toString();
}
SetCookie("CharDefaultValue-"+ ucharnr,theSelection);
insertTags(uchar,ucharend,theSelection);
}
/* </pre>
===ProofReading===
<pre> */
//Height of ProofReadDiv
var DivHeight=0;
function ProofReading () {
if (window.location.search.indexOf("image=") != -1) {
var ImageString = window.location.search.substring(window.location.search.indexOf("image=")+6,window.location.search.length);
if (ImageString != "") {
TextBoxRows= document.getElementsByName("wpTextbox1")[0].getAttribute('rows');
TextBoxRows=Math.ceil(TextBoxRows/2);
document.getElementsByName("wpTextbox1")[0].setAttribute('rows',TextBoxRows);
var ImageFrame = "<div id=\"ImageFrame\">" + ImageFrameContent(ImageString) + "</div>";
document.getElementById("contentSub").innerHTML += ImageFrame
}
}
}
/* </pre>
====ImageFrameContent====
<pre> */
function ImageFrameContent(ImageString) {
if (DivHeight == 0) {
if(document.selection && !is_gecko) {
//IE:
DivHeight=Math.ceil(document.body.clientHeight*0.5)+"px";
} else {
//andere:
DivHeight=Math.ceil(window.innerHeight*0.4)+"px";
}
}
var ZoomInIcon = "<a href=\"javascript:Zoom(50)\"><img src=\"/media/wikipedia/commons/4/48/Magnifier_zoom_in.png\" title=\"vergrößern\" width=24 height=24></a>";
var ZoomOutIcon = "<a href=\"javascript:Zoom(-50)\"><img src=\"/media/wikipedia/commons/9/92/Magifier_zoom_out.png\" title=\"verkleinern\" width=24 height=24></a>";
var ZoomStdIcon = "<a href=\"javascript:Zoom(0)\"><img src=\"/media/wikipedia/commons/7/79/Magnifier.png\" title=\"Fensterbreite\" width=24 height=24></a>";
var ImageFrame = ZoomOutIcon + " " + ZoomStdIcon + " " + ZoomInIcon;
var ImageApp = /\.png$|\.jpeg$|\.jpg$|\.gif$/;
if (ImageApp.test(ImageString) == true) {
ImageFrame += "<div style=\"overflow: scroll; height: " + DivHeight + "; width: 100%;\">";
ImageFrame += "<img onerror=\"ImageError('"+ ImageString+"')\" id=\"ProofReadImage\" src=\""+ GetImageUrl(ImageString) +"\" alt=\""+ GetImageUrl(ImageString) +"\"";
if (GetCookie("PrImageWidth")) {
ImageFrame +="width = \"" + GetCookie("PrImageWidth") +"\"";
}
ImageFrame += "></div>";
} else {
ImageFrame += "<iframe id=\"ProofReadImage\" src=\""+ GetImageUrl(ImageString) +"\" style=\"height: " + DivHeight + "; width: 100%;\">";
}
return ImageFrame
}
/* </pre>
====GetImageUrl====
<pre> */
function GetImageUrl(name) {
var retval = name;
if (name.indexOf("http:") != 0) retval = "index.php/Special:Filepath/" + name;
return retval;
}
function ImageError(imagename) {
if (document.getElementById("ProofReadImage").src.indexOf("commons") == -1 && document.getElementById("ProofReadImage").src.indexOf("Special:Filepath") != -1) {
//image not from commons
document.getElementById("ProofReadImage").src = "//commons.wikimedia.org/wiki/Special:Filepath/" + imagename;
}
}
function Zoom(value) {
PrImage = document.getElementById("ProofReadImage");
if (value == 0) PrImage.width = document.getElementById("ImageFrame").offsetWidth-15;
else PrImage.width=PrImage.width+value;
SetCookie("PrImageWidth",PrImage.width);
if(document.selection && !is_gecko) {
//IE:
document.getElementById("ImageFrame").innerHTML = ImageFrameContent(PrImage.src);
}
}
addLoadEvent(ProofReading);
// END import Onlyifediting-functions
// ============================================================
addLoadEvent( LinkFA );
addLoadEvent( interwikiExtra );
addLoadEvent( BilingualLink );
addLoadEvent( PageNumbers );
addLoadEvent( Annotations );
addLoadEvent( LineBreaks );
addLoadEvent( ProofReadLink );
/* </pre>
==doRedirect==
<pre> */
/* Redirect if a case-insensitive search on an external link is found */
function doRedirect() {
dym = document.getElementById('did-you-mean')
if ( dym ) {
var dymtarget = dym.firstChild.title ;
var target = dymtarget ;
pagetitle = document.getElementsByTagName('h1').item(0).firstChild.nodeValue;
if (pagetitle == target) {
alert('No looping allowed.');
return;
}
if ( pagetitle.toLowerCase().replace(/[^a-z]/g, "") != target.toLowerCase().replace(/[^a-z]/g, "") ) {
alert(target + " does not match " + pagetitle);
return;
}
if ( pagetitle.search(/Editing /g) != -1 ) return;
pagenamee = pagetitle.replace(/\ /g, "_");
document.location.replace( 'http://bs.wikipedia.org/wiki/Posebno:Search/' + pagenamee ) ;
}
}
/* </pre>
==fixEditSectionWikifiedLinks==
<pre> */
// edit-section still doesn't return to correct spot if link contains a [[wikified]] term.
function fixEditSectionWikifiedLinks() {
if (/\.5B/.test(window.location.href)) {
var url=window.location.href.replace(/.5B.5B:/g,"").replace(/.5B/g, "").replace(/.5D/g, "");
window.location = url;
}
//removed check for 7B/7D
}
/* </pre>
==mainCustomizeWikipedia==
<pre> */
/* do any Wikipedia-specific customizations */
function mainCustomizeWikipedia() {
doRedirect();
fixEditSectionWikifiedLinks();
}
addLoadEvent(mainCustomizeWikipedia) ;
/* </pre>
==Kill Main Page==
<pre> */
//Sakrij "Početna strana" naslov
var mpTitle = "Početna strana";
var isMainPage = (document.title.substr(0, document.title.lastIndexOf(" - ")) == mpTitle);
var isDiff = (document.location.search && (document.location.search.indexOf("diff=") != -1 || document.location.search.indexOf("oldid=") != -1));
if (isMainPage && !isDiff) mw.util.addCSS('#lastmod, #siteSub, #contentSub, h1.firstHeading { display: none !important; } ');
setModifySectionStyle = function()
{
try {
if (!(typeof oldEditsectionLinks == 'undefined' || oldEditsectionLinks == false)) return;
var spans = document.getElementsByTagName("span");
for (var s = 0; s < spans.length; ++s) {
var span = spans[s];
if (span.className == "editsection") {
span.style.fontSize = "xx-small";
span.style.fontWeight = "normal";
span.style.cssFloat = span.style.styleFloat = "none";
span.className = "editsectionmoved";
span.parentNode.appendChild(document.createTextNode(" "));
span.parentNode.appendChild(span);
}
}
} catch (e) { /* something went wrong */ }
}
$(setModifySectionStyle);
/* </pre> */
/* Configuration for "star" logo at the top of Featured Articles */
function StarFA() {
if (document.getElementById("FA")) {
// Monobook.css will take over styling from here
document.body.className += " FA";
// Iterate over all <h1> elements - this loop is optional
for (var i = 0; a = document.getElementsByTagName("h1")[i]; i++) {
// Apply a tooltip to the article title, which includes the little star
if (a.className == "firstHeading") {
a.title = "Ovaj članak ima status odabranog članka";
}
}
}
}
addLoadEvent(StarFA);
/* Any JavaScript here will be loaded for all users on every page load. */
//<source lang="javascript">
/** JSconfig (old version, to be replaced soon) ************
* Global configuration options to enable and disable specific
* script features from [[MediaWiki:Common.js]]
* Override these default settings in your [[Special:Mypage/monobook.js]]
* for Example: JSconfig.loadAutoInformationTemplate = false;
*
* Maintainer: [[User:Dschwen]]
*/
var JSconfig_old =
{
loadAutoInformationTemplate : true,
specialSearchEnhanced : true,
subPagesLink : true,
attributeSelf : true,
userUploadsLink : true
}
/** includePage ************
* force the loading of another JavaScript file
*
* Author: [[:en:User:Dschwen|User:Dschwen]]
*/
function includePage( name )
{
mw.loader.load(wgScript + '?title=' + name + '&action=raw&ctype=text/javascript');
}
// Scripts for Special:Upload have been moved to [[MediaWiki:Upload.js]]
if ( (mw.config.get('wgPageName') == 'Special:Upload') || (mw.config.get('wgPageName') == 'Posebno:Upload') )
{
includePage( 'MediaWiki:Upload.js' );
}
/** WikiMiniAtlas *******************************************************
*
* Description: WikiMiniAtlas is a popup click and drag world map.
* This script causes all of our coordinate links to display the WikiMiniAtlas popup button.
* The script itself is located on meta because it is used by many projects.
* See [[Meta:WikiMiniAtlas]] for more information.
* Created by: [[User:Dschwen]]
*/
mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript');
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
var autoCollapse = 2;
var collapseCaption = "sakrij";
var expandCaption = "pokaži";
function collapseTable( tableIndex ) {
var Button = document.getElementById( 'collapseButton' + tableIndex );
var Table = document.getElementById( 'collapsibleTable' + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
var i;
if ( Button.firstChild.data === collapseCaption ) {
for ( i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = 'none';
}
Button.firstChild.data = expandCaption;
} else {
for ( i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
}
function createClickHandler( tableIndex ) {
return function ( e ) {
e.preventDefault();
collapseTable( tableIndex );
};
}
function createCollapseButtons() {
var tableIndex = 0;
var NavigationBoxes = {};
var Tables = document.getElementsByTagName( 'table' );
var i;
for ( i = 0; i < Tables.length; i++ ) {
if ( $( Tables[i] ).hasClass( 'collapsible' ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( 'tr' )[0];
if ( !HeaderRow ) {
continue;
}
var Header = HeaderRow.getElementsByTagName( 'th' )[0];
if ( !Header ) {
continue;
}
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 );
// Styles are declared in [[MediaWiki:Common.css]]
Button.className = 'collapseButton';
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( 'id', 'collapseButton' + tableIndex );
ButtonLink.setAttribute( 'href', '#' );
$( ButtonLink ).on( 'click', createClickHandler( tableIndex ) );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( '[' ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( ']' ) );
Header.insertBefore( Button, Header.firstChild );
tableIndex++;
}
}
for ( i = 0; i < tableIndex; i++ ) {
if ( $( NavigationBoxes[i] ).hasClass( 'collapsed' ) ||
( tableIndex >= autoCollapse && $( NavigationBoxes[i] ).hasClass( 'autocollapse' ) )
) {
collapseTable( i );
}
else if ( $( NavigationBoxes[i] ).hasClass ( 'innercollapse' ) ) {
var element = NavigationBoxes[i];
while ((element = element.parentNode)) {
if ( $( element ).hasClass( 'outercollapse' ) ) {
collapseTable ( i );
break;
}
}
}
}
}
mw.hook( 'wikipage.content' ).add( createCollapseButtons );
/**
* Dynamic Navigation Bars (experimantal)
*/
// 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
**/
window.toggleNavigationBar = function ( indexNavigationBar, event ) {
var NavToggle = document.getElementById( 'NavToggle' + indexNavigationBar );
var NavFrame = document.getElementById( 'NavFrame' + indexNavigationBar );
var NavChild;
if ( !NavFrame || !NavToggle ) {
return false;
}
/* if shown now */
if ( NavToggle.firstChild.data === NavigationBarHide ) {
for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavContent' ) || $( NavChild ).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = NavigationBarShow;
/* if hidden now */
} else if ( NavToggle.firstChild.data === NavigationBarShow ) {
for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavContent' ) || $( NavChild ).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = NavigationBarHide;
}
event.preventDefault();
};
/* adds show/hide-button to navigation bars */
function createNavigationBarToggleButton() {
var indexNavigationBar = 0;
var NavFrame;
var NavChild;
/* iterate over all < div >-elements */
var divs = document.getElementsByTagName( 'div' );
for ( var i = 0; (NavFrame = divs[i]); i++ ) {
/* if found a navigation bar */
if ( $( NavFrame ).hasClass( 'NavFrame' ) ) {
indexNavigationBar++;
var NavToggle = document.createElement( 'a' );
NavToggle.className = 'NavToggle';
NavToggle.setAttribute( 'id', 'NavToggle' + indexNavigationBar );
NavToggle.setAttribute( 'href', '#' );
$( NavToggle ).on( 'click', $.proxy( window.toggleNavigationBar, window, indexNavigationBar ) );
var isCollapsed = $( NavFrame ).hasClass( '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 ( NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavPic' ) || $( NavChild ).hasClass( 'NavContent' ) ) {
if ( NavChild.style.display === 'none' ) {
isCollapsed = true;
}
}
}
if ( isCollapsed ) {
for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavPic' ) || $( NavChild ).hasClass( '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 ( $( NavFrame.childNodes[j] ).hasClass( 'NavHead' ) ) {
NavToggle.style.color = NavFrame.childNodes[j].style.color;
NavFrame.childNodes[j].appendChild( NavToggle );
}
}
NavFrame.setAttribute( 'id', 'NavFrame' + indexNavigationBar );
}
}
}
mw.hook( 'wikipage.content' ).add( createNavigationBarToggleButton );
/* Test if an element has a certain class **************************************
*
* Description: Uses regular expressions and caching for better performance.
* Maintainers: [[User:Mike Dillon]], [[User:R. Koot]], [[User:SG]]
*/
var hasClass = (function () {
var reCache = {};
return function (element, className) {
return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
};
})();
/*
* Za Šablon:Naslov ikona
*/
var featuredStarToHeader = function(fsID){
var fs = document.getElementById(fsID);
if (!fs) return;
var tl = document.getElementById('firstHeading');
var fi = fs.getElementsByTagName('img')[0];
fi.setAttribute('width',19);
fi.setAttribute('height',18);
fi.src = fi.src.replace('/16px','/19px');
tl.appendChild(fs);
}
$(function(){featuredStarToHeader('featured-star')})
$(function(){featuredStarToHeader('featured-group')})
/**
* getElementsByClass : za toggle-funkciju
*/
function getElementsByClass(searchClass, node, tag) {
if (node == null) node = document;
if (tag == null) tag = '*';
return $.makeArray( $(node).find(tag+'.'+searchClass) );
}
/**
* Script za toggle-funkciju
*/
function ToggleBox_Init(Element){
if(!Element) Element = document.body;
var cont = getElementsByClass('img_toggle', Element, 'div');
if(cont.length==0) return;
for (var i = 0,m=cont.length; i < m ; i++) {
cont[i].id = 'img_toggle_' + i;
var Boxes = getElementsByClass('togglebox',cont[i]);
var ToggleLinksDiv = document.createElement('ul');
ToggleLinksDiv.id = 'toggleboxToggleLinks_' + i;
for(var a=0,l=Boxes.length;a<l;a++){
var ThisBox = Boxes[a];
ThisBox.id = 'togglebox_' + i + "_" + a;
ThisBox.style.borderTop='0';
var ThisAlt = ThisBox.getElementsByTagName('img')[0].alt;
var toggle = document.createElement('a');
toggle.id = 'toggleboxToggle_' + i + "_" + a;
toggle.appendChild(document.createTextNode(ThisAlt));
toggle.href='javascript:;';
toggle.onclick = function(){
ToggleBox_Toggle(this);
return false;
};
var Li = document.createElement('li');
Li.appendChild(toggle);
ToggleLinksDiv.appendChild(Li);
if(a==(l-1)){
Li.style.display = "none";
}else{
ThisBox.style.display = "none";
}
}
cont[i].appendChild(ToggleLinksDiv);
}
}
function ToggleBox_Toggle(link){
var ImgToggleIndex = link.id.split('toggleboxToggle_').join('').replace(/_.*/g, "");
var ToggleBoxIndex = link.id.replace(/.*_/g, "");
var ImageToggle = document.getElementById('img_toggle_' + ImgToggleIndex);
var Links = document.getElementById('toggleboxToggleLinks_' + ImgToggleIndex);
var Togglebox = document.getElementById('togglebox_' + ImgToggleIndex + "_" + ToggleBoxIndex);
var Link = document.getElementById('toggleboxToggle_' + ImgToggleIndex + "_" + ToggleBoxIndex);
if( (!ImageToggle) || (!Links) || (!Togglebox) || (!Link) ) return;
var AllToggleboxes = getElementsByClass('togglebox',ImageToggle);
for(var a=0,l=AllToggleboxes.length;a<l;a++){
if(AllToggleboxes[a] == Togglebox){
AllToggleboxes[a].style.display = "";
}else{
AllToggleboxes[a].style.display = "none";
}
}
var AllToggleLinks = Links.getElementsByTagName('a');
for(var a=0,l=AllToggleLinks.length;a<l;a++){
if(AllToggleLinks[a] == Link){
AllToggleLinks[a].parentNode.style.display = "none";
}else{
AllToggleLinks[a].parentNode.style.display = "";
}
}
}
if(( mw.config.get('wgAction')=="view" || mw.config.get('wgAction')=="purge" || mw.config.get('wgAction')=="submit")) $(ToggleBox_Init);
/**
* Script za lakše postavljanje medijskih fajlova
*/
$( function() {
if ( typeof $.fn.wikiEditor != 'undefined' ) {
$( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', {
'section': 'main',
'group': 'insert',
'tool': 'file'
});
}
});
if ( typeof $j != 'undefined' && typeof $j.fn.wikiEditor != 'undefined' ) {
$j(document).ready( function() {
$j( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
'section': 'main',
'group': 'insert',
'tools': {
'Datoteka': {
'labelMsg': 'wikieditor-toolbar-tool-file',
'type': 'button',
'icon': 'insert-file.png',
'offset': "[2, -1438]",
'action': {
'type': 'encapsulate',
'options': {
'pre': "[[Datoteka:",
'periMsg': 'wikieditor-toolbar-tool-file-example',
'post': "|mini|desno lijevo|x00px|Opis slike]]"
}
}
}
}
} );
} );
}
// Rezultati pretrage sa Wikidata
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' || ( mw.config.get( 'wgArticleId' ) === 0 && mw.config.get( 'wgCanonicalSpecialPageName' ) === false ) ) {
mw.loader.load("//en.wikipedia.org/w/index.php?title=MediaWiki:Wdsearch.js&action=raw&ctype=text/javascript");
}
// Live brojač izmjena
mw.loader.load('Korisnik:Edinwiki/js/live-brojač-izmjena.js');