মিডিয়াউইকি:Monobook.js

উইকিসংকলন থেকে
টীকা: সংরক্ষণ করার পর, পরিবর্তনসমূহ তৎক্ষণাৎ নাও দেখাতে পারে। আপনার ব্রাউজারের ক্যাশ কিভাবে এড়াবেন তা জানতে এখানে ক্লিক করুন।
  • ফায়ারফক্স / সাফারি: Shift ধরে রাখা অবস্থায়পুনঃলোড করুন-এ ক্লিক করুন, অথবা Ctrl-F5 বা Ctrl-R (ম্যাক-এ ⌘-R) চাপুন
  • গুগল ক্রোম: Ctrl-Shift-R (ম্যাক-এ ⌘-Shift-R) চাপুন
  • ইন্টারনেট এক্সপ্লোরার: Ctrl ধরে রাখা অবস্থায় Refresh-এ ক্লিক করুন, অথবা Ctrl-F5 চাপুন
  • অপেরা: মেনু → ব্যবস্থাপনাসমূহ-এ যান (ম্যাকে অপেরা → পছন্দসমূহ) এবং এরপর গোপনীয়তা ও সুরক্ষা → ব্রাউজিং-এর তথ্য পরিষ্কার করুন → ক্যাশে করা ছবি ও ফাইলগুলি

অন্যান্য ব্রাউজার সম্পর্কে বিশদ নির্দেশাবলীর জন্য, উইকিপিডিয়া:আপনার ক্যাশে বাইপাস করুন দেখুন।

/* Deprecated; use [[MediaWiki:common.js]] */

// ============================================================
 // BEGIN Dynamic Navigation Bars (experimantal)
 
 // set up the words in your language
 var NavigationBarHide = '[ আড়ালে রাখো ]';
 var NavigationBarShow = '[ দেখাও ]';
 
 // 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);
        }
    }
 
 }
 
 $(document).ready(createNavigationBarToggleButton);
 
 // END Dynamic Navigation Bars
 // ============================================================

// Start experimental phonetic transliterator

mw.loader.load('//bn.wikisource.org/w/index.php?title=User:Bellayet/translitnew.js&action=raw&ctype=text/javascript');


function addTranslit(editForm,textBox){
checkrt(editForm);

        if (textBox.addEventListener) 
            textBox .addEventListener("keypress", processKeys, false);
        else if (textBox .attachEvent) 
            textBox.attachEvent("onkeypress", processKeys);

}

function addTextEvent() {
var editForm =document.editform;
if(document.editform){
var textBox=document.editform.wpTextbox1;
addTranslit(editForm,textBox);
addCheckbox(editForm,textBox ); 

}
var searchform=document.getElementById('searchform');

var searchInput=document.getElementById('searchInput');
if(searchInput)
addTranslit(searchform,searchInput);

}

function addCheckbox(editform,textBox ){

var element = document.createElement("input");
element.setAttribute("type","checkbox");
element.setAttribute("id","realtime");


if (element.addEventListener) 
            element.addEventListener("click", rtClick, false);
         else if (element.attachEvent) 
            element.attachEvent("onclick", rtClick);

var labelcheckBox = document.createTextNode('Phonetic Bangla Typing. Check/Uncheck box or use Esc as a toggle key to activate/deactivate. Go to WP:Typing for help ');

editform.insertBefore(element,textBox);
document.getElementById("realtime").checked = realTime;
editform.insertBefore(labelcheckBox,textBox);
}

function processKeys(event) {
 if (rtsupported)
 { if (event.keyCode == 27 && !isExplorer()) { 
//escape to toggle

realTime = !realTime;
document.getElementById("realtime").checked = realTime;

}

else if (realTime) translitonkey(event); 
} 
}


var realTime = false;
function rtClick(event) {
realTime = !realTime;
}

var rtsupported = false;
var error; 
function checkrt(editform){
try {

/*
var nav = navigator.userAgent.toUpperCase();
rtsupported = (nav.indexOf("GECKO") >= 0 || nav.indexOf("OPERA") >= 0 || nav.indexOf("SAFARI") >= 0);
*/


rtsupported = (document.selection != undefined)

if (!rtsupported) {
var element = document.createElement("TEXTAREA");
editform.appendChild(element);
if (element.selectionStart != undefined)
rtsupported = true;
editform.removeChild(element);
}

} catch (error) {

}
}
$(document).ready(addTextEvent)