Naraguna:Amire80/suggestedCommon.js
Cathetan: Nalika rampung nyimpen, panjenengan kudu mbusek telihing pangluruné panjenengan supaya owahané katon.
- Firefox / Safari: Pencèt Shift nalika ngeklik Reload, utawa pencèt Ctrl-F5 utawa Ctrl-R (⌘-R ing Mac)
- Google Chrome: Pencèt Ctrl-Shift-R (⌘-Shift-R ing Mac)
- Internet Explorer / Edge: Pencèt Ctrl nalika ngeklik Refresh, utawa pencèt Ctrl-F5
- Opera: Menyang Menu → Settings (Opera → Preferences ing Mac) nuli menyang Privacy & security → Clear browsing data → Cached images and files.
/**
JavaScript sing ana ing kéné bakal ditrapaké kanggo kabèh kulit.
__TOC__
== Dhéklarasi variabel ==
Variabel-variabel sing dianggo sacara global */
var LoadInterProject = true;
var LoadLinkFA = true;
var LoadNavFrame = true;
var load_edittools = true;
var LoadExtraPortlet = true;
var LoadStripe = true;
var LoadEditTop = true;
var LoadExtraEditButtons = true;
var load_extratabs = false;
var LoadPageCounter = false;
/**
== Variabel saklar saben panganggo ==
Owahi [[Astamiwa:Mypage/switches.js]] kanggo ngatur fitur sing kepingin panjenengan aktifaké utawa patèni */
if (mw.config.get( 'wgUserName' )) {
importScript( 'Panganggo:' + mw.config.get( 'wgUserName' ) + '/switches.js' );
}
/**
== LowcaseTitle ==
Judhul nganggo [[Template:Judul|aksara pisanan cilik]]. */
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 ==
Nambahaké tandha bintang ing 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.indexOf( "badge-featuredarticle" ) === -1 ) {
InterwikiLinks[i].className += " FA";
InterwikiLinks[i].title = "Iki artikel pilihan ing basa liya.";
}
}
}
}
$( LinkFA );
}
/**
== Pranala jaba pilihan ==
Nandhani pranala jaba pilihan. Gunakna cithakan {{tl|extlink-fa}} ing ngarep utawa mburiné pranala jaba. Iki bakal mi sawijining obyèk "span" kothong sing bakal dikenali déning JavaScript sing bakal ngowahi style bullet-é.
*/
function linkExtLinkFA() {
bodyContent = document.getElementById( "bodyContent" );
// Some pages don't have bodyContent, so just skip them
if ( bodyContent === null ) {
return;
}
oSpans = 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';
}
}
}
}
$( linkExtLinkFA );
/**
== InterProject ==
InterProject, link ing menu sisih kanggo proyèk liya.
<nowiki> */
if (LoadInterProject == true) {
// document.write('<style type="text/css">#interProyèk {display: none; speak: none;} #p-tb .pBody {padding-right: 0;}<\/style>');
function iProject() {
if (document.getElementById("interProyèk")) {
var iProject = document.getElementById("interProyèk").innerHTML;
var interProject = document.createElement("div");
interProject.style.marginTop = "0.7em";
interProject.innerHTML = '<h5>Proyèk liya<\/h5><div class="pBody">'+iProject+'<\/div>';
document.getElementById("p-tb").appendChild(interProject);
}
}
$(iProject);
}
/* </nowiki> */
/**
== CollapsibleTable ==*/
var autoCollapse = 2;
var collapseCaption = "dhelikaké";
var expandCaption = "tuduhaké";
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.getElementsByTagName( "tr" );
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" ) ) {
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( collapseCaption );
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "6em";
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( " [ " ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( " ] " ) );
var Header = Tables[i].getElementsByTagName( "tr" )[0].getElementsByTagName( "th" )[0];
/* only add button and increment count if there is a header row to work with */
if (Header) {
Header.insertBefore( Button, Header.childNodes[0] );
tableIndex++;
}
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
collapseTable( i );
}
}
}
$( createCollapseButtons );
/* End of CollapsibleTable */
/**
== NavFrame ==
Mènèhi bagéan sing bisa didhelikaké */
if (LoadNavFrame == true) {
// set up the words in your language
var NavigationBarHide = '[ Dhelikaké ]';
var NavigationBarShow = '[ Tuduhaké ]';
// set up max count of Navigation Bars on page,
// if there are more, all will be hidden
// NavigationBarShowDefault = 0; // all bars will be hidden
// NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
var NavigationBarShowDefault = 0;
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == NavigationBarHide) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'none';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = NavigationBarShow;
// if hidden now
} else if (NavToggle.firstChild.data == NavigationBarShow) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
for(
var i=0;
NavFrame = document.getElementsByTagName("div")[i];
i++
) {
// if found a navigation bar
if (NavFrame.className == "NavFrame") {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
var NavToggleText = document.createTextNode(NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
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);
}
}
}
$( createNavigationBarToggleButton );
}
/**
== Edittools ==
Drop down box for the Special character menu in [[MediaWiki:Edittools]]
Adapted from:
//de.wiktionary.org/wiki/MediaWiki:Onlyifediting.js ,
//de.wikipedia.org/wiki/MediaWiki:Onlyifediting.js and
//en.wiktionary.org/wiki/MediaWiki:Monobook.js
<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+Cithakan</option>";
menu += "<option>Aksara Jawa</option>";
menu += "<option>Arab</option>";
menu += "<option>Céko</option>";
menu += "<option>Devanāgarī</option>";
menu += "<option>Esperanto</option>";
menu += "<option>Estonia</option>";
menu += "<option>Hawaii</option>";
menu += "<option>Hungaria</option>";
menu += "<option>IPA</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>Latin</option>";
menu += "<option>Latvia</option>";
menu += "<option>Malta</option>";
menu += "<option>Prancis</option>";
menu += "<option>Pinyin</option>";
menu += "<option>Polandia</option>";
menu += "<option>Portugis</option>";
menu += "<option>Romaji</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
$( 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' );
}
$( 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 ==
[[Pitulung:Tabel|Tabel ayu]] */
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") == "tabelayu") {
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") == "tabelayucyan") {
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") == "tabelayuabang") {
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 += "evenabang";
} else {
trs[c].className += "oddabang";
}
even = !even;
}
}
}
}
}
// Perform the striping.
// hookEvent("load", stripe);
}
/**
== Portlet tambahan ==
=== Gunggung 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 panganggo';
var sLink = 'https://toolserver.org/~vvv/yaec.php?wiki=jvwiki_p' +
'&user=' + wgTitle;
mw.util.addPortletLink( 'p-tb', sLink, sText, 't-editcount',
'Cacahing suntingan panganggo', null, document.getElementById( 't-contributions' ).nextSibling );
}
}
$( addEditcountPortlet );
*/
/**
=== Sunting bagian 0 ===
*/
function addEdittopPortletLink() {
if(mw.config.values.wgCanonicalNamespace == 'Special') return;
if(document.getElementById("wikiPreview")) return;
if(document.getElementById("histlegend")) return;
if(document.getElementById("difference")) return;
if(document.getElementById("watchdetails")) return;
if ( document.getElementById( "ca-edit" ) ) {
var sElm = document.getElementById( "ca-addsection" ) ? 'ca-addsection' : 'ca-edit';
var sText = '↑';
var sLink = mw.config.values.wgScriptPath + "/index.php?title=" + mw.config.values.wgPageName +
"&action=edit§ion=0";
mw.util.addPortletLink( 'p-cactions', sLink, sText, 'ca-edittop',
'Suntingan bagian atas halaman ini', null, document.getElementById( sElm ).nextSibling );
}
}
$( addEdittopPortletLink );
/**
=== Notice di [[Wikipedia:Kothak wedhi]] lan [[Dhiskusi Wikipedia:Kothak wedhi]] ===
*/
function sandboxNotice() {
bodyContent = document.getElementById( "bodyContent" );
// Some pages don't have bodyContent, so just skip them
if ( bodyContent === null ) {
return;
}
notice = document.createElement('div');
bodyContent.insertBefore(notice, document.getElementById('jump-to-nav').nextSibling);
noticeLoader = sajax_init_object();
noticeLoader.open('GET', '//id.wikipedia.org/w/index.php?title=Cithakan:Kothakwedhi&action=render', true);
noticeLoader.onreadystatechange = function()
{
if (noticeLoader.readyState == 4 && noticeLoader.status == 200) {
notice.innerHTML = noticeLoader.responseText;
}
};
noticeLoader.send('');
}
if (mw.config.values.wgAction.match(/view|edit|submit/)) {
$(function() {
if (document.getElementsByTagName('body')[0].className.match(/page-(Dhiskusi_)?Wikipedia_Kothak_wedhi/)) {
return sandboxNotice();
}
});
}
/**
* WikiMiniAtlas is a popup click and drag world map.
* See [[meta:WikiMiniAtlas]] for more information.
* Maintainers: [[w:User:Dschwen]]
*/
mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript');