MediaWiki:Common.js

Dari In-Christ Wiki, Wiki Kristen Indonesia
(Perbedaan antar revisi)
Langsung ke: navigasi, cari
 
(Satu revisi antara tak ditampilkan.)
Baris 1: Baris 1:
-
//<source lang="javascript">
+
mw.loader.using( 'mediawiki.util', function() {
-
/* Import more specific scripts if necessary */
+
/**
-
if (wgAction == "edit" || wgAction == "submit") //scripts specific to editing pages
+
JavaScript yang ada di sini akan diterapkan untuk semua kulit.
-
{
+
__TOC__
-
    importScript("MediaWiki:Common.js/edit.js")
+
== Deklarasi variabel ==
-
}
+
-
else if (wgPageName == "Special:Watchlist") //watchlist scripts
+
Variabel-variabel yang dipakai secara global */
-
{
+
-
    importScript("MediaWiki:Common.js/watchlist.js")
+
-
}
+
-
else if (wgPageName == "Special:Search") //scripts specific to Special:Search
+
-
{
+
-
    importScript("MediaWiki:Common.js/search.js")
+
-
}
+
 +
var ScriptPrefix = '<script type="text/javascript" src="/w/index.php?title=';
 +
var ScriptSuffix = '&action=raw&ctype=text/javascript&dontcountme=s"></script>';
 +
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;
-
/** Sysop Javascript *******************************************************
+
/**
-
  *
+
== Variabel saklar per pengguna ==
-
  * Description: Allows for sysop-specific Javascript at [[MediaWiki:Sysop.js]].
+
   
-
  */
+
Ubah [[Istimewa:Mypage/switches.js]] untuk mengatur fitur yang ingin Anda
-
function sysopFunctions() {
+
aktifkan atau matikan */
-
    if ( wgUserGroups && !window.disableSysopJS ) {
+
-
        for ( var g = 0; g < wgUserGroups.length; ++g ) {
+
-
            if ( wgUserGroups[g] == "sysop" ) {
+
-
                importScript( "MediaWiki:Sysop.js" );
+
-
                break;
+
-
            }
+
-
        }
+
-
    }
+
-
}
+
-
addOnloadHook( sysopFunctions );
+
document.write( ScriptPrefix + 'Pengguna:' + wgUserName + '/switches.js' + ScriptSuffix );
-
/* Scripts specific to Internet Explorer */
+
/**
 +
== 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)
 +
*/
-
if (navigator.appName == "Microsoft Internet Explorer")
+
// Fix tampilan untuk IE
-
{
+
/*
-
    /** Internet Explorer bug fix **************************************************
+
if (window.showModalDialog && document.compatMode && document.compatMode == "CSS1Compat")
-
     *
+
{
-
    *  Description: Fixes IE horizontal scrollbar bug
+
     var oldWidth;
-
    *  Maintainers: [[User:Tom-]]?
+
    var docEl = document.documentElement;
-
    */
+
    function fixIEScroll()
-
   
+
    {
-
    var oldWidth;
+
          if (!oldWidth || docEl.clientWidth > oldWidth)
-
    var docEl = document.documentElement;
+
              doFixIEScroll();
-
   
+
          else
-
    function fixIEScroll()
+
              setTimeout(doFixIEScroll, 1);
-
    {
+
          oldWidth = docEl.clientWidth;
-
        if (!oldWidth || docEl.clientWidth > oldWidth)
+
    }
-
            doFixIEScroll();
+
    function doFixIEScroll() {
-
        else
+
          docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth < 4) ? "hidden" : "";
-
            setTimeout(doFixIEScroll, 1);
+
    }
-
       
+
    document.attachEvent("onreadystatechange", fixIEScroll);
-
        oldWidth = docEl.clientWidth;
+
    attachEvent("onresize", fixIEScroll);
-
    }
+
}
-
   
+
-
    function doFixIEScroll() {
+
-
        docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth < 4) ? "hidden" : "";
+
-
    }
+
-
   
+
-
    document.attachEvent("onreadystatechange", fixIEScroll);
+
-
    document.attachEvent("onresize", fixIEScroll);
+
-
   
+
-
   
+
-
    /**
+
-
    * Remove need for CSS hacks regarding MSIE and IPA.
+
-
    */
+
-
   
+
-
    if (document.createStyleSheet) {
+
-
        document.createStyleSheet().addRule('.IPA', 'font-family: "Doulos SIL", "Charis SIL", Gentium, "DejaVu Sans", Code2000, "TITUS Cyberbit Basic", "Arial Unicode MS", "Lucida Sans Unicode", "Chrysanthi Unicode";');
+
-
    }
+
-
   
+
-
   
+
-
    //Import scripts specific to Internet Explorer 6
+
-
    if (navigator.appVersion.substr(22, 1) == "6")
+
-
    {
+
-
        importScript("MediaWiki:Common.js/IE60Fixes.js")
+
-
    }
+
-
}
+
-
/*<pre>*/
+
// addLoadEvent, menambahkan event
 +
 +
function addLoadEvent(func)
 +
{
 +
    if (window.addEventListener)
 +
          window.addEventListener("load", func, false);
 +
    else if (window.attachEvent)
 +
          window.attachEvent("onload", func);
 +
}
 +
*/
 +
/**
 +
== MainPageTransform ==
-
/* Hook that enables ED's collapsing objects. */
+
Menghilangkan judul [[Halaman Utama]] dan mengganti nama tab. */
-
addOnloadHook(createToggleLinks);
+
var mpTitle = "Halaman Utama";
 +
var isMainPage = (document.title.substr(0, mpTitle.length) == mpTitle)
 +
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 ( isMainPage && !isDiff && (wgCanonicalNamespace != 'Special') )
 +
{
 +
    document.write('<style type="text/css"> #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; } </style>');
 +
    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;
 +
          }
 +
    }
 +
    var onloadFuncts = [ mainPageTransform ];
 +
    if (window.addEventListener)
 +
          window.addEventListener("resize", mainPageTransform, false);
 +
    else if (window.attachEvent)
 +
          window.attachEvent("onresize", mainPageTransform);
 +
}
 +
function mainpg() {
 +
    if ((isMainPage || /[\/=:]Halaman_Utama/.test(document.location)) && document.getElementById('ca-nstab-main')) {
 +
          document.getElementById('ca-nstab-main').firstChild.innerHTML = 'Utama';
 +
    } 
 +
}
 +
