MédhiaWiki:Common.js

Sekang Wikipedia, Ensiklopedia Bebas sing nganggo Basa Banyumasan: dhialek Banyumas, Purbalingga, Tegal lan Purwokerto.

Cathetan: Bare nyimpen preferensi, panjenengan kudu mbusak cache panjlajah web panjenengan kanggo mirsani pangowahan. Mozilla / Firefox / Safari: pencèt Ctrl-Shift-R (Cmd-Shift-R nang Apple Mac); IE: teken Ctrl-F5; Konqueror:: pencet F5; Opera resikana cache miturut menu Tools→Preferences.

/**

JavaScript sing ana ing kéné bakal diterapaké kanggo kabèh kulit.
__TOC__
== Deklarasi variabel ==

 Variabel-variabel yang dipakai secara global */

 var LoadInterProject = true;
 var LoadLinkFA = true;
 var LoadNavFrame = true;
 var load_edittools = true;
 var LoadExtraPortlet = true;
 var LoadStripe = true;
 var LoadEditTop = true;
 var LoadExtraEditButtons = true;
 var load_extratabs = false;
 var LoadPageCounter = false;

/**
== Variabel saklar per pengguna ==

 Ubah [[Istimewa:Mypage/switches.js]] untuk mengatur fitur yang ingin Anda
 aktifkan atau matikan */

/* importScript( 'Pengguna:' + mw.config.get('wgUserName') + '/switches.js' ); */

/**
== Library functions ==

 Librari fungsi yang digunakan oleh fungsi-fungsi lain.
 ** Untuk sementara di-remark karena menyebabkan fungsi-fungsi lainnya tidak berfungsi di Firefox3 - (borgx 26 Juni 2008)
 */

/**
== MainPageTransform ==

 Menghilangkan judul [[Halaman Utama]] dan mengganti nama tab. */

 var isDiff = (document.location.search && (
     document.location.search.indexOf("diff=") != -1 ||
     document.location.search.indexOf("oldid=") != -1 ||
     document.location.search.indexOf("action=history") != -1
 ));
 if ( mw.config.get('wgIsMainPage') && !isDiff && (mw.config.get('wgCanonicalNamespace') != 'Special') )
 {
     mw.util.addCSS('#siteSub, #contentSub, h1.firstHeading { display: none!important; } #content, #content div.thumb, #p-cactions li a, #p-cactions li a:hover, #p-cactions li.selected a { background: #fff!important; }');
     var mpSmallEnabled;
     var mpMinWidth = 700;
     function mainPageTransform()
     {
          var mpContentEl = document.getElementById("bodyContent");
          var mpBrowseEl = document.getElementById("EnWpMpBrowse");
          var mpContainEl = document.getElementById("EnWpMpBrowseContainer");
          var mpMarginEl = document.getElementById("EnWpMpMargin");
          var mpEl = document.getElementById("EnWpMainPage");
          if (!mpContentEl || !mpBrowseEl || !mpContainEl || !mpMarginEl || !mpEl)
               return;
          if (!mpSmallEnabled && mpContentEl.offsetWidth < mpMinWidth)
          {
               mpContainEl.insertBefore(mpBrowseEl, mpContainEl.firstChild);
               mpBrowseEl.className = "EnWpMpBrowseBottom";
               mpMarginEl.style.marginRight = 0;
               mpSmallEnabled = true;
          }
          else if (mpSmallEnabled && mpContentEl.offsetWidth > mpMinWidth)
          {
               mpEl.insertBefore(mpBrowseEl, mpEl.firstChild);
               mpBrowseEl.className = "EnWpMpBrowseRight";
               mpMarginEl.style.marginRight = "13.8em";
               mpSmallEnabled = false;
          }
     }
     $(document).ready( mainPageTransform );
     if (window.addEventListener)
          window.addEventListener("resize", mainPageTransform, false);
     else if (window.attachEvent)
          window.attachEvent("onresize", mainPageTransform);
 }

