Tagagamit:Felipe Aira/monobook.js
Tandaan: Pagkatapos magtala, dapat linisin mo ang cache ng iyong browser upang makita ang mga pagbabago: Mozilla: i-klik ang reload (o ctrl-r), IE / Opera: ctrl-f5, Safari: cmd-r, Konqueror ctrl-r.
==addLoadEvent==
<pre> */
function addLoadEvent(func)
{
addOnloadHook( func );
}
/* </pre>
==Dynamic Navigation Bars (experimental)==
<pre> */
// ============================================================
// BEGIN Dynamic Navigation Bars (experimental)
// FIXME: currently only works for one nav bar on a page at a time
// set up the words in your language
var NavigationBarHide = '[Itago]';
var NavigationBarShow = '[Ipakita]';
// 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 = 1;
//Honor the User Preferences
if ( getCookie('WiktionaryPreferencesShowNav') != 'true' ) {
NavigationBarShowDefault = 0;
} else {
if ( wgNamespaceNumber == 0 ) NavigationBarShowDefault = 999 ;
}
/* </pre>
===toggleNavigationBar===
<pre> */
// 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;
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;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = NavigationBarHide;
}
}
/* </pre>
===createNavigationBarToggleButton===
<pre> */
// 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);
}
}
}
addLoadEvent(createNavigationBarToggleButton);
// END Dynamic Navigation Bars
// ============================================================
/* </pre>
==Cookies==
<pre> */
//Cookie helpers
function setCookie(cookieName, cookieValue) {
var today = new Date();
var expire = new Date();
var nDays = 30;
expire.setTime( today.getTime() + (3600000 * 24 * nDays) );
document.cookie = cookieName + "=" + escape(cookieValue)
+ ";path=/w"
+ ";expires="+expire.toGMTString();
document.cookie = cookieName + "=" + escape(cookieValue)
+ ";path=/wiki"
+ ";expires="+expire.toGMTString();
}
function getCookie(cookieName) {
var start = document.cookie.indexOf( cookieName + "=" );
if ( start == -1 ) return "";
var len = start + cookieName.length + 1;
if ( ( !start ) &&
( cookieName != document.cookie.substring( 0, cookieName.length ) ) )
{
return "";
}
var end = document.cookie.indexOf( ";", len );
if ( end == -1 ) end = document.cookie.length;
return unescape( document.cookie.substring( len, end ) );
}
function deleteCookie(cookieName) {
if ( getCookie(cookieName) ) {
document.cookie = cookieName + "=" + ";path=/w" +
";expires=Thu, 01-Jan-1970 00:00:01 GMT";
document.cookie = cookieName + "=" + ";path=/wiki" +
";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}
}
/* </pre>
==addCharSubsetMenu==
<pre> */
/* add menu for selecting subsets of secial characters */
/***** must match MediaWiki:Edittools *****/
function addCharSubsetMenu() {
var edittools = document.getElementById('editpage-specialchars');
if (edittools) {
var menu = "<select id=\"charSubsetControl\" style=\"display:inline\" onChange=\"chooseCharSubset(selectedIndex)\">";
menu += "<option>Templates</option>";
menu += "<option>Latin/Roman</option>";
menu += "<option>IPA</option>";
menu += "<option>enPR</option>";
menu += "<option>Misc.</option>";
menu += "<option>Arabic</option>";
menu += "<option>Armenian</option>";
menu += "<option>Catalan</option>";
menu += "<option>Cyrillic</option>";
menu += "<option>Devanāgarī</option>";
menu += "<option>Esperanto</option>";
menu += "<option>Estonian</option>";
menu += "<option>French</option>";
menu += "<option>German</option>";
menu += "<option>Gothic</option>";
menu += "<option>Greek (Modern)</option>";
menu += "<option>Greek (Ancient)</option>";
menu += "<option>Hawaiian</option>";
menu += "<option>Hebrew</option>";
menu += "<option>Icelandic</option>";
menu += "<option>Italian</option>";
menu += "<option>Latvian/Lithuanian</option>";
menu += "<option>Maltese</option>";
menu += "<option>Old English</option>";
menu += "<option>Pinyin</option>";
menu += "<option>Portuguese</option>";
menu += "<option>Romaji</option>";
menu += "<option>Romanian</option>";
menu += "<option>Scandinavian</option>";
menu += "<option>Slavic Roman</option>";
menu += "<option>Sorani Kurdish</option>";
menu += "<option>Spanish</option>";
menu += "<option>Turkish</option>";
menu += "<option>Vietnamese</option>";
menu += "<option>Welsh</option>";
menu += "<option>Yoruba</option>";
menu += "</select>";
edittools.innerHTML = menu + edittools.innerHTML;
/* default subset from cookie */
var s = parseInt( getCookie('edittoolscharsubset') );
if ( isNaN(s) ) s = 0;
/* update dropdown control to value of cookie */
document.getElementById('charSubsetControl').selectedIndex = s;
/* display the subset indicated by the cookie */
chooseCharSubset( s );
}
}
/* </pre>
===chooseCharSubsetMenu===
<pre> */
/* select subsection of special characters */
function chooseCharSubset(s) {
var l = document.getElementById('editpage-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';
}
setCookie('edittoolscharsubset', s);
}
/* </pre>
==doRedirect==
<pre> */
/* Redirect if a case-insensitive search on an external link is found */
function doRedirect() {
dym = document.getElementById('did-you-mean')
if ( dym ) {
if ( getCookie('WiktionaryDisableAutoRedirect') != 'true' ) {
var dymtarget = dym.firstChild.title ;
var target = dymtarget ;
pagetitle = document.getElementsByTagName('h1').item(0).firstChild.nodeValue;
if (pagetitle == target) {
alert('No looping allowed.');
return;
}
if ( pagetitle.toLowerCase().replace(/[^a-z]/g, "") != target.toLowerCase().replace(/[^a-z]/g, "") ) {
alert(target + " does not match " + pagetitle);
return;
}
if ( pagetitle.search(/Editing /g) != -1 ) return;
pagenamee = target.replace(/\ /g, "_");
document.location.replace( 'http://en.wiktionary.org/wiki/Special:Search/' + pagenamee ) ;
}
}
}
/* </pre>
==fixEditSectionWikifiedLinks==
<pre> */
// edit-section still doesn't return to correct spot if link contains a [[wikified]] term.
function fixEditSectionWikifiedLinks() {
if (/\.5B/.test(window.location.href)) {
var url=window.location.href.replace(/.5B.5B:/g,"").replace(/.5B/g, "").replace(/.5D/g, "");
window.location = url;
}
//#capiche_and_.7B.7Btemp.7Calternative_spelling_of.7D.7D
if (/\.7B\.7Btemp\.7C(.*?)\.7D\.7D/.test(window.location.href)) {
var url=window.location.href.replace(/\.7B\.7Btemp.7C/, ".7B.7B");
window.location = url;
}
}
/* </pre>
==Hide "Main Page" heading and several other elements on the Main Page==
<pre> */
var mpTitle = "Unang Pahina";
var isMainPage = (document.title.substr(0, document.title.lastIndexOf(" - ")) == mpTitle);
var isDiff = (document.location.search && (document.location.search.indexOf("diff=") != -1 || document.location.search.indexOf("oldid=") != -1));
if (isMainPage && !isDiff) document.write('<style type="text/css">/*<![CDATA[*/ #lastmod, #siteSub, #contentSub, h1.firstHeading { display: none !important; } /*]]>*/</style>');
/* </pre>
== User Preferences (experimental) ==
<pre> */
// [[User:Connel MacKenzie/custom.js]] - User preferences
document.write('<script type="text/javascript" src="/w/index.php?title=User:Connel_MacKenzie/custom.js&action=raw&ctype=text/javascript"><\/script>');
/* </pre>
== Wiktionary-specific tooltips ==
<pre> */
function wiktHeadingToolTips() {
}
// Disabled entirely, 1/5/2007 --~~~~
/*
// only add heading tooltips in the article namespace
// try again, to turn it off 1/19/2007 --~~~~
// if (document.getElementsByTagName('body')[0].className.match(/ns-0/)) {
if (false) {
// all level-2 headings are languages (or equivalents such as Translingual)
var allh2s = document.getElementById('bodyContent').getElementsByTagName('h2');
if (allh2s != -1) {
for (var i = 0; i < allh2s.length; i++) {
allh2s[i].title = 'The language this term belongs to';
}
}
// level 3, 4, and 5 headings depend on their content
var h345 = new Array('h3', 'h4', 'h5');
for (var j = 0; j < h345.length ; j++) {
var allh345s = document.getElementById('bodyContent').getElementsByTagName(h345[j]);
if (allh345s != -1) {
for (var i = 0; i < allh345s.length; i++) {
// part of speech
var ht = allh345s[i].innerHTML.replace(/^(?:\d+(?:\.\d+)* )?(.*)/, "$1");
var ht2 = ht;
if (ht.search(/editsection/) != -1) {
ht = ht.split('<span class="mw-headline">',i)[1];
if (!ht) ht = ht2.split(/<span class=mw-headline>/,i)[1];
if (!ht) ht = "";
ht = ht.split('</span>',i)[0];
}
if (ht == 'Pang-uri' || ht == 'Pang-abay' || ht == 'Conjunction' || ht == 'Pandamdam' || ht == 'Pangngalan' || ht == 'Unlapi' || ht == 'Pangatnig' || ht == 'Pronoun' || ht == 'Pangngalang pantangi' || ht == 'Hulapi' || ht == 'Pandiwa' || ht == 'Uri ng pandiwa') {
allh345s[i].title = 'Part of speech or function of this term';
} else if (ht == 'Mga alternatibong pagbaybay') {
allh345s[i].title = 'Mga ibang paraan sa pagbaybay ng salitang ito sa parehong wika';
} else if (ht == 'Mga anagrama') {
allh345s[i].title = 'Mga salita na binaybay sa pamamagitan ng magkaparehong titik pero sa ibang pagkakaayos';
} else if (ht == 'Mga salungatkahulugan') {
allh345s[i].title = 'Mga salita na may kasalungat na kahulugan sa isang sinto sa pinakakaunti';
} else if ( (ht == 'Etimolohiya') || (ht == 'Etimolohiya 1') || (ht == 'Etimolohiya 2') || (ht == 'Etimolohiya 3') || (ht == 'Etimolohiya 4') ) {
allh345s[i].title = 'Ang pinagmulan ng salitang ito';
} else if (ht == 'Mga deribasyon') {
allh345s[i].title = 'Mga salita na nakabatay sa orihinal na salita sa pamamagitan ng pag-aaplay ng mga hulaping pambatay, atbp.';
} else if (ht == 'Mga palantandaang pandiksyonarto') {
allh345s[i].title = 'Paano tinatrato ng mga ibang diksyonaryo ang salitang ito';
} else if (ht == 'Mga salitang magkapareho sa pagbigkas') {
allh345s[i].title = 'Mga salitang magkapareho sa pagbigkas katulad ng salitang ito sa isang diyalekto o aksento sa pinakakaunti';
} else if (ht == 'Pagbigkas') {
allh345s[i].title = 'Paano magbigkas ng salitang ito, posible sa mga iba't-ibang diyalekto';
} else if (ht == 'Mga sanggunian') {
allh345s[i].title = 'Mga kawing sa mga panlabas na pangasiwaang pang-wika';
} else if (ht == 'Mga salitang magkaugnay') {
allh345s[i].title = 'Mga kaugnay na salita base sa etimolohiya maliban sa simpleng salitang naka-base';
} else if (ht == 'Silipin din') {
allh345s[i].title = 'Mga salita na may relasyong semantika pero walang relasyon sa etimolohiya';
} else if (ht == 'Mga singkahulugan') {
allh345s[i].title = 'Mga salita na may parehong kahulugan sa isang sinto sa pinakakaunti';
} else if (ht == 'Mga salin') {
allh345s[i].title = 'Mga katumbas na salita sa ibang wika';
} else if (ht == 'Mga palantandaan sa paggamit') {
allh345s[i].title = 'Mga bagay na kailangan alamin kung ginagamit ang salitang ito';
} else {
// default case - warn that it's nonstandard (or just not handled yet)
allh345s[i].title = '"' + ht + '" is not a standard Wiktionary heading';
}
}
}
}
}
}
*/
// end block disable
/* </pre>
==Statistics==
* Hook to use LeonWP's toolserver statistics generator
*
<pre> */
// ============================================================
// BEGIN pageview counter
// Please talk to de:User:LeonWeber before changing anything or
// if there are any issues with that.
// this should be adjusted to a good value.
// BE CAREFULL, you will break zedler if it's too low!
// And then DaB. will kill Leon :-(
var disable_counter = 0; // 0 = collect stats from anons, 1 = turn off entirely
var counter_factor = 40; //Wikipedias are ~600. Use Alexa for a WAG
function pgcounter_setup()
{
if( (disable_counter == 0) && (wgUserName == null) )
{
var url = window.location.href;
if(Math.floor(Math.random()*counter_factor)==4) // the probability thing
{
if(wgIsArticle==true) // do not count history pages etc.
{
var pgcountNs = wgCanonicalNamespace;
if(wgCanonicalNamespace=="")
{
pgcountNs = "0";
}
var cnt_url = "http://pgcount.wikimedia.de/index.png?ns=" + pgcountNs + "&title=" + encodeURI(wgTitle) + "&factor=" + counter_factor + "&wiki=enwiktionary";
var img = new Image();
img.src = cnt_url;
}
}
}
}
// Do not use aOnloadFunctions[aOnloadFunctions.length] = pgcounter_setup;, some browsers don't like that.
pgcounter_setup();
// END pageview counter
// ============================================================
/* </pre>
==customizeWiktionary==
<pre> */
/* do any Wiktionary-specific customizations */
/* FireFox and IE 7 allow sites to customize the integrated search box. Below exposes that through [[WT:CUSTOM]]. */
function integrateMediaWikiSearch() {
window.external.AddSearchProvider('http://en.wiktionary.org/w/index.php?title=MediaWiki:SearchEnWiktWithMediaWiki.xml&action=raw');
}
function integrateGoogleSearch() {
window.external.AddSearchProvider('http://en.wiktionary.org/w/index.php?title=MediaWiki:SearchEnWiktWithGoogle.xml&action=raw');
}
function integrateGoogleCrossWiktSearch() {
window.external.AddSearchProvider('http://en.wiktionary.org/w/index.php?title=MediaWiki:SearchAllWiktWithGoogle.xml&action=raw');
}
function integrateNinjawordsSearch() {
window.external.AddSearchProvider('http://en.wiktionary.org/w/index.php?title=MediaWiki:SearchWithNinjawords.xml&action=raw');
}
function addSearchProviderOptionsToWtCustom() {
var addSearchProviders = document.getElementById('wtCustomIntegratedSearchProviders');
if(addSearchProviders) {
if(document.all) { addSearchProviders.innerText = '';
} else {
while (addSearchProviders.hasChildNodes())
addSearchProviders.removeChild(addSearchProviders.firstChild);
}
var anchor = document.createElement("a");
anchor.setAttribute('href', '#');
if(document.all) { anchor.innerText = 'Add integrated search provider “English Wiktionary”.'; } else { anchor.textContent = 'Add integrated search provider “English Wiktionary”.'; }
anchor.onclick = integrateMediaWikiSearch;
addSearchProviders.appendChild( anchor );
var br = document.createElement("br");
addSearchProviders.appendChild( br );
anchor = document.createElement("a");
anchor.setAttribute('href', '#');
if(document.all) { anchor.innerText = 'Add integrated search provider “English Wiktionary via Google”.'; } else { anchor.textContent = 'Add integrated search provider “English Wiktionary via Google”.'; }
anchor.onclick = integrateGoogleSearch;
addSearchProviders.appendChild( anchor );
br = document.createElement("br");
addSearchProviders.appendChild( br );
anchor = document.createElement("a");
anchor.setAttribute('href', '#');
if(document.all) { anchor.innerText = 'Add integrated search provider “All Wiktionaries via Google”.'; } else { anchor.textContent = 'Add integrated search provider “All Wiktionaries via Google”.'; }
anchor.onclick = integrateGoogleCrossWiktSearch;
addSearchProviders.appendChild( anchor );
br = document.createElement("br");
addSearchProviders.appendChild( br );
anchor = document.createElement("a");
anchor.setAttribute('href', '#');
if(document.all) { anchor.innerText = 'Add integrated search provider “English Wiktionary via Ninjawords”.'; } else { anchor.textContent = 'Add integrated search provider “English Wiktionary via Ninjawords”.'; }
anchor.onclick = integrateNinjawordsSearch;
addSearchProviders.appendChild( anchor );
}
}
function customizeWiktionary() {
doRedirect();
addCharSubsetMenu();
fixEditSectionWikifiedLinks();
wiktHeadingToolTips();
addSearchProviderOptionsToWtCustom();
}
addLoadEvent(customizeWiktionary);
/* Remember to keep [[MediaWiki:Standard.js]] in sync with this, for classic style! */
/* </pre>
== Link FA ==
<pre> */
function LinkFA()
{
// iterate over all <span>-elements
for(var i=0; a = document.getElementsByTagName("span")[i]; i++) {
// if found a FA span
if(a.className == "FA") {
// iterate over all <li>-elements
for(var j=0; b = document.getElementsByTagName("li")[j]; j++) {
// if found a FA link
if(b.className == "interwiki-" + a.id) {
b.className += " FA";
b.title = "This article has gained featured status";
}
}
}
}
}
/* </pre>
== Interproject links ==
<pre> */
/*
#########
### ProjectLinks
### by [[user:Pathoschild]] (idea from an older, uncredited script)
### * generates a sidebar list of links to other projects from {{projectlinks}}
#########
*/
function Projectlinks() {
var elements = new Array();
var spans = document.getElementsByTagName('span');
// filter for projectlinks
for (var i=0, j=0; i<spans.length; i++) {
if (spans[i].className == 'interProject') {
elements[j] = spans[i].getElementsByTagName('a')[0];
j++;
}
}
// sort alphabetically
function sortbylabel(a,b) {
// get labels
a = a.innerHTML.replace(/^.*<a[^>]*>(.*)<\/a>.*$/i,'$1');
b = b.innerHTML.replace(/^.*<a[^>]*>(.*)<\/a>.*$/i,'$1');
// return sort order
if (a < b) return -1;
if (a > b) return 1;
return 0;
}
elements.sort(sortbylabel);
if (j) {
// create navbox
var plheader = document.createElement('h5');
plheader.appendChild(document.createTextNode('In other projects'));
var plbox = document.createElement('div');
plbox.setAttribute('class','pBody');
plbox.setAttribute('style','margin-top:0.7em;');
var pllist = document.createElement('ul');
// append
for (var i=0; i<elements.length; i++) {
var plitem = document.createElement('li');
plitem.appendChild(elements[i]);
pllist.appendChild(plitem);
}
plbox.appendChild(plheader);
plbox.appendChild(pllist);
document.getElementById("p-tb").appendChild(plbox);
}
}
addLoadEvent(Projectlinks);
/* </pre>
[[bs:MediaWiki:Monobook.js]]
[[he:MediaWiki:Monobook.js]]
[[fr:MediaWiki:Monobook.js]]
[[de:MediaWiki:Monobook.js]]
[[ja:MediaWiki:Monobook.js]]
[[vi:MediaWiki:Monobook.js]]
[[zh:MediaWiki:Monobook.js]]
*/