addOnloadHook(mainpg);
-
/* Function that toggles ED's collapsing objects. */
+
/**
 +
== LowcaseTitle ==
-
function toggleCollapse(objToToggle, collapseText, expandText) {
+
Judul dengan [[Template:Judul|huruf pertama kecil]]. */
-
var linkText = "";
+
if (document.URL.indexOf("=edit") > 0 || document.URL.indexOf("=submit") > 0) {var noJS;}
-
var targetObject = returnObjById(objToToggle);
+
else {
-
+
      document.write('<style type="text/css">#title-override {display: none; speak: none;}<\/style>');
-
if ( targetObject ) {
+
      function pTitle() {
-
+
          if (document.getElementById("title-override")) {
-
if ( targetObject.style.display == "none" ) {
+
                var pTitle = document.getElementById("pTitle").innerHTML;
-
+
                document.getElementsByTagName("h1")[0].innerHTML = pTitle;
-
targetObject.style.display = "block";
+
          }
-
linkText = collapseText;
+
      }
-
}
+
      hookEvent("load", pTitle);
-
+
}
-
else {
+
-
+
-
targetObject.style.display = "none";
+
-
linkText = expandText;
+
-
}
+
-
+
-
var toggleLink = document.createElement("a");
+
-
toggleLink.appendChild(document.createTextNode(linkText));
+
-
toggleLink.setAttribute("href", "javascript:toggleCollapse('" + objToToggle + "','" + collapseText + "','" + expandText + "')");
+
-
+
-
returnObjById(objToToggle + "Link").innerHTML = "";
+
-
returnObjById(objToToggle + "Link").appendChild(toggleLink);
+
-
}
+
-
}
+
-
/* Functions that performs the morph operation. */
+
/**
 +
== LinkFA ==
-
function performMorph(targetID, targetNumber) {
+
Menambahkan bintang di InterWiki
-
 
+
-
var counter = 1;
+
-
+
-
while ( returnObjById(targetID + "Content" + counter) ) {
+
-
+
-
if ( counter == targetNumber )
+
-
returnObjById(targetID + "Content" + counter).style.display = "block";
+
-
else
+
-
returnObjById(targetID + "Content" + counter).style.display = "none";
+
-
+
-
counter++;
+
-
}
+
-
+
-
returnObjById(targetID + "Master").innerHTML = targetNumber;
+
-
}
+
-
 
+
-
function morphForward(targetID) {
+
-
 
+
-
var nextPane = parseInt(returnObjById(targetID + "Master").innerHTML) + 1;
+
-
+
-
if ( returnObjById(targetID + "Content" + nextPane) )
+
-
performMorph(targetID, nextPane);
+
-
+
-
else
+
-
performMorph(targetID, "1");
+
-
}
+
-
 
+
-
function morphBackward(targetID) {
+
-
 
+
-
var prevPane = parseInt(returnObjById(targetID + "Master").innerHTML) - 1;
+
-
+
-
if ( prevPane > 0 )
+
-
performMorph(targetID, prevPane);
+
-
+
-
else {
+
-
+
-
var maxIndex = 1;
+
-
+
-
while ( returnObjById(targetID + "Content" + maxIndex) )
+
-
maxIndex++;
+
-
+
-
performMorph(targetID, maxIndex - 1);
+
-
}
+
-
}
+
-
 
+
-
/* Function that creates collapsing objects and toggle links. */
+
-
 
+
-
function createToggleLinks() {
+
-
 
+
-
var spanCollection = document.getElementsByTagName("span");
+
-
+
-
for ( i = 0; i < spanCollection.length; i++ ) {
+
-
+
-
if ( spanCollection[i].className == "toggleLink" ) {
+
-
+
-
var spanID = spanCollection[i].getAttribute("id");
+
-
var targetID = spanID.substr(0, spanID.length - 4);
+
-
var collapseText = returnObjById(targetID + "CollapseText").innerHTML;
+
-
var expandText = returnObjById(targetID + "ExpandText").innerHTML;
+
-
var initialState = returnObjById(targetID + "InitialState").innerHTML;
+
-
+
-
var toggleLink = document.createElement("a");
+
-
+
-
if ( initialState == "0" ) {
+
-
+
-
returnObjById(targetID).style.display = "none";
+
-
toggleLink.appendChild(document.createTextNode(expandText));
+
-
}
+
-
+
-
else {
+
-
+
-
returnObjById(targetID).style.display = "block";
+
-
toggleLink.appendChild(document.createTextNode(collapseText));
+
-
}
+
-
+
-
toggleLink.setAttribute("href", "javascript:toggleCollapse('" + targetID + "','" + collapseText + "','" + expandText + "')");
+
-
+
-
spanCollection[i].appendChild(toggleLink);
+
-
}
+
-
 
+
-
else if ( spanCollection[i].className == "morphMaster" ) {
+
-
+
-
var spanID = spanCollection[i].getAttribute("id");
+
-
var targetID = spanID.substr(0, spanID.length - 6);
+
-
var counter = 1;
+
-
+
-
// Create forward and backward paging if the paging elements exist
+
-
if ( returnObjById(targetID + "LinkNext") && returnObjById(targetID + "LinkPrev") && returnObjById(targetID + "Content1") ) {
+
-
+
-
// Create the forward link
+
-
var nextLink = document.createElement("a");
+
-
nextLink.appendChild(document.createTextNode(returnObjById(targetID + "LinkNext").innerHTML));
+
-
nextLink.setAttribute("href", "javascript:morphForward('" + targetID + "')");
+
-
+
-
returnObjById(targetID + "LinkNext").innerHTML = "";
+
-
returnObjById(targetID + "LinkNext").appendChild(nextLink, 0);
+
-
+
-
// Create the backward link
+
-
var prevLink = document.createElement("a");
+
-
prevLink.appendChild(document.createTextNode(returnObjById(targetID + "LinkPrev").innerHTML));
+
-
prevLink.setAttribute("href", "javascript:morphBackward('" + targetID + "')");
+
-
+
-
returnObjById(targetID + "LinkPrev").innerHTML = "";
+
-
returnObjById(targetID + "LinkPrev").appendChild(prevLink, 0);
+
-
+
-
// Initialize content panes
+
-
while ( returnObjById(targetID + "Content" + counter) ) {
+
-
+
-
if ( counter == 1 )
+
-
returnObjById(targetID + "Content" + counter).style.display = "block";
+
-
else
+
-
returnObjById(targetID + "Content" + counter).style.display = "none";
+
-
+
-
counter++;
+
-
}
+
-
}
+
-
 
+
-
counter = 1;
+
-
+
-
// Whether or not there is paging, generate normal links
+
-
while ( returnObjById(targetID + "Link" + counter) && returnObjById(targetID + "Content" + counter) ) {
+
-
+
-
var morphLink = document.createElement("a");
+
-
morphLink.appendChild(document.createTextNode(returnObjById(targetID + "Link" + counter).innerHTML));
+
-
morphLink.setAttribute("href", "javascript:performMorph('" + targetID + "','" + counter + "')");
+
-
+
-
returnObjById(targetID + "Link" + counter).innerHTML = "";
+
-
returnObjById(targetID + "Link" + counter).appendChild(morphLink, 0);
+
-
+
-
// Initialize content panes
+
-
if ( counter == 1 )
+
-
returnObjById(targetID + "Content" + counter).style.display = "block";
+
-
else
+
-
returnObjById(targetID + "Content" + counter).style.display = "none";
+
-
+
-
counter++;
+
-
}
+
-
+
-
spanCollection[i].innerHTML = "1";
+
-
spanCollection[i].style.display = "none";
+
-
}
+
-
}
+
-
}
+
-
 