/**
== LowcaseTitle ==

 Judul dengan [[Template:Judul|huruf pertama kecil]]. */

 if (document.URL.indexOf("=edit") > 0 || document.URL.indexOf("=submit") > 0) {var noJS;}
 else {
      mw.util.addCSS('#title-override {display: none; speak: none;}');
      function pTitle() {
           if (document.getElementById("title-override")) {
                var pTitle = document.getElementById("pTitle").innerHTML;
                document.getElementsByTagName("h1")[0].innerHTML = pTitle;
           }
      }
      $(document).ready(pTitle);
 }

/**
== LinkFA & LinkGA ==

Menambahkan bintang di InterWiki
 */
function LinkFA()
{
    if ( document.getElementById( "p-lang" ) ) {
        var InterwikiLinks = document.getElementById( "p-lang" ).getElementsByTagName( "li" );

        for ( var i = 0; i < InterwikiLinks.length; i++ ) {
            if ( document.getElementById( InterwikiLinks[i].className + "-fa" ) && InterwikiLinks[i].className.indexOf( "badge-featuredarticle" ) === -1 ) {
                InterwikiLinks[i].className += " FA";
                InterwikiLinks[i].title = "Ini adalah artikel pilihan pada bahasa lain.";
            } else if ( document.getElementById( InterwikiLinks[i].className + "-ga" ) && InterwikiLinks[i].className.indexOf( "badge-goodarticle" ) === -1 ) {
                InterwikiLinks[i].className += " GA";
                InterwikiLinks[i].title = "Ini adalah artikel bagus pada bahasa lain.";
            }
        }
    }
}

$(document).ready( LinkFA );
/**
== Pranala luar pilihan ==

Menandai pranala luar pilihan. Gunakan templat {{tl|extlink-fa}} di depan atau belakang pranala luar. Ini akan memberikan suatu objek "span" kosong yang akan dikenali oleh JavaScript yang akan mengubah style bulletnya.
 */
 function linkExtLinkFA() {
   oSpans = document.getElementById( "bodyContent" ).getElementsByTagName( "span" );
   for ( var i = 0; i < oSpans.length; i++ ) {
     if ( oSpans[i].className == 'extlink-fa' ) {
       var oParent = oSpans[i].parentNode;
       if ( oParent.tagName == 'LI' ) {
         oParent.className += ' FA';
         oParent.title = 'Pranala pilihan';
       }
     }
   }
 }
 $(document).ready( linkExtLinkFA );
/**

== InterProject ==

InterProject, link di menu samping untuk proyek lain.

 */
 if (LoadInterProject == true) {
 mw.util.addCSS('#interProyek {display: none; speak: none;} #p-tb .pBody {padding-right: 0;}');
 function iProject() {
     if (document.getElementById("interProyek")) {
          var iProject = document.getElementById("interProyek").innerHTML;
          var interProject = document.createElement("div");
          interProject.style.marginTop = "0.7em";
          interProject.innerHTML = '<h5>Proyek lain<\/h5><div class="pBody">'+iProject+'<\/div>';
          document.getElementById("p-tb").appendChild(interProject);
     }
 }
 $(document).ready(iProject);
 }

/**
== CollapsibleTable ==*/
 var autoCollapse = 2;
 var collapseCaption = "Umpetna";
 var expandCaption = "Tidhokna";

function collapseTable( tableIndex )
{
    var Button = document.getElementById( "collapseButton" + tableIndex );
    var Table = document.getElementById( "collapsibleTable" + tableIndex );

    if ( !Table || !Button ) {
        return false;
    }

    var Rows = Table.rows;

    if ( Button.firstChild.data == collapseCaption ) {
        for ( var i = 1; i < Rows.length; i++ ) {
            Rows[i].style.display = "none";
        }
        Button.firstChild.data = expandCaption;
    } else {
        for ( var i = 1; i < Rows.length; i++ ) {
            Rows[i].style.display = Rows[0].style.display;
        }
        Button.firstChild.data = collapseCaption;
    }
}

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" ) ) {

            /* 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 );

            Button.className = "collapseButton";  //Styles are declared in Common.css

            ButtonLink.style.color = Header.style.color;
            ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
            ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ");" );
            ButtonLink.appendChild( ButtonText );

            Button.appendChild( document.createTextNode( "[" ) );
            Button.appendChild( ButtonLink );
            Button.appendChild( document.createTextNode( "]" ) );

            Header.insertBefore( Button, Header.childNodes[0] );
            tableIndex++;
        }
    }

    for ( var 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;
                }
            }
        }
    }
}

$(document).ready( createCollapseButtons );

 /* End of CollapsibleTable */

