MediaWiki:Common.js

Aus Cryptshare Documentation
Wechseln zu:Navigation, Suche

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5

var SideBar = {
	normalizeName : function(name) {
		var normalizedName = name.replaceAll("_", " ")
		normalizedName = normalizedName.replaceAll("%26", "&")
		normalizedName = normalizedName.replaceAll("%2B", "+")
		return normalizedName
	},
	getPageName : function(url) {
		var pos = url.lastIndexOf(":")
		var endPositions = ["?", "&", "#"]
		var lastPos
		for (var i = 0;i < endPositions.length;i++) {
			if (lastPos === -1 || lastPos === undefined)
				lastPos = url.indexOf(endPositions[i])
		}
		if (lastPos === -1)
			return decodeURI(url.substring(pos + 1))
		else
			return decodeURI(url.substring(pos + 1, lastPos))
	},
	selectMenuItem : function(name) {
		console.log("SideBar Navigation - Selecting ", name)
		var item = $('#sidebar-navigation a:contains("' + name + '")')
		if (item.length === 0) // MediaWiki makes an uppercase URL in some cases
			item = $('#sidebar-navigation a:contains("' + name.toLowerCase() + '")')
		if (item.length === 0) { // Handling titles containing a minus character
			var splitItems = name.split(" ")
			var selector = '#sidebar-navigation a:contains("'
			for (var i = 0;i < splitItems.length;i++) {
				selector += splitItems[i] + '")'
				if (splitItems[i+1])
					selector += ':contains("'
			}
			// console.log("Selector: ", selector);
			$(selector).toggleClass("selected")
			$('#sidebar-navigation').animate({ scrollTop: ($(selector).offset().top-300)}, 'fast');
		} else if (item) {
			$(item).toggleClass("selected")
			$('#sidebar-navigation').animate({ scrollTop: ($(item).offset().top-300)}, 'fast');
		}
	},
	updateSelectedMenuItem : function() {
		SideBar.selectMenuItem(SideBar.normalizeName(SideBar.getPageName(window.location.href)))
	}
}