+
-
/* Function that toggles ED's collapsing objects. */
+
-
 
+
-
function returnObjById( id ) {
+
-
+
-
    if (document.getElementById)
+
-
        var returnVar = document.getElementById(id);
+
-
    else if (document.all)
+
-
        var returnVar = document.all[id];
+
-
    else if (document.layers)
+
-
        var returnVar = document.layers[id];
+
-
    return returnVar;
+
-
}
+
-
 
+
-
 
+
-
/*</pre>*/
+
-
 
+
-
 
+
-
/* 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]]
+
  */
  */
-
 
+
if (LoadLinkFA == true) {
-
var hasClass = (function () {
+
function LinkFA()  
-
    var reCache = {};
+
{
-
    return function (element, className) {
+
    if ( document.getElementById( "p-lang" ) ) {
-
        return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
+
        var InterwikiLinks = document.getElementById( "p-lang" ).getElementsByTagName( "li" );
-
    };
+
-
})();
+
-
/** ExtraEditButtons  *********************************************************
+
-
*
+
-
*  Description:
+
-
*  <pre><nowiki>
+
-
*/
+
-
  function addCustomEditButton( imageFile, speedTip, tagOpen, tagClose, sampleText ) {
+
-
  var imagePath = 'http://upload.wikimedia.org/wikipedia/commons/';
+
-
  mwCustomEditButtons[mwCustomEditButtons.length] = {
+
-
    "imageFile" : imagePath + imageFile,
+
-
    "speedTip"   : speedTip,
+
-
    "tagOpen"    : tagOpen,
+
-
    "tagClose"  : tagClose,
+
-
    "sampleText" : sampleText
+
-
  };
+
-
  }
+
   
   
-
if ( mwCustomEditButtons && LoadExtraEditButtons ) {
+
        for ( var i = 0; i < InterwikiLinks.length; i++ ) {
-
  addCustomEditButton( "e/e9/Button_headline2.png", "Subbagian tingkat 2",
+
            if ( document.getElementById( InterwikiLinks[i].className + "-fa" ) ) {
-
  "\n=== ", " ===\n", "Subbagian2" );
+
                InterwikiLinks[i].className += " FA"
-
  addCustomEditButton( "3/3a/Button_headline3.png", "Subbagian tingkat 3",
+
                InterwikiLinks[i].title = "Ini adalah artikel pilihan pada bahasa lain.";
-
  "\n==== ", " ====\n", "Subbagian3" );
+
            }
-
  addCustomEditButton( "f/fd/Button_underline.png", "Garis bawah",
+
        }
-
  "<u>", "</u>", "Text garis bawah" );
+
    }
-
  addCustomEditButton( "c/c9/Button_strike.png", "Coret",
+
}
-
  "<s>", "</s>", "Text dicoret" );
+
-
  addCustomEditButton( "6/6a/Button_sup_letter.png", "Superscript",
+
addOnloadHook( LinkFA );
-
  "<sup>", "</sup>", "Teks superscript" );
+
-
  addCustomEditButton( "a/aa/Button_sub_letter.png", "Subscript",
+
-
  "<sub>", "</sub>", "Teks subscript" );
+
-
  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( "e/eb/Button_plantilla.png", "Templat",
+
-
  "{{", "}}", "Templat" );
+
-
  addCustomEditButton( "b/b4/Button_category03.png", "Kategori",
+
-
  "[[Kategori:", "]]", "Kategori" );
+
-
  addCustomEditButton( "7/79/Button_reflink.png", "Rujukan", "<ref>",
+
-
  "</ref>", "Rujukan" );
+
-
  addCustomEditButton( "3/3b/Button_template_alt.png", "Catatan kaki",
+
-
  "\n== Catatan kaki ==\n\n" + "{{" + "reflist" + "}}" + "\n", "", "" );
+
-
  addCustomEditButton( "c/c8/Button_redirect.png", "Pengalihan",
+
-
  "#ALIH[[", "]]", "Artikel" );
+
-
  addCustomEditButton( "7/74/Button_comment.png", "Komentar tersembunyi",
+
-
  "<!-- ", " -->", "Komentar" );
+
-
  addCustomEditButton( "9/9e/Btn_toolbar_gallery.png", "Galeri gambar",
+
-
  "\n<gallery>\n", "\n</gallery>", "Berkas:Contoh.jpg|Judul1\nBerkas:Contoh.jpg|Judul2" );
+
-
  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" );
+
  }
  }
-
/*</nowiki></pre>*/
 
/**
/**
 +
== Pranala luar pilihan ==
-
/** Collapsible tables *********************************************************
+
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.
-
*
+
-
*  Description: Allows tables to be collapsed, showing only the header.
+
-
*
+
  */
  */
 +
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';
 +
      }
 +
    }
 +
  }
 +
}
 +
addOnloadHook( linkExtLinkFA )
 +
/**
-
var autoCollapse = 2;
+
== InterProject ==
-
var collapseCaption = "hide";
+
 
-
var expandCaption = "show";
+
InterProject, link di menu samping untuk proyek lain.
 +
 
 +
<nowiki> */
 +
if (LoadInterProject == true) {
 +
document.write('<style type="text/css">#interProyek {display: none; speak: none;} #p-tb .pBody {padding-right: 0;}<\/style>');
 +
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);
 +
    }
 +
}
 +