/** 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 ($(NavChild).hasClass( 'NavContent') || $(NavChild).hasClass( 'NavPic')) {
                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).hasClass( 'NavContent') || $(NavChild).hasClass( 'NavPic')) {
                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 ($(NavFrame).hasClass( "NavFrame")) {

            indexNavigationBar++;
            var NavToggle = document.createElement("a");
            NavToggle.className = 'NavToggle';
            NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
            NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + 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 (var 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 (var 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")) {
                    NavFrame.childNodes[j].appendChild(NavToggle);
                }
            }
            NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
        }
    }
}

$(document).ready( createNavigationBarToggleButton );

/**
== Edittools ==

 Drop down box for the Special character menu in [[MediaWiki:Edittools]]
 Adapted from:
 //de.wiktionary.org/wiki/MediaWiki:Onlyifediting.js ,
 //de.wikipedia.org/wiki/MediaWiki:Onlyifediting.js and
 //en.wiktionary.org/wiki/MediaWiki:Monobook.js
  */

 function addCharSubsetMenu() {
     if ( load_edittools != true ) return;
  var specialchars = document.getElementById('specialchars');

  if (specialchars) {
   var menu = "<select style=\"display:inline\" onChange=\"chooseCharSubset(selectedIndex)\">";
   menu += "<option>Standar+Templat</option>";
   menu += "<option>IPA</option>";
   menu += "<option>Latin</option>";
   menu += "<option>Pinyin</option>";
   menu += "<option>Romaji</option>";
   menu += "<option>Arab</option>";
   menu += "<option>Ceko</option>";
   menu += "<option>Devanāgarī</option>";
   menu += "<option>Esperanto</option>";
   menu += "<option>Estonia</option>";
   menu += "<option>Hawaii</option>";
   menu += "<option>Hungaria</option>";
   menu += "<option>Ibrani</option>";
   menu += "<option>Inggris kuno</option>";
   menu += "<option>Islandia</option>";
   menu += "<option>Italia</option>";
   menu += "<option>Jawa Kuna</option>";
   menu += "<option>Jerman</option>";
   menu += "<option>Katalan</option>";
   menu += "<option>Latvia</option>";
   menu += "<option>Malta</option>";
   menu += "<option>Perancis</option>";
   menu += "<option>Polandia</option>";
   menu += "<option>Portugis</option>";
   menu += "<option>Rumania</option>";
   menu += "<option>Serbia</option>";
   menu += "<option>Sirilik</option>";
   menu += "<option>Skandinavia</option>";
   menu += "<option>Spanyol</option>";
   menu += "<option>Turki</option>";
   menu += "<option>Vietnam</option>";
   menu += "<option>Wales</option>";
   menu += "<option>Yiddish</option>";
   menu += "<option>Yunani</option>";
   menu += "</select>";
   specialchars.innerHTML = menu + specialchars.innerHTML;

   // Standard-CharSubset
   chooseCharSubset(0);
  }
 }

 // CharSubset selection
 function chooseCharSubset(s) {
  var l = document.getElementById('specialchars').getElementsByTagName('p');
  for (var i = 0; i < l.length ; i++) {
   l[i].style.display = i == s ? 'inline' : 'none';
   // l[i].style.visibility = i == s ? 'visible' : 'hidden';
  }
 }

 // Menu insertion
 $(document).ready( addCharSubsetMenu );
 // Move the toolbar to the top
 function fixToolbar() {
     if ( load_edittools != true ) return;
     var wpEditToolbar = document.getElementById( "toolbar" );
     var editTools = document.getElementById( "specialchars" );
     elementMoveto( editTools, wpEditToolbar , 'after' );
     if( editTools ) editTools.style.display = "block";
     var editspecialchars = document.getElementById( "editpage-specialchars" );
     elementMoveto( editTools, wpEditToolbar , 'after' );
 }
 $(document).ready( fixToolbar );

  // Helper function to move DOM element
 function elementMoveto( node, refNode, pos ) {
  if(node && refNode){
    var parent=refNode.parentNode;
    if (pos && pos=='after') { refNode=refNode.nextSibling; }
    try {
      parent.insertBefore( node, refNode );
    } catch ( DOMException ) {};
  }
 }

