មេឌាវិគី:Common.js

ពីWiktionary

សម្គាល់: បន្ទាប់ពីបានរក្សាទុករួចហើយ លោកអ្នកគួរតែសំអាត browser's cache របស់លោកអ្នកដើម្បីមើលការផ្លាស់ប្តូរ។ ខាងក្រោមនេះជាវិធីសំអាត browser's cache ចំពោះកម្មវិធីរុករក(Browser)មួយចំនួន។

  • Firefox / Safari: សង្កត់ [Shift] ឱ្យជាប់រួចចុចប៊ូតុង Reload ឬក៏ចុច Ctrl-F5Ctrl-R ( ⌘-R សំរាប់ Mac)
  • Google Chrome: ចុច Ctrl-Shift-R (⌘-Shift-R សំរាប់ Mac)
  • IE(Internet Explorer): សង្កត់ [Ctrl] ឱ្យជាប់ រួចចុច Refreshប៊ូតុង ឬក៏ចុច Ctrl-F5​។
  • Konqueror: ចុចប៊ូតុង Reload ឬក៏ចុច F5
  • Opera: សូមសំអាតcacheនៅក្នុង [Tools]→[Preferences]
/* ១ */
 // 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 = 1;
 //Honor the User Preferences
 if ( $.cookie('WiktionaryPreferencesShowNav') != 'true' ) {
         NavigationBarShowDefault = 0;
    } else {
      if ( mw.config.get('wgNamespaceNumber') == 0 ) NavigationBarShowDefault = 999 ;
    }
 
// toggleNavigationBar

 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.isHidden == false) {
        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.childNodes[1].firstChild.nodeValue = NavigationBarShow;
    NavToggle.isHidden = true;
 
    // if hidden now
    } else if (NavToggle.isHidden == true) {
        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.childNodes[1].firstChild.nodeValue = NavigationBarHide;
    NavToggle.isHidden = false;
    }
 }

 var wgNavBarArray = new Array();
 
 // adds show/hide-button to navigation bars
 function createNavigationBarToggleButton()
 {
    // Are we previewing an translation section?
    var preview = document.getElementById('wikiPreview');
 
    if (preview != null) {
      var p = preview.getElementsByTagName('p');
      if (p != null && p.length >= 2 && p[1].firstChild.id == 'Translations') {
        NavigationBarShowDefault = 999;
      }
    }
 
    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("span");
            NavToggle.className = 'NavToggle';
            NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
 
            NavToggle.appendChild(document.createTextNode('['));
            NavToggle.appendChild(document.createElement("a"));
            var NavToggleText = document.createTextNode(NavigationBarHide);
            NavToggle.childNodes[1].setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
            NavToggle.childNodes[1].appendChild(NavToggleText);
            NavToggle.appendChild(document.createTextNode(']'));
            NavToggle.isHidden = false;
 
            wgNavBarArray[indexNavigationBar - 1] = NavToggle;
 
            // 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") {
                var NavHead = NavFrame.childNodes[j];
                if( NavHead.childNodes[0] ){
                  NavHead.insertBefore(NavToggle,NavHead.childNodes[0]);
                }else{
                  NavHead.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);
/* ១ */
/* ប្តូរ ពិសេស:ស្វែងរកដោយប្រើតារាង drop-down */
 if (mw.config.get('wgPageName') == "Special:Search") {
         var searchEngines = [];
         $(document).ready(SpecialSearchEnhanced);
 }
 
 function SpecialSearchEnhanced() {
         var createOption = function(site, action, mainQ, addQ, addV) {
                 var opt = document.createElement('option');
                 opt.appendChild(document.createTextNode(site));
                 searchEngines[searchEngines.length] = [action, mainQ, addQ, addV];
                 return opt;
         }
 
         if (document.forms['powersearch'])
         var searchForm = document.forms['powersearch'];
         if (document.forms['search'])
         var searchForm = document.forms['search'];
 
         if (searchForm.lsearchbox) {
             var searchBox = searchForm.lsearchbox;
         } else {
             var searchBox = searchForm.search;
         }
         var selectBox = document.createElement('select');
         selectBox.id = 'searchEngine';
         searchForm.onsubmit = function() {
                 var optSelected = searchEngines[document.getElementById('searchEngine').selectedIndex];
                 searchForm.action = optSelected[0];
	             searchBox.name = optSelected[1];
                 searchForm.title.value = optSelected[3];
                 searchForm.title.name = optSelected[2];
         }
         selectBox.appendChild(createOption('MediaWiki search', mw.config.get('wgScriptPath') + '/index.php', 'search', 'title', 'Special:Search'));
         selectBox.appendChild(createOption('Google', 'http://www.google.com/search', 'q', 'sitesearch', 'km.wiktionary.org'));
         selectBox.appendChild(createOption('Yahoo', 'http://search.yahoo.com/search', 'p', 'vs', 'km.wiktionary.org'));
         selectBox.appendChild(createOption('Windows Live', 'http://search.live.com/results.aspx', 'q', 'q1', 'site:http://km.wiktionary.org'));
         searchBox.style.marginLeft = '0px';
         if (document.getElementById('loadStatus')) {
             var lStat = document.getElementById('loadStatus');
         } else {
             var lStat = searchForm.fulltext;
         }
         lStat.parentNode.insertBefore(selectBox, lStat);
 }

/* នៅលើគំរោងផ្សេងៗទៀត */
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('លើគំរោងផ្សេងទៀត'));
                var plbox = document.createElement('div');
                plbox.setAttribute('class','pBody');
                plbox.setAttribute('style','background:#f9f9f9;');
                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);
        }
}
 
$(document).ready(Projectlinks);