addOnloadHook(iProject);
 +
}
 +
/* </nowiki> */
 +
 
 +
/**
 +
== CollapsibleTable ==*/
 +
var autoCollapse = 2;
 +
var collapseCaption = "sembunyikan";
 +
var expandCaption = "tampilkan";
 +
 +
window.hasClass = (function () {
 +
    var reCache = {};
 +
    return function (element, className) {
 +
        return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
 +
    };
 +
})();
-
function collapseTable( tableIndex )
+
window.collapseTable = function( tableIndex ){
{
{
     var Button = document.getElementById( "collapseButton" + tableIndex );
     var Button = document.getElementById( "collapseButton" + tableIndex );
Baris 405: Baris 260:
             var ButtonText = document.createTextNode( collapseCaption );
             var ButtonText = document.createTextNode( collapseCaption );
-
             Button.style.styleFloat = "right";
+
             Button.className = "collapseButton"; //Styles are declared in Common.css
-
            Button.style.cssFloat = "right";
+
-
            Button.style.fontWeight = "normal";
+
-
            Button.style.textAlign = "right";
+
-
            Button.style.width = "6em";
+
             ButtonLink.style.color = Header.style.color;
             ButtonLink.style.color = Header.style.color;
Baris 428: Baris 279:
         if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
         if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
             collapseTable( i );
             collapseTable( i );
 +
        }
 +
        else if ( hasClass( NavigationBoxes[i], "innercollapse" ) ) {
 +
            var element = NavigationBoxes[i];
 +
            while (element = element.parentNode) {
 +
                if ( hasClass( element, "outercollapse" ) ) {
 +
                    collapseTable ( i );
 +
                    break;
 +
                }
 +
            }
         }
         }
     }
     }
Baris 434: Baris 294:
addOnloadHook( createCollapseButtons );
addOnloadHook( createCollapseButtons );
 +
/* End of CollapsibleTable */
-
/** Dynamic Navigation Bars (experimental) *************************************
+
/**
-
*
+
-
*  Description:
+
-
*  Maintainers:
+
-
*/
+
-
// set up the words in your language
+
== NavFrame ==
-
var NavigationBarHide = '[' + collapseCaption + ']';
+
-
var NavigationBarShow = '[' + expandCaption + ']';
+
-
// shows and hides content and picture (if available) of navigation bars
+
Memberikan bagian yang bisa disembunyikan */
-
// 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) {
+
if (LoadNavFrame == true) {
-
        return false;
+
-
    }
+
// set up the words in your language
-
 
+
var NavigationBarHide = '[ Sembunyikan ]';
-
    // if shown now
+
var NavigationBarShow = '[ Tampilkan ]';
-
    if (NavToggle.firstChild.data == NavigationBarHide) {
+
// set up max count of Navigation Bars on page,
-
        for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
+
// if there are more, all will be hidden
-
            if ( hasClass( NavChild, 'NavPic' ) ) {
+
// NavigationBarShowDefault = 0; // all bars will be hidden
-
                NavChild.style.display = 'none';
+
// NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
-
            }
+
var NavigationBarShowDefault = 0;
-
            if ( hasClass( NavChild, 'NavContent') ) {
+
// shows and hides content and picture (if available) of navigation bars
-
                 NavChild.style.display = 'none';
+
// Parameters:
-
            }
+
// indexNavigationBar: the index of navigation bar to be toggled
 +
window.toggleNavigationBar = function(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)
 +
            for(var j=0; j < NavFrame.childNodes.length; j++ ) {
 +
                  if (NavFrame.childNodes[j].className == "NavHead") {
 +
                      NavFrame.childNodes[j].appendChild(NavToggle);
 +
                  }
 +
            }
 +
            NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
         }
         }
-
    NavToggle.firstChild.data = NavigationBarShow;
+
    }
 +
    // if more Navigation Bars found than Default: hide all
 +
    if (NavigationBarShowDefault < indexNavigationBar) {
 +
          for( var i=1; i<=indexNavigationBar; i++ ) {
 +
              toggleNavigationBar(i);
 +
          }
 +
    }
 +
}
-
    // if hidden now
+
addOnloadHook( createNavigationBarToggleButton );
-
    } 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()
+
== Edittools ==
-
{
+
-
    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++;
+
Drop down box for the Special character menu in [[MediaWiki:Edittools]]
-
            var NavToggle = document.createElement("a");
+
Adapted from:
-
            NavToggle.className = 'NavToggle';
+
http://de.wiktionary.org/wiki/MediaWiki:Onlyifediting.js ,
-
            NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
+
http://de.wikipedia.org/wiki/MediaWiki:Onlyifediting.js and
-
            NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
+
http://en.wiktionary.org/wiki/MediaWiki:Monobook.js
 +
<pre><nowiki> */
-
            var NavToggleText = document.createTextNode(NavigationBarHide);
+
function addCharSubsetMenu() {
-
            for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
+
    if ( load_edittools != true ) return;
-
                if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) {
+
  var specialchars = document.getElementById('specialchars');
-
                    if (NavChild.style.display == 'none') {
+
 
-
                        NavToggleText = document.createTextNode(NavigationBarShow);
+
  if (specialchars) {
-
                        break;
+
  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
 +
addOnloadHook( 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' );
 +
}
 +
onloadFuncts.push( 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 ) {};
 +
}
 +
}
 +
/* </nowiki></pre> */
-
            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);
+
-
        }
+
-
    }
+
-
}
+
-
addOnloadHook( createNavigationBarToggleButton );
+
== Stripe ==
 +
[[Bantuan:Tabel|Tabel cantik]] */
-
/** "Technical restrictions" title fix *****************************************
+
  if (LoadStripe == true) {
-
  *
+
   
-
*  Description: For pages that have something like Template:Wrongtitle, replace
+
  var stripe = function()
-
*              the title, but only if it is cut-and-pasteable as a valid
+
  {
-
  *              wikilink. For instance, "NZR WB class" can be changed to
+
  // This function will add stripes to all tables that have the "wikitable-striped" class attribute.
-
  *              "NZR W<sup>B</sup> class", but [[C#]] is not an equivalent wikilink,
+
var tables = document.getElementsByTagName("table");
-
*              so [[C Sharp]] doesn't have its main title changed.
+
for (var a = 0; a != tables.length; a++) {
-
*
+
      var table = tables[a];
-
*              The function looks for a banner like this:
+
      if (!table) { return; } // If there are no tables, abort.
-
*              <div id="RealTitleBanner"> ... <span id="RealTitle">title</span> ... </div>
+
      if (table.getAttribute("class") == "tabelcantik") {
-
*              An element with id=DisableRealTitle disables the function.
+
          var tbodies = table.getElementsByTagName("tbody");
-
  *  Maintainers: Remember_the_dot
+
          for (var b = 0; b < tbodies.length; b++) {
-
  */