/**

== Stripe ==

 [[Bantuan:Tabel|Tabel cantik]] */

 if (LoadStripe == true) {

 var stripe = function()
 {
   // This function will add stripes to all tables that have the "wikitable-striped" class attribute.
   var tables = document.getElementsByTagName("table");
   for (var a = 0; a != tables.length; a++) {
        var table = tables[a];
        if (!table) { return; } // If there are no tables, abort.
        if (table.getAttribute("class") == "tabelcantik") {
             var tbodies = table.getElementsByTagName("tbody");
             for (var b = 0; b < tbodies.length; b++) {
                  var even = true; // We start with an even stripe.
                  var trs = tbodies[b].getElementsByTagName("tr");
                  for (var c = 0; c < trs.length; c++) {
                       if (even) {
                            trs[c].className += "even";
                       } else {
                            trs[c].className += "odd";
                       }
                       even = !even;
                  }
             }
        } else
        if (table.getAttribute("class") == "tabelcantikcyan") {
             var tbodies = table.getElementsByTagName("tbody");
             for (var b = 0; b < tbodies.length; b++) {
                  var even = true; // We start with an even stripe.
                  var trs = tbodies[b].getElementsByTagName("tr");
                  for (var c = 0; c < trs.length; c++) {
                       if (even) {
                            trs[c].className += "evencyan";
                       } else {
                            trs[c].className += "oddcyan";
                       }
                       even = !even;
                  }
             }
        } else
        if (table.getAttribute("class") == "tabelcantikmerah") {
             var tbodies = table.getElementsByTagName("tbody");
             for (var b = 0; b < tbodies.length; b++) {
                  var even = true; // We start with an even stripe.
                  var trs = tbodies[b].getElementsByTagName("tr");
                  for (var c = 0; c < trs.length; c++) {
                       if (even) {
                            trs[c].className += "evenmerah";
                       } else {
                            trs[c].className += "oddmerah";
                       }
                       even = !even;
                  }
             }
        }
   }
   };
 // Perform the striping.
  $(document).ready(stripe);

 }

