User:Hillgentleman1/monobook.js
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
// [[:en:User:Lupin/popups.js]]
mw.loader.load(
'https://en.wikipedia.org/w/index.php?title=User:Lupin/popups.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s');
//[[:zh-yue:User:Hillgentleman/monobook.js]], [[:zh-yue:User:Sl/monobook.js]]
document.write('<script type="text/javascript" src="'
+ 'http://beta.wikiversity.org/w/index.php?title=User:Hillgentleman/sim2trad.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
document.write('<script type="text/javascript" src="'
+ 'http://beta.wikiversity.org/w/index.php?title=User:hillgentleman/trad2sim.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
origStr = "";
function supplane(num) {
if(num >= 65536) num -= 65536;
var num1 = Math.floor(num / 1024) + 55296;
var num2 = num % 1024 + 56320;
return String.fromCharCode(num1) + String.fromCharCode(num2);
}
function converts2t() {
var content = document.getElementById("bodyContent").innerHTML;
var newStr = "";
if(origStr.length > 0)
content = origStr;
if(content.length == 0) {
newStr = default_text;
}
else for(var i = 0; i < content.length; i++) {
var unicode = content.charCodeAt(i);
if(unicode >= 55296 && unicode <= 56319) {
var unicode1 = content.charCodeAt(++i);
if(unicode1 >= 56320 && unicode1 <= 57343) {
unicode = 1024 * unicode - 56557568 + unicode1 - 56320;
}
}
var unicode2 = table2t[unicode];
if(unicode2 > 65535) {
newStr += supplane(unicode2);
}
else if(unicode > 65535 && !unicode2) {
newStr += supplane(unicode);
}
else {
newStr += ( unicode2 ) ? String.fromCharCode(unicode2) : String.fromCharCode(unicode);
}
}
origStr = content;
document.getElementById("bodyContent").innerHTML = newStr;
}
function convertt2s() {
var content = document.getElementById("bodyContent").innerHTML;
var newStr = "";
if(origStr.length > 0)
content = origStr;
if(content.length == 0) {
newStr = default_text;
}
else for(var i = 0; i < content.length; i++) {
var unicode = content.charCodeAt(i);
if(unicode >= 55296 && unicode <= 56319) {
var unicode1 = content.charCodeAt(++i);
if(unicode1 >= 56320 && unicode1 <= 57343) {
unicode = 1024 * unicode - 56557568 + unicode1 - 56320;
}
}
var unicode2 = table2s[unicode];
if(unicode2 > 65535) {
newStr += supplane(unicode2);
}
else if(unicode > 65535 && !unicode2) {
newStr += supplane(unicode);
}
else {
newStr += ( unicode2 ) ? String.fromCharCode(unicode2) : String.fromCharCode(unicode);
}
}
origStr = content;
document.getElementById("bodyContent").innerHTML = newStr;
}
function convertorig() {
if(origStr.length > 0)
document.getElementById("bodyContent").innerHTML = origStr;
}
if(location.href.indexOf("action=edit") == -1)
document.write('<div style=\"position:relative;top:3.7em;text-align:right;margin-right:1em;white-space:nowrap;\"><a href=\"javascript:convertorig();\" style=\"font-size:133%;\">不轉<\/a> <a href=\"javascript:converts2t();\" style=\"font-size:133%;\">轉繁<\/a> <a href=\"javascript:convertt2s();\" style=\"font-size:133%;\">转简体<\/a><\/div>');
// <pre><nowiki>
/* tooltips and access keys */
var ta = new Object();
ta['pt-userpage'] = new Array('.','My user page');
ta['pt-anonuserpage'] = new Array('.','The user page for the ip you\'re editing as');
ta['pt-mytalk'] = new Array('n','My talk page');
ta['pt-anontalk'] = new Array('n','Discussion about edits from this ip address');
ta['pt-preferences'] = new Array('','My preferences');
ta['pt-watchlist'] = new Array('l','The list of pages you\'re monitoring for changes.');
ta['pt-mycontris'] = new Array('y','List of my contributions');
ta['pt-login'] = new Array('o','You are encouraged to log in, it is not mandatory however.');
ta['pt-anonlogin'] = new Array('o','You are encouraged to log in, it is not mandatory however.');
ta['pt-logout'] = new Array('o','Log out');
ta['ca-talk'] = new Array('t','Discussion about the content page');
ta['ca-edit'] = new Array('e','You can edit this page. Please use the preview button before saving.');
ta['ca-addsection'] = new Array('+','Add a comment to this discussion.');
ta['ca-viewsource'] = new Array('e','This page is protected. You can view its source.');
ta['ca-history'] = new Array('h','Past versions of this page.');
ta['ca-protect'] = new Array('=','Protect this page');
ta['ca-delete'] = new Array('d','Delete this page');
ta['ca-undelete'] = new Array('d','Restore the edits done to this page before it was deleted');
ta['ca-move'] = new Array('m','Move this page');
ta['ca-watch'] = new Array('w','Add this page to your watchlist');
ta['ca-unwatch'] = new Array('w','Remove this page from your watchlist');
ta['search'] = new Array('f','Search this wiki');
ta['p-logo'] = new Array('','Main Page');
ta['n-mainpage'] = new Array('z','Visit the Main Page');
ta['n-portal'] = new Array('','About the project, what you can do, where to find things');
ta['n-currentevents'] = new Array('','Find background information on current events');
ta['n-recentchanges'] = new Array('r','The list of recent changes in the wiki.');
ta['n-randompage'] = new Array('x','Load a random page');
ta['n-help'] = new Array('','The place to find out.');
ta['n-sitesupport'] = new Array('','Support us');
ta['t-whatlinkshere'] = new Array('j','List of all wiki pages that link here');
ta['t-recentchangeslinked'] = new Array('k','Recent changes in pages linked from this page');
ta['feed-rss'] = new Array('','RSS feed for this page');
ta['feed-atom'] = new Array('','Atom feed for this page');
ta['t-contributions'] = new Array('','View the list of contributions of this user');
ta['t-emailuser'] = new Array('','Send a mail to this user');
ta['t-upload'] = new Array('u','Upload images or media files');
ta['t-specialpages'] = new Array('q','List of all special pages');
ta['ca-nstab-main'] = new Array('c','View the content page');
ta['ca-nstab-user'] = new Array('c','View the user page');
ta['ca-nstab-media'] = new Array('c','View the media page');
ta['ca-nstab-special'] = new Array('','This is a special page, you can\'t edit the page itself.');
ta['ca-nstab-project'] = new Array('a','View the project page');
ta['ca-nstab-image'] = new Array('c','View the image page');
ta['ca-nstab-mediawiki'] = new Array('c','View the system message');
ta['ca-nstab-template'] = new Array('c','View the template');
ta['ca-nstab-help'] = new Array('c','View the help page');
ta['ca-nstab-category'] = new Array('c','View the category page');
// ============================================================
// BEGIN Enable multiple onload functions
// setup onload functions this way:
// aOnloadFunctions[aOnloadFunctions.length] = function_name; // without brackets!
if (!window.aOnloadFunctions) {
var aOnloadFunctions = new Array();
}
window.onload = function() {
if (window.aOnloadFunctions) {
for (var _i=0; _i<aOnloadFunctions.length; _i++) {
aOnloadFunctions[_i]();
}
}
}
// ============================================================
// BEGIN Dynamic Navigation Bars
// NEEDS Enable multiple onload functions
// set up the words in your language
var NavigationBarHide = 'Collapse';
var NavigationBarShow = 'Expand';
// 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;
// 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';
}
if (NavChild.className == 'NavToggle') {
NavChild.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';
}
if (NavChild.className == 'NavToggle') {
NavChild.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);
// add NavToggle-Button as first div-element
// in < div class="NavFrame" >
NavFrame.insertBefore(
NavToggle,
NavFrame.firstChild
);
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);
}
}
}
aOnloadFunctions[aOnloadFunctions.length] = createNavigationBarToggleButton;
// END Dynamic Navigation Bars
// ============================================================
// ============================================================
// BEGIN Moving of the editsection links
/*
* moveEditsection
* This script moves the section edit links from the right edge of the page
* to the right edge of the heading. (Imported from German Wikipedia)
*
* This functionality can be disabled by adding the following line without the
* asteriks to your custom monobook.js (located under [[User:Username/monobook.js]]):
* var oldEditsectionLinks = true;
*/
function moveEditsection() {
if (typeof oldEditsectionLinks == 'undefined' || oldEditsectionLinks == false) {
var spans = document.getElementsByTagName("span");
for(var i = 0; i < spans.length; i++) {
if(spans[i].className == "editsection") {
spans[i].style.fontSize = "x-small";
spans[i].style.fontWeight = "normal";
spans[i].style.cssFloat = "none";
spans[i].style.marginLeft = "0px";
spans[i].parentNode.appendChild(document.createTextNode(" "));
spans[i].parentNode.appendChild(spans[i]);
}
}
}
} // onload
addOnloadHook(moveEditsection);
// END Moving of the editsection links
// ============================================================
// ============================================================
// BEGIN import Onlyifediting-functions
// SEE ALSO [[MediaWiki:Onlyifediting.js]]
if (document.URL.indexOf("action=edit") > 0 || document.URL.indexOf("action=submit") > 0) {
document.write('<script type="text/javascript" src="/w/index.php?title=MediaWiki:Onlyifediting.js&action=raw&ctype=text/javascript&dontcountme=s"></script>');
}
// END import Onlyifediting-functions
// ============================================================
if (mwCustomEditButtons) {
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://upload.wikimedia.org/wikipedia/en/c/c8/Button_redirect.png",
"speedTip": "Redirect",
"tagOpen": "#REDIRECT [[",
"tagClose": "]]",
"sampleText": "Insert text"};
//Reference link button
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://upload.wikimedia.org/wikipedia/commons/7/79/Button_reflink.png",
"speedTip": "<ref>",
"tagOpen": "<ref>",
"tagClose": "</ref>",
"sampleText": "Insert reference material"}
//Reference button
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "http://upload.wikimedia.org/wikipedia/commons/a/a0/Button_references_alt.png",
"speedTip": "Reference footer",
"tagOpen": "<references/>",
"tagClose": "",
"sampleText": ""}
};
// Simplify import of additional js files
function importPage(seite,lang){ // all languages support
name='User:'; // international name
if(!lang) {
lang='en';
name='User:';
}
document.write('<SCRIPT TYPE="text/javascript" SRC="http://' + lang
+ '.wikiversity.org/w/index.php?title=' + name + seite
+ '&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s"><\/SCRIPT>');
}
// ============================================================
// 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;
var counter_factor = 3; // let's see if we can decrease it
function pgcounter_setup()
{
if(disable_counter == 0)
{
var url = window.location.href;
if(Math.floor(Math.random()*counter_factor)==2) // 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=enwikiversity";
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
// ============================================================
// </nowiki></pre>