+
                 var even = true; // We start with an even stripe.
-
 
+
                 var trs = tbodies[b].getElementsByTagName("tr");
-
if (wgIsArticle) //prevents the "Editing " prefix from disappearing during preview
+
                for (var c = 0; c < trs.length; c++) {
-
{
+
                    if (even) {
-
    addOnloadHook(function()
+
                          trs[c].className += "even";
-
    {
+
                    } else {
-
        var realTitle = document.getElementById("RealTitle")
+
                          trs[c].className += "odd";
-
       
+
                    }
-
        if (realTitle)
+
                    even = !even;
-
        {
+
-
            //normalizes a title or a namespace name (but not both)
+
-
            //trims leading and trailing underscores and converts (possibly multiple) spaces and underscores to single underscores
+
-
            function normalizeTitle(title)
+
-
            {
+
-
                return title.replace(/^_+/, "").replace(/_+$/, "").replace(/[\s_]+/g, "_")
+
-
            }
+
-
           
+
-
            if (realTitle.textContent) //everyone but IE
+
-
            {
+
-
                 var realTitleText = realTitle.textContent
+
-
            }
+
-
            else //IE
+
-
            {
+
-
                 var realTitleText = realTitle.innerText
+
-
            }
+
-
           
+
-
            var normalizedRealTitle
+
-
            var normalizedPageTitle
+
-
            var indexOfColon = realTitleText.indexOf(":")
+
-
            var normalizedNamespaceName = normalizeTitle(realTitleText.substring(0, indexOfColon)).toLowerCase()
+
-
           
+
-
            //make namespace prefix lowercase and uppercase the first letter of the title
+
-
            if (indexOfColon == -1 || wgCanonicalNamespace.toLowerCase() != normalizedNamespaceName) //no namespace prefix - either no colon or a nonsensical namespace prefix (for example, "Foo" in "Foo: The Story of My Life")
+
-
            {
+
-
                normalizedRealTitle = normalizeTitle(realTitleText)
+
-
                normalizedRealTitle = normalizedRealTitle.charAt(0).toUpperCase() + normalizedRealTitle.substring(1)
+
-
                normalizedPageTitle = wgPageName.charAt(0).toUpperCase() + wgPageName.substring(1)
+
-
            }
+
-
            else //using a namespace prefix
+
-
            {
+
-
                var normalizedRealPageTitle = normalizeTitle(realTitleText.substring(indexOfColon + 1))
+
-
               
+
-
                normalizedRealTitle = normalizedNamespaceName
+
-
                if (normalizedNamespaceName != "") //namespace 0 is a special case where the leading colon should never be shown
+
-
                {
+
-
                    normalizedRealTitle += ":"
+
                 }
                 }
-
                normalizedRealTitle += normalizedRealPageTitle.charAt(0).toUpperCase() + normalizedRealPageTitle.substring(1)
+
          }
-
                normalizedPageTitle = wgPageName.substring(0, wgPageName.indexOf(":") + 1).toLowerCase() + wgPageName.substring(wgPageName.indexOf(":") + 1)
+
      } else
-
            }
+
      if (table.getAttribute("class") == "tabelcantikcyan") {
-
           
+
          var tbodies = table.getElementsByTagName("tbody");
-
            if (normalizedRealTitle == normalizedPageTitle) //normalized titles match, so we can do full replacement
+
          for (var b = 0; b < tbodies.length; b++) {
-
            {
+
                var even = true; // We start with an even stripe.
-
                 var h1 = document.getElementsByTagName("h1")[0]
+
                 var trs = tbodies[b].getElementsByTagName("tr");
-
               
+
                 for (var c = 0; c < trs.length; c++) {
-
                //remove all child nodes, including text
+
                    if (even) {
-
                 while (h1.firstChild)  
+
                          trs[c].className += "evencyan";
-
                {
+
                    } else {
-
                    h1.removeChild(h1.firstChild)
+
                          trs[c].className += "oddcyan";
 +
                    }
 +
                    even = !even;
                 }
                 }
-
               
+
          }
-
                 //populate with nodes of real title
+
      } else
-
                 while (realTitle.firstChild) //the children are moved to a new parent element
+
      if (table.getAttribute("class") == "tabelcantikmerah") {
-
                 {
+
          var tbodies = table.getElementsByTagName("tbody");
-
                    h1.appendChild(realTitle.firstChild)
+
          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;
                 }
                 }
-
               
+
          }
-
                //delete the real title banner since the problem is solved
+
      }
-
                var realTitleBanner = document.getElementById("RealTitleBanner")
+
}
-
                realTitleBanner.parentNode.removeChild(realTitleBanner)
+
}
-
            }
+
// Perform the striping.
-
           
+
hookEvent("load", stripe);
-
            //no matter what, correct the page title
+
-
            document.title = realTitleText + " - Wiki Indonesia Kristen In-Christ"
+
}
-
        }
+
-
    })
+
-
}
+
 +
/**
 +
== ExtraEditButtons ==
 +
<pre><nowiki> */
 +
  function addCustomEditButton( imageFile, speedTip, tagOpen, tagClose, sampleText ) {
 +
  var imagePath = 'http://upload.wikimedia.org/wikipedia/commons/';
 +
  mwCustomEditButtons[mwCustomEditButtons.length] = {
 +
    "imageFile"  : imagePath + imageFile,
 +
    "speedTip"  : speedTip,
 +
    "tagOpen"    : tagOpen,
 +
    "tagClose"  : tagClose,
 +
    "sampleText" : sampleText
 +
  }; 
 +
  }
 +
 +
if ( mwCustomEditButtons && 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;", "", "" );
 +
}
 +
/*</nowiki></pre>*/
 +
/**
 +
/**
-
/** Secure upload link fix ************************************************
+
=== Sunting bagian 0 ===
-
   *
+
*/
-
   *  Description: Fix "Upload file" link when using the secure proxy.
