MediaWiki:Gadget-sidebartranslate.js
Chú ý: Sau khi lưu trang, có thể bạn sẽ phải xóa bộ nhớ đệm của trình duyệt để xem các thay đổi.
- Firefox / Safari: Nhấn giữ phím Shift trong khi nhấn Tải lại (Reload), hoặc nhấn tổ hợp Ctrl-F5 hay Ctrl-R (⌘R trên Mac)
- Google Chrome: Nhấn tổ hợp Ctrl-Shift-R (⇧⌘R trên Mac)
- Internet Explorer / Edge: Nhấn giữ phím Ctrl trong khi nhấn Làm tươi (Refresh), hoặc nhấn tổ hợp Ctrl-F5
- Opera: Nhấn tổ hợp Ctrl-F5.
/*jshint undef:true */
/*global mw, jQuery, importScript */
// _____________________________________________________________________________________
// | |
// | === WARNING: GLOBAL GADGET FILE === |
// | Changes to this page affect many users. |
// | Please discuss changes on the [[Wiktionary:Grease Pit]] before editing. |
// |_____________________________________________________________________________________|
//
// This script changes timestamps such as those in comments to be relative to the local time.
function languagereplace () {
//Can be caused by delay in timing
if(typeof(langcode2name) == 'undefined'){
if(! document.callbacks_langcode )
document.callbacks_langcode = {};
document.callbacks_langcode['sidebartranslate'] = languagereplace;
return false;
}
function sortByLang(a, b) {
var x = a.Lang.toLowerCase();
var y = b.Lang.toLowerCase();
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
}
function LangItem(Lang, className, href, innerHTML, title) {
this.Lang = Lang;
this.className = className;
this.href = href;
this.innerHTML = innerHTML;
this.title = title;
}
if (document.getElementById('p-lang')) {
var LangNodes=document.getElementById('p-lang').getElementsByTagName('ul');
if( LangNodes[ 0 ] ) {
LangNodes = LangNodes[0].getElementsByTagName('li');
}
var myData = [];
for( var x = 0; x < LangNodes.length; x++ ) {
LangNodes[x].getElementsByTagName('a')[0].innerHTML = localtoEnglish(LangNodes[x].getElementsByTagName('a')[0].innerHTML);
myData[myData.length++] = new LangItem(LangNodes[x].getElementsByTagName('a')[0].innerHTML, LangNodes[x].className, LangNodes[x].getElementsByTagName('a')[0].href, LangNodes[x].getElementsByTagName('a')[0].innerHTML, LangNodes[x].getElementsByTagName('a')[0].title);
}
myData.sort(sortByLang);
for( var x = 0; x < myData.length; x++ ) {
LangNodes[x].className = myData[x].className;
LangNodes[x].getElementsByTagName('a')[0].href = myData[x].href;
LangNodes[x].getElementsByTagName('a')[0].innerHTML = myData[x].innerHTML;
LangNodes[x].getElementsByTagName('a')[0].title = myData[x].title;
}
}
}
jQuery(document).ready(languagereplace);
function localtoEnglish(localname) {
var lcode = FLname2code(localname);
return ((typeof(lcode) == 'undefined') ? localname : langcode2name(lcode));
}