User:Herzi Pinki/GeoTools.js

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
Note: After saving, you have to bypass your browser's cache to see the changes. Internet Explorer: press Ctrl-F5, Mozilla: hold down Shift while clicking Reload (or press Ctrl-Shift-R), Opera/Konqueror: press F5, Safari: hold down Shift + Alt while clicking Reload, Chrome: hold down Shift while clicking Reload.
//<nowiki>
mw.loader.using('mediawiki.util').done(function () {

// Cat Tree
if (mw.config.get('wgNamespaceNumber') === 14) {
	$(function () {
		// maps tool tested with migration to wmflabs and usecache
		mw.util.addPortletLink('p-cactions', '//maps.google.com/maps?q=http%3A%2F%2Ftools.wmflabs.org%2Fkmlexport%3Fproject%3DCommons%26article%3DCategory%253A' +
			encodeURIComponent(mw.config.get('wgTitle').split(" ").join("_")) + '%26usecache%3D1', 'my Map', 'ca-mapg');
		mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/vcat/render?wiki=commonswiki&rel=category&links=wiki&format=svg&title=' + mw.config.get('wgPageName'), 'Tree ↑', 'vcat');
		mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/vcat/render?wiki=commonswiki&rel=subcategory&links=wiki&format=svg&depth=2&title=' + mw.config.get('wgPageName'), 'Tree ↓(2)', 'vcat');
		mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/vcat/render?wiki=commonswiki&rel=subcategory&links=wiki&format=svg&depth=3&title=' + mw.config.get('wgPageName'), 'Tree ↓(3)', 'vcat');
		// upload in cat
		mw.util.addPortletLink('p-cactions', '//commons.wikimedia.org/w/index.php?title=Special:UploadWizard&categories=' + encodeURIComponent(mw.config.get('wgTitle')), 'upload to cat', 'UW');
		$("#contentSub").prepend(
			'<a href="//commons.wikimedia.org/w/index.php?title=Special:UploadWizard&amp;categories=' + encodeURIComponent(mw.config.get('wgTitle')) +
			'" title="Weitere Dateien in diese Kategorie hochladen">' +
			'<img alt="Weitere Dateien in diese Kategorie hochladen" src="https://upload.wikimedia.org/wikipedia/commons/thumb/4/42/Camera-photo_Upload.svg/30px-Camera-photo_Upload.svg.png"' +
			' style="vertical-align:sub" height="30" width="30">' +
			'</a>');
	});
}

// geohack
if ($.inArray(mw.config.get('wgNamespaceNumber'), [0, 2, 14]) !== -1) {
	var project = mw.config.get('wgDBname').replace('wiki', '');
	$(function () {
		if(mw.config.get('wgNamespaceNumber') === 14) {
			mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/wikimap/?cat=' + encodeURIComponent(mw.config.get('wgTitle').split(" ").join("_")) + '&subcats=true&subcatdepth=2', '⊙ Wikimap (l=2)', 'Wikimap');
			mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/wikimap/?cat=' + encodeURIComponent(mw.config.get('wgTitle').split(" ").join("_")) + '', '⊙ Wikimap', 'Wikimap');
		}
		/*
		mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/osm4wiki/cgi-bin/wiki/wiki-osm.pl?project=' + project + '&l=2&usecache=0&article=' +
			mw.config.get('wgPageName'), '⊙ OSM (l=2, nocache)', 'OSM');
		mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/osm4wiki/cgi-bin/wiki/wiki-osm.pl?project=' + project + '&l=2&usecache=1&article=' +
			mw.config.get('wgPageName'), '⊙ OSM (l=2, cache)', 'OSM');
		*/
		/*
		mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/wp-world/googlmaps-proxy.php?page=' + encodeURIComponent('http://tools.wmflabs.org/kmlexport/?project=' + project + '&l=2&usecache=0&article=' +
			mw.config.get('wgPageName')) + '&output=classic', 'gMaps (l=2, nocache)', 'gMaps');
		mw.util.addPortletLink('p-cactions', '//tools.wmflabs.org/wp-world/googlmaps-proxy.php?page=' + encodeURIComponent('http://tools.wmflabs.org/kmlexport/?project=' + project + '&l=2&usecache=1&article=' +
			mw.config.get('wgPageName')) + '&output=classic', 'gMaps (l=2, cache)', 'gMaps');
		*/
	});
}

// image on OSM?
if(mw.config.get('wgNamespaceNumber') === 6) {
	$(function () {
		// image
		var path = 'http.*:.*(%253A|:|%2F)' // %25 = % -> %3A -> :
		           + encodeURI (mw.config.get('wgTitle').split(" ").join("_").replace(/[ÄÖÜäöüß&"'`\(\)]+/g, ".*"));
	    // wikimedia_commons
		var path2 = 'File:'
		           + encodeURI (mw.config.get('wgTitle').replace(/[ÄÖÜäöüß&"'`\(\)]+/g, ".*"));
		mw.util.addPortletLink('p-cactions', 'http://overpass-api.de/api/interpreter?data=%5Bout:custom%5D%5Btimeout:25%5D;('+
		                                     'node%5B%22image%22~%22' + path + '%22%5D;'+
		                                     'way%5B%22image%22~%22' + path + '%22%5D;'+
		                                     'relation%5B%22image%22~%22' + path + '%22%5D;'+
		                                     'node%5B%22wikimedia_commons%22~%22' + path2 + '%22%5D;'+
		                                     'way%5B%22wikimedia_commons%22~%22' + path2 + '%22%5D;'+
		                                     'relation%5B%22wikimedia_commons%22~%22' + path2 + '%22%5D;'+
		                                     ');out body;&gt;;out skel qt;', '⊙ on OSM?', 'OSM');
	});
}
if(mw.config.get('wgNamespaceNumber') === 14) {
	$(function () {
	    // wikimedia_commons
		var path2 = 'Category:'
		           + encodeURI (mw.config.get('wgTitle').replace(/[ÄÖÜäöüß&"'`\(\)]+/g, ".*"));
		mw.util.addPortletLink('p-cactions', 'http://overpass-api.de/api/interpreter?data=%5Bout:custom%5D%5Btimeout:25%5D;('+
		                                     'node%5B%22wikimedia_commons%22~%22' + path2 + '%22%5D;'+
		                                     'way%5B%22wikimedia_commons%22~%22' + path2 + '%22%5D;'+
		                                     'relation%5B%22wikimedia_commons%22~%22' + path2 + '%22%5D;'+
		                                     ');out body;&gt;;out skel qt;', '⊙ on OSM?', 'OSM');
	});
}

});
//</nowiki>