+
function addEdittopPortletLink() {
-
   *              This is a workaround that can be removed when [[bugzilla:10843]] is fixed.
+
   if(wgCanonicalNamespace == 'Special') return;
-
   * Maintainers: [[User:Remember the dot]]
+
   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 = wgScriptPath + "/index.php?title=" + wgPageName +
 +
    "&action=edit&section=0";
 +
  addPortletLink( 'p-cactions', sLink, sText, 'ca-edittop',
 +
    'Suntingan bagian atas halaman ini', null, document.getElementById( sElm ).nextSibling );
 +
   }
 +
  }
 +
addOnloadHook( addEdittopPortletLink );
-
addOnloadHook(function()
+
/** Magic editintros ****************************************************
 +
*
 +
*  Description: Adds editintros on disambiguation pages and BLP pages.
 +
*  Maintainers: [[User:RockMFR]]
 +
*/
 +
 +
function addEditIntro(name)
{
{
-
    if (document.getElementById("t-upload"))
+
  var el = document.getElementById('ca-edit');
-
     {
+
  if (!el)
-
        document.getElementById("t-upload").getElementsByTagName("a")[0].href = wgArticlePath.replace("$1", "Bantuan:Pemuatan")
+
     return;
-
     }
+
  el = el.getElementsByTagName('a')[0];
-
})
+
  if (el)
-
 
+
     el.href += '&editintro=' + name;
-
 
+
}
-
/** Table sorting fixes ************************************************
+
   
-
  *
+
   
-
  *  Description: Disables code in table sorting routine to set classes on even/odd rows
+
if (wgNamespaceNumber == 0) {
-
  *  Maintainers: [[User:Random832]]
+
   addOnloadHook(function(){
-
  */
+
     if (document.getElementById('disambigbox'))
-
 
+
      addEditIntro('Template:Disambig_editintro');
-
ts_alternate_row_colors = false;
+
  });
-
 
+
-
/***** uploadwizard_newusers ********
+
  addOnloadHook(function(){
-
  * Switches in a message for non-autoconfirmed users at [[Bantuan:Pemuatan]]
+
    var cats = document.getElementById('mw-normal-catlinks');
-
  *
+
     if (!cats)
-
*  Maintainers: [[User:Krimpet]]
+
       return;
-
****/
+
    cats = cats.getElementsByTagName('a');
-
function uploadwizard_newusers() {
+
    for (var i = 0; i < cats.length; i++) {
-
   if (wgNamespaceNumber == 4 && wgTitle == "Upload" && wgAction == "view") {
+
      if (cats[i].title == 'Category:Living people' || cats[i].title == 'Category:Possibly living people') {
-
     var oldDiv = document.getElementById("autoconfirmedusers"),
+
        addEditIntro('Template:BLP_editintro');
-
        newDiv = document.getElementById("newusers");
+
         break;
-
     if (oldDiv && newDiv) {
+
-
       if (typeof wgUserGroups == "object" && wgUserGroups) {
+
-
        for (i = 0; i < wgUserGroups.length; i++) {
+
-
          if (wgUserGroups[i] == "autoconfirmed") {
+
-
            oldDiv.style.display = "block";
+
-
            newDiv.style.display = "none";
+
-
            return;
+
-
          }
+
-
         }
+
       }
       }
-
      oldDiv.style.display = "none";
 
-
      newDiv.style.display = "block";
 
-
      return;
 
     }
     }
-
   }
+
   });
}
}
-
addOnloadHook(uploadwizard_newusers);
 
-
 
-
/** IPv6 AAAA connectivity testing *******************************************************
+
/** WikiMiniAtlas *******************************************************
   *
   *
-
   *  Description: Uses hidden images to measure the possible negative impact of IPv6
+
   *  Description: WikiMiniAtlas is a popup click and drag world map.
-
  *  enabling the Wikimedia sites.
+
   *               This script causes all of our coordinate links to display the WikiMiniAtlas popup button.
-
   * This works by adding a hidden div to the footer with several image tags.  
+
   *               The script itself is located on meta because it is used by many projects.
-
   * The source addresses of the image tags are set to domainnames which have v4, v6 and
+
   *               See [[Meta:WikiMiniAtlas]] for more information.  
-
  *  both address types set.  The script times how long objects take to load.
+
   *  Maintainers: [[User:Dschwen]]
-
   * Results are sent back to the server. http://ipv6and4.labs.wikimedia.org/stats.html
+
-
   *  Based on http://www.braintrust.co.nz/ipv6wwwtest/
+
-
  *  Contact: [[User:Gmaxwell]], [[User:Mark Bergsma]], [[User:Mindspillage]]
+
   */
   */
-
 
