Pengguna:Empu/common.js

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Versi yang bisa dicetak tidak lagi didukung dan mungkin memiliki kesalahan tampilan. Tolong perbarui markah penjelajah Anda dan gunakan fungsi cetak penjelajah yang baku.

Catatan: Setelah menyimpan, Anda harus memintas tembolok (cache) peramban Anda untuk melihat perubahannya. Google Chrome, Firefox, Microsoft Edge dan Safari: Tahan tombol Shift dan klik Muat ulang (Reload) di tombol bilah alat. Untuk detail dan instruksi tentang peramban lain, lihat halaman menghapus singgahan (Inggris).

/**
 
JavaScript sing ana ing kéné bakal diterapaké kanggo kabèh 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 = '<span>Utama<\/span>';
     }   
 }
 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 & 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 += " FA"
                InterwikiLinks[i].title = "Ini adalah artikel pilihan pada bahasa lain.";
            } else if ( document.getElementById( InterwikiLinks[i].className + "-ga" ) ) {
                InterwikiLinks[i].className += " GA"
                InterwikiLinks[i].title = "Ini adalah artikel bagus pada bahasa lain.";
            }
        }
    }
}
 
$( 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";
 
 var 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 )
{
    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;
                }
            }
        }
    }
}
 
$( 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 (hasClass(NavChild, 'NavContent') || hasClass(NavChild, '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 (hasClass(NavChild, 'NavContent') || hasClass(NavChild, '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 (hasClass(NavFrame, "NavFrame")) {
 
            indexNavigationBar++;
            var NavToggle = document.createElement("a");
            NavToggle.className = 'NavToggle';
            NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
            NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
 
            var isCollapsed = hasClass( NavFrame, "collapsed" );
            /*
             * Check if any children are already hidden.  This loop is here for backwards compatibility:
             * the old way of making NavFrames start out collapsed was to manually add style="display:none"
             * to all the NavPic/NavContent elements.  Since this was bad for accessibility (no way to make
             * the content visible without JavaScript support), the new recommended way is to add the class
             * "collapsed" to the NavFrame itself, just like with collapsible tables.
             */
            for (var NavChild = NavFrame.firstChild; NavChild != null && !isCollapsed; NavChild = NavChild.nextSibling) {
                if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) {
                    if ( NavChild.style.display == 'none' ) {
                        isCollapsed = true;
                    }
                }
            }
            if (isCollapsed) {
                for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) {
                    if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent' ) ) {
                        NavChild.style.display = 'none';
                    }
                }
            }
            var NavToggleText = document.createTextNode(isCollapsed ? NavigationBarShow : NavigationBarHide);
            NavToggle.appendChild(NavToggleText);
 
            // Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
            for(var j=0; j < NavFrame.childNodes.length; j++) {
                if (hasClass(NavFrame.childNodes[j], "NavHead")) {
                    NavFrame.childNodes[j].appendChild(NavToggle);
                }
            }
            NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
        }
    }
}
 
$( createNavigationBarToggleButton );
 
/**
== Edittools ==
 
 Drop down box for the Special character menu in [[MediaWiki:Edittools]]
 Adapted from:
 http://de.wiktionary.org/wiki/MediaWiki:Onlyifediting.js ,
 http://de.wiki-indonesia.club/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>*/
/**
 
== Portlet tambahan ==
 
=== Jumlah suntingan ===
 */
 function addEditcountPortlet() {
  if ( document.getElementById("t-contributions") ) {
   var sServer = 'idwiki';
   switch ( wgServer ) {
    case 'http://id.wikibooks.org':
     sServer = 'idwikibooks';
     break;
    case 'http://id.wiktionary.org':
     sServer = 'idwiktionary';
     break;
    case 'http://id.wikiquote.org':
     sServer = 'idwikiquote';
     break;
    case 'http://id.wikisource.org':
     sServer = 'idwikisource';
     break;
   }
   var sText = 'Statistik pengguna';
   var sLink = 'http://toolserver.org/~soxred93/count/index.php?&lang=id&wiki=wikipedia&uselang=id' +
    '&name=' + wgTitle;
   mw.util.addPortletLink( 'p-tb', sLink, sText, 't-editcount', 
    'Jumlah suntingan pengguna', null, document.getElementById( 't-contributions' ).nextSibling );
  }
 }
 addOnloadHook( addEditcountPortlet );
/**
 
=== 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";
   mw.util.addPortletLink( 'p-cactions', sLink, sText, 'ca-edittop',
    'Suntingan bagian atas halaman ini', null, document.getElementById( sElm ).nextSibling );
  }
 }
 addOnloadHook( addEdittopPortletLink );
/**
 
=== Notice di [[Wikipedia:Bak pasir]] dan [[Pembicaraan Wikipedia:Bak pasir]] ===
 */
 function sandboxNotice() {
 notice = document.createElement('div');
 document.getElementById('bodyContent').insertBefore(notice, document.getElementById('jump-to-nav').nextSibling);
 noticeLoader = sajax_init_object();
 noticeLoader.open('GET', 'http://wiki-indonesia.club/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 (wgAction.match(/view|edit|submit/)) {
    addOnloadHook(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 (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";
}
mw.loader.load(metaBase+"/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400")