/**
== ExtraEditButtons ==
 */
  function addCustomEditButton( imageFile, speedTip, tagOpen, tagClose, sampleText ) {
   var imagePath = '//upload.wikimedia.org/wikipedia/commons/';
   mw.toolbar.addButton( {
    "imageFile"  : imagePath + imageFile,
    "speedTip"   : speedTip,
    "tagOpen"    : tagOpen,
    "tagClose"   : tagClose,
    "sampleText" : sampleText
   } );
  }

 if ( mw.Toolbar && LoadExtraEditButtons ) {
  addCustomEditButton( "c/c8/Button_redirect.png", "Pengalihan",
    "#ALIH [[", "]]", "Artikel" );
  addCustomEditButton( "e/eb/Button_plantilla.png", "Templat",
    "{{", "}}", "Templat" );
  addCustomEditButton( "1/1b/Button_hide_wiki_tag.png", "Komentar tersembunyi",
    "<!-- ", " -->", "Komentar" );
  addCustomEditButton( "f/fd/Button_underline.png", "Garis bawah",
    "<u>", "</u>", "Teks garis bawah" );
  addCustomEditButton( "c/c9/Button_strike.png", "Coret",
    "<s>", "</s>", "Teks dicoret" );
  addCustomEditButton( "f/f9/Button_onlyinclude_green.png", " Onlyinclude",
        "<onlyinclude>", "</onlyinclude>", "Hanya teks ini yang ditransklusikan" );
  addCustomEditButton( "0/01/Button_includeonly_green.png", "Includeonly",
        "<includeonly>", "</includeonly>", "Teks hanya akan ditransklusikan" );
  addCustomEditButton( "3/32/Button_noinclude_green.png", "Noinclude",
        "<noinclude>", "</noinclude>", "Teks tidak akan ditransklusi" );
  addCustomEditButton( "7/79/Button_reflink.png", "Rujukan",
        "<ref>", "</ref>", "Rujukan" );
  addCustomEditButton( "9/99/Button_sup_2.png", "Superscript",
    "<sup>", "</sup>", "Teks superscript" );
  addCustomEditButton( "e/e5/Button_sub_2.png", "Subscript",
    "<sub>", "</sub>", "Teks subscript" );
  addCustomEditButton( "1/17/Button_small_2.png", "small",
        "<small>", "</small>", " " );
  addCustomEditButton( "c/cb/Button_big_2.png", "big",
        "<big>", "</big>", " " );
  addCustomEditButton( "2/23/Button_code.png", "code",
        "<code>", "</code>", " " );
  addCustomEditButton( "5/5f/Button_center.png", "center",
        "<center>", "</center>", " " );
  addCustomEditButton( "3/3c/Button_pre.png", "pre",
        "<pre>", "</pre>", " " );
  addCustomEditButton( "8/8f/Button_poeme.png", "poem",
        "<poem>", "</poem>", " " );
  addCustomEditButton( "d/d4/Button_div.png", "div",
        "<div>", "</div>", " " );
  addCustomEditButton( "7/72/Button_span_2.png", "span",
        "<span>", "</span>", " " );
  addCustomEditButton( "2/26/Button_plainlinks.png", "plainlinks",
        "<span class=plainlinks>", "</span>", " " );
  addCustomEditButton( "9/9e/Btn_toolbar_gallery.png", "Galeri gambar",
    "<gallery>\n", "\n</gallery>", "Berkas:Contoh.jpg|Judul1\nBerkas:Contoh.jpg|Judul2" );
  addCustomEditButton( "c/c6/Button_Kat.png", "Kategori",
    "[[Kategori:", "]]", "Kategori" );
  addCustomEditButton( "3/3f/Button_en.png", "Interwiki Wikipedia Inggris",
        "[[en:", "]]", "Interwiki en.wiki" );
  addCustomEditButton( "7/7f/Interwiki-button-bg.png", "Interwiki templat en",
        "[[en:Template:", "subst:PAGENAME}}]]", "{{" );
  addCustomEditButton( "f/f7/Button_referencesR.png", "Referensi",
    "\n== Referensi ==\n\n", "reflist}}" + "\n", "{{" );
  addCustomEditButton( "e/e9/Button_headline2.png", "Subbagian tingkat 2",
    "\n=== ", " ===\n", "Subbagian2" );
  addCustomEditButton( "3/3a/Button_headline3.png", "Subbagian tingkat 3",
    "\n==== ", " ====\n", "Subbagian3" );
  addCustomEditButton( "1/11/Btn_toolbar_liste.png", "Daftar biasa",
    "\n* ", "\n* Elemen contoh B\n* Elemen contoh C", "Elemen contoh A" );
  addCustomEditButton( "8/88/Btn_toolbar_enum.png", "Daftar bernomor",
    "\n# ", "\n# Elemen contoh 2\n# Elemen contoh 3", "Elemen contoh 1" );
  addCustomEditButton( "d/d3/Button_definition_list.png", "Daftar definisi",
    "\n; ", "\n: Contoh item 1\n: Contoh item 2", "Contoh definisi" );
  addCustomEditButton( "0/04/Button_array.png", "Tabel",
    '{| class="wikitable"\n|-\n', "\n|}", "! kepala1\n! kepala2\n|-\n" +
    "| baris1, kolom1\n| baris1, kolom2\n|-\n| baris2, kolom1\n| baris2, kolom2" );
  addCustomEditButton( "9/9f/Button_defaultsort.png", "DEFAULTSORT",
        "", "DEFAULTSORT:}}", "{{" );
  addCustomEditButton( "b/bf/Button_pagename.png", "PAGENAME",
        "", "PAGENAME}}", "{{" );
  addCustomEditButton( "5/55/Button_nbsp_1.png", "nbsp",
        "&nbsp;", "", "" );
 }