+
-
var __ipv6wwwtest_factor = 100;
+
if (wgServer == "https://secure.wikimedia.org") {
-
var __ipv6wwwtest_done = 0;
+
  var metaBase = "https://secure.wikimedia.org/wikipedia/meta";
-
if ((wgServer != "https://secure.wikimedia.org") && (Math.floor(Math.random()*__ipv6wwwtest_factor)==42)) {
+
} else {
-
        var __ipv6wwwtest_timeoutMsec = 10000; // Timeout for 'final' result message in milliseconds
+
   var metaBase = "http://meta.wikimedia.org";
-
        var __ipv6wwwtest_hostSuffix = ".labs.wikimedia.org"; // Suffix to go on the IMG hostnames
+
-
        var __ipv6wwwtest_stopAtTimeout = true; // Whether to stop when the timeout is reached or not
+
-
 
+
-
        var __ipv6wwwtest_pageLoadTime;
+
-
        var __ipv6wwwtest_timeout = false;
+
-
        var __ipv6wwwtest_ipv4LoadTime = false;
+
-
        var __ipv6wwwtest_ipv4relLoadTime = false;
+
-
        var __ipv6wwwtest_ipv6LoadTime = false;
+
-
        var __ipv6wwwtest_ipv6bigLoadTime = false;
+
-
        var __ipv6wwwtest_ipv6and4LoadTime = false;
+
-
        var __ipv6wwwtest_id = Math.floor(Math.random()*Math.pow(2,31));
+
-
 
+
-
        function __ipv6wwwtest_startTest() {
+
-
                __ipv6wwwtest_pageLoadTime = new Date();
+
-
                document.getElementById("__ipv6wwwtest_ipv4Img").src = "http://ipv4" + __ipv6wwwtest_hostSuffix +"/ipv4.gif?id=" + __ipv6wwwtest_id;
+
-
                document.getElementById("__ipv6wwwtest_ipv4relImg").src = "//ipv4" + __ipv6wwwtest_hostSuffix +"/ipv4.gif?rel=1&id=" + __ipv6wwwtest_id;
+
-
                document.getElementById("__ipv6wwwtest_ipv6Img").src = "http://ipv6" + __ipv6wwwtest_hostSuffix +"/ipv6.gif?id=" + __ipv6wwwtest_id;
+
-
                document.getElementById("__ipv6wwwtest_ipv6and4Img").src = "http://ipv6and4" + __ipv6wwwtest_hostSuffix +"/ipv6and4.gif?id=" + __ipv6wwwtest_id;
+
-
                document.getElementById("__ipv6wwwtest_ipv6bigImg").src = "http://ipv6" + __ipv6wwwtest_hostSuffix +"/ipv6big.gif?id=" + __ipv6wwwtest_id;
+
-
        }
+
-
 
+
-
        function __ipv6wwwtest_sendResults(stage) {
+
-
                document.getElementById("__ipv6wwwtest_resultsImg").src = "http://results" + __ipv6wwwtest_hostSuffix +"/results.gif?id=" + __ipv6wwwtest_id + "&stage=" + stage + "&timeout=" + __ipv6wwwtest_timeoutMsec + "&stop_at_timeout=" + __ipv6wwwtest_stopAtTimeout + "&ipv4=" + __ipv6wwwtest_getLoadTime(__ipv6wwwtest_ipv4LoadTime) + "&ipv6=" + __ipv6wwwtest_getLoadTime(__ipv6wwwtest_ipv6LoadTime) + "&ipv6and4=" + __ipv6wwwtest_getLoadTime(__ipv6wwwtest_ipv6and4LoadTime) + "&ipv6big=" + __ipv6wwwtest_getLoadTime(__ipv6wwwtest_ipv6bigLoadTime) +"&ipv4rel="+ __ipv6wwwtest_getLoadTime(__ipv6wwwtest_ipv4relLoadTime) + "&rate=" + __ipv6wwwtest_factor;
+
-
        };
+
-
 
+
-
        function __ipv6wwwtest_getLoadTime(item) {
+
-
                if (item == false) {
+
-
                        return "NaN";
+
-
                } else {
+
-
                        return (item.getTime() - __ipv6wwwtest_pageLoadTime.getTime());
+
-
                }
+
-
        }
+
-
 
+
-
        function __ipv6wwwtest_checkFinished() {
+
-
                if ( (! __ipv6wwwtest_ipv6LoadTime) || (! __ipv6wwwtest_ipv4LoadTime) || (! __ipv6wwwtest_ipv6and4LoadTime) || (! __ipv6wwwtest_ipv6bigLoadTime) || (! __ipv6wwwtest_getLoadTime)) {
+
-
                        if (!__ipv6wwwtest_timeout) {
+
-
                                __ipv6wwwtest_timeout = window.setTimeout('__ipv6wwwtest_sendFinalResults()',__ipv6wwwtest_timeoutMsec);
+
-
                        }
+
-
                        __ipv6wwwtest_sendResults('partial');
+
-
                } else {
+
-
                        __ipv6wwwtest_sendFinalResults();
+
-
                }
+
-
        }
+
-
 
+
-
        function __ipv6wwwtest_sendFinalResults() {
+
-
                if (__ipv6wwwtest_done==0) {
+
-
                  if (__ipv6wwwtest_timeout) {
+
-
                          window.clearTimeout(__ipv6wwwtest_timeout);
+
-
                  }
+
-
                  __ipv6wwwtest_sendResults('final');
+
-
 
+
-
                  if (__ipv6wwwtest_stopAtTimeout) {
+
-
                          document.getElementById("__ipv6wwwtest_ipv4Img").src = "";
+
-
                          document.getElementById("__ipv6wwwtest_ipv4relImg").src = "";
+
-
                          document.getElementById("__ipv6wwwtest_ipv6Img").src = "";
+
-
                          document.getElementById("__ipv6wwwtest_ipv6and4Img").src = "";
+
-
                          document.getElementById("__ipv6wwwtest_ipv6bigImg").src = "";
+
-
                  }
+
-
                }
+
-
                __ipv6wwwtest_done=1;
+
-
        }
+
-
   addOnloadHook(function() {
+
-
        v6sub=document.getElementById("footer");
+
-
        v6sub.innerHTML=v6sub.innerHTML+'<div style="visibility: hidden;"> <img height="1" width="1" src="" id="__ipv6wwwtest_ipv4Img" onload="__ipv6wwwtest_ipv4LoadTime = new Date(); __ipv6wwwtest_checkFinished();" /> <img height="1" width="1" src="" id="__ipv6wwwtest_ipv4relImg" onload="__ipv6wwwtest_ipv4relLoadTime = new Date(); __ipv6wwwtest_checkFinished();" /> <img height="1" width="1" src="" id="__ipv6wwwtest_ipv6and4Img" onload="__ipv6wwwtest_ipv6and4LoadTime = new Date(); __ipv6wwwtest_checkFinished();" /> <img height="1" width="1" src="" id="__ipv6wwwtest_ipv6Img" onload="__ipv6wwwtest_ipv6LoadTime = new Date(); __ipv6wwwtest_checkFinished();" /> <img height="1" width="1" src="" id="__ipv6wwwtest_ipv6bigImg" onload="__ipv6wwwtest_ipv6bigLoadTime = new Date(); __ipv6wwwtest_checkFinished();" /> <img height="1" width="1" src="" id="__ipv6wwwtest_resultsImg" /> </div>';
+
-
      if (document.getElementById("__ipv6wwwtest_ipv4Img") && document.getElementById("__ipv6wwwtest_ipv6Img") && document.getElementById("__ipv6wwwtest_ipv6and4Img") && document.getElementById("__ipv6wwwtest_ipv6bigImg")) {
+
-
        __ipv6wwwtest_startTest();
+
-
      }
+
-
  });
+
}
}
-
 
+
importScriptURI(metaBase+"/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400")
-
//</source>
+

Revisi terkini pada 13:38, 12 Maret 2012

mw.loader.using( 'mediawiki.util', function() {

/**

JavaScript yang ada di sini akan diterapkan untuk semua kulit.
__TOC__
== Deklarasi variabel ==
 
 Variabel-variabel yang dipakai secara global */

 var ScriptPrefix = '<script type="text/javascript" src="/w/index.php?title=';
 var ScriptSuffix = '&action=raw&ctype=text/javascript&dontcountme=s"></script>';
 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 */

 document.write( ScriptPrefix + 'Pengguna:' + wgUserName + '/switches.js' + ScriptSuffix );

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

 // Fix tampilan untuk IE
 /* 
 if (window.showModalDialog && document.compatMode && document.compatMode == "CSS1Compat")
 {
     var oldWidth;
     var docEl = document.documentElement;
     function fixIEScroll()
     {
          if (!oldWidth || docEl.clientWidth > oldWidth)
               doFixIEScroll();
          else
               setTimeout(doFixIEScroll, 1);  
          oldWidth = docEl.clientWidth;
     }
     function doFixIEScroll() {
          docEl.style.overflowX = (docEl.scrollWidth - docEl.clientWidth < 4) ? "hidden" : "";
     }
     document.attachEvent("onreadystatechange", fixIEScroll);
     attachEvent("onresize", fixIEScroll);
 }

 // addLoadEvent, menambahkan event
 
 function addLoadEvent(func) 
 {
     if (window.addEventListener) 
          window.addEventListener("load", func, false);
     else if (window.attachEvent) 
          window.attachEvent("onload", func);
 }
*/
/**
== MainPageTransform ==

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

 var mpTitle = "Halaman Utama";
 var isMainPage = (document.title.substr(0, mpTitle.length) == mpTitle)
 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 ( isMainPage && !isDiff && (wgCanonicalNamespace != 'Special') ) 
 {
     document.write('<style type="text/css"> #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; } </style>');
     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;
          }
     }
     var onloadFuncts = [ mainPageTransform ];
     if (window.addEventListener) 
          window.addEventListener("resize", mainPageTransform, false);
     else if (window.attachEvent) 
          window.attachEvent("onresize", mainPageTransform);
 }
 function mainpg() {
     if ((isMainPage || /[\/=:]Halaman_Utama/.test(document.location)) && document.getElementById('ca-nstab-main')) {
          document.getElementById('ca-nstab-main').firstChild.innerHTML = 'Utama';
     }   
 }
 addOnloadHook(mainpg);

/**
== LowcaseTitle ==

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

 if (document.URL.indexOf("=edit") > 0 || document.URL.indexOf("=submit") > 0) {var noJS;}
 else {
      document.write('<style type="text/css">#title-override {display: none; speak: none;}<\/style>');
      function pTitle() {
           if (document.getElementById("title-override")) {
                var pTitle = document.getElementById("pTitle").innerHTML;
                document.getElementsByTagName("h1")[0].innerHTML = pTitle;
           }
      }
      hookEvent("load", pTitle);
 }

/**
== LinkFA ==

Menambahkan bintang di InterWiki
 */
 if (LoadLinkFA == true) {
 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 += " FA"
                 InterwikiLinks[i].title = "Ini adalah artikel pilihan pada bahasa lain.";
             }
         }
     }
 }
 
 addOnloadHook( 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';
       }
     }
   }
 }
 addOnloadHook( linkExtLinkFA )
/**

== InterProject ==

InterProject, link di menu samping untuk proyek lain.

 <nowiki> */
 if (LoadInterProject == true) {
 document.write('<style type="text/css">#interProyek {display: none; speak: none;} #p-tb .pBody {padding-right: 0;}<\/style>');
 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);
     }
 }
 addOnloadHook(iProject);
 }
 /* </nowiki> */

/**
== CollapsibleTable ==*/
 var autoCollapse = 2;
 var collapseCaption = "sembunyikan";
 var expandCaption = "tampilkan";
 
 window.hasClass = (function () {
     var reCache = {};
     return function (element, className) {
         return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
     };
 })();

window.collapseTable = function( 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 ( hasClass( Tables[i], "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 ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
            collapseTable( i );
        } 
        else if ( hasClass( NavigationBoxes[i], "innercollapse" ) ) {
            var element = NavigationBoxes[i];
            while (element = element.parentNode) {
                if ( hasClass( element, "outercollapse" ) ) {
                    collapseTable ( i );
                    break;
                }
            }
        }
    }
}

addOnloadHook( createCollapseButtons );

 /* End of CollapsibleTable */

/**

== NavFrame ==

 Memberikan bagian yang bisa disembunyikan */

 if (LoadNavFrame == true) {
 
 // set up the words in your language
 var NavigationBarHide = '[ Sembunyikan ]';
 var NavigationBarShow = '[ Tampilkan ]';
 // 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
window.toggleNavigationBar = function(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)
             for(var j=0; j < NavFrame.childNodes.length; 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);
          }
     }
 }

 addOnloadHook( createNavigationBarToggleButton );
 
 }

/**
== Edittools ==

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

 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
 addOnloadHook( 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' );
 }
 onloadFuncts.push( 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 ) {};
 	}
 }
 /* </nowiki></pre> */

/**

== 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.
 hookEvent("load", stripe);
 
 }

/**
== ExtraEditButtons ==
 <pre><nowiki> */
  function addCustomEditButton( imageFile, speedTip, tagOpen, tagClose, sampleText ) {
   var imagePath = 'http://upload.wikimedia.org/wikipedia/commons/';
   mwCustomEditButtons[mwCustomEditButtons.length] = {
    "imageFile"  : imagePath + imageFile,
    "speedTip"   : speedTip,
    "tagOpen"    : tagOpen,
    "tagClose"   : tagClose,
    "sampleText" : sampleText
   };  
  }
 
 if ( mwCustomEditButtons && 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;", "", "" );
 }
 /*</nowiki></pre>*/
/**
/**

=== Sunting bagian 0 ===
 */
 function addEdittopPortletLink() {
  if(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 = wgScriptPath + "/index.php?title=" + wgPageName +
    "&action=edit&section=0";
   addPortletLink( 'p-cactions', sLink, sText, 'ca-edittop',
    'Suntingan bagian atas halaman ini', null, document.getElementById( sElm ).nextSibling );
  }
 }
 addOnloadHook( addEdittopPortletLink );

/** 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 (wgNamespaceNumber == 0) {
  addOnloadHook(function(){
    if (document.getElementById('disambigbox'))
      addEditIntro('Template:Disambig_editintro');
  });
 
  addOnloadHook(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 *******************************************************
  *
  *  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. 
  *  Maintainers: [[User:Dschwen]]
  */
 
if (wgServer == "https://secure.wikimedia.org") {
  var metaBase = "https://secure.wikimedia.org/wikipedia/meta";
} else {
  var metaBase = "http://meta.wikimedia.org";
}
importScriptURI(metaBase+"/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400")
Peralatan pribadi