/**

== Portlet tambahan ==


 }
 $(document).ready( addEditcountPortlet );
/**

=== Sunting bagian 0 ===
 */
 function addEdittopPortletLink() {
  if(mw.config.get('wgCanonicalNamespace') == 'Special') return;
  if(document.getElementById("wikiPreview")) return;
  if(document.getElementById("histlegend‎")) return;
  if(document.getElementById("difference‎")) return;
  if(document.getElementById("watchdetails")) return;
  if ( document.getElementById( "ca-edit" ) ) {
   var sElm = document.getElementById( "ca-addsection" ) ? 'ca-addsection' : 'ca-edit';
   var sText = '↑';
   var sLink = mw.config.get('wgScriptPath') + "/index.php?title=" + mw.config.get('wgPageName') +
    "&action=edit&section=0";
   mw.util.addPortletLink( 'p-cactions', sLink, sText, 'ca-edittop',
    'Suntingan bagian atas halaman ini', null, document.getElementById( sElm ).nextSibling );
  }
 }
 $(document).ready( addEdittopPortletLink );
/**

=== Notice di [[Wikipedia:Bak pasir]] dan [[Pembicaraan Wikipedia:Bak pasir]] ===
 */
 function sandboxNotice() {
 notice = document.createElement('div');
 document.getElementById('bodyContent').insertBefore(notice, document.getElementById('mw-content-text').nextSibling);
 noticeLoader = sajax_init_object();
 noticeLoader.open('GET', '//id.wikipedia.org/w/index.php?title=Templat:Bakpasir&action=render', true);
 noticeLoader.onreadystatechange = function()
    {
        if (noticeLoader.readyState == 4 && noticeLoader.status == 200) {
            notice.innerHTML = noticeLoader.responseText;
        }
    };
 noticeLoader.send('');
 }
 if (mw.config.get('wgAction').match(/view|edit|submit/)) {
    $(document).ready(function() {
        if (document.getElementsByTagName('body')[0].className.match(/page-(Pembicaraan_)?Wikipedia_Bak_pasir/)) {
            return sandboxNotice();
        }
    });
 }

/** Magic editintros ****************************************************
 *
 *  Description: Adds editintros on disambiguation pages and BLP pages.
 *  Maintainers: [[User:RockMFR]]
 */

function addEditIntro(name)
{
  var el = document.getElementById('ca-edit');
  if (!el)
    return;
  el = el.getElementsByTagName('a')[0];
  if (el)
    el.href += '&editintro=' + name;
}


if (mw.config.get('wgNamespaceNumber') == 0) {
  $(document).ready(function(){
    if (document.getElementById('disambigbox'))
      addEditIntro('Template:Disambig_editintro');
  });

  $(document).ready(function(){
    var cats = document.getElementById('mw-normal-catlinks');
    if (!cats)
      return;
    cats = cats.getElementsByTagName('a');
    for (var i = 0; i < cats.length; i++) {
      if (cats[i].title == 'Category:Living people' || cats[i].title == 'Category:Possibly living people') {
        addEditIntro('Template:BLP_editintro');
        break;
      }
    }
  });
}

/**
 * WikiMiniAtlas is a popup click and drag world map.
 * See [[meta:WikiMiniAtlas]] for more information.
 * Maintainers: [[w:User:Dschwen]]
 */
mw.loader.load( '//meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript' );

// Results from Wikidata
// [[File:Wdsearch_script_screenshot.png]]
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");
}