Zeile 1: |
Zeile 1: |
| /* Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen. */ | | /* Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen. */ |
| + | console.log('Greetings from MediaWiki:Common.js new one'); |
| | | |
− | /*<!-- Piwik --> | + | /* ************************************************* |
− | <script type="text/javascript">*/
| + | * Reinitialize leaflet after each tab change. |
− | var _paq = _paq || [];
| + | * fixes #36 |
− | /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
| |
− | _paq.push(['trackPageView']);
| |
− | _paq.push(['enableLinkTracking']);
| |
− | (function() {
| |
− | var u="//fuerthwiki.de/piwik/";
| |
− | _paq.push(['setTrackerUrl', u+'piwik.php']);
| |
− | _paq.push(['setSiteId', '1']);
| |
− | var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
| |
− | g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
| |
− | })();
| |
− | /*</script>
| |
− | <!-- End Piwik Code -->*/
| |
− | | |
− | /**
| |
− | * star logo for featured articles in other languages, | |
− | * see Template:Link_FA and MediaWiki:Common.css | |
| */ | | */ |
− | addOnloadHook(function() {
| + | $(document).ready(function() { |
− | // early exit when disabled
| + | $('.tabs-label').click(function(e) { |
− | if (!linkFA_enabled) return;
| + | var mapExists = setInterval(function() { |
− | | + | var counter = 0; |
− | // skins need to be treated differently
| + | var mapsLeafletList = window.mapsLeafletList; |
− | if (skin == "monobook" || skin == "simple") {
| + | if (mapsLeafletList && mapsLeafletList.length) { |
− | newer();
| + | mapsLeafletList.forEach(function(l) { |
− | }
| + | if (l.map) { |
− | else if (skin == "cologneblue" || skin == "nostalgia" || skin == "standard") {
| + | l.map.invalidateSize(false); |
− | older();
| + | clearInterval(mapExists); |
− | }
| + | } |
− | | + | }); |
− | /** skin == "monobook" || skin == "simple" */
| + | } |
− | function newer() {
| + | if (counter++ > 10) clearInterval(mapExists); |
− | // links are to replaced in p-lang only
| + | }, 100); |
− | var pLang = document.getElementById("p-lang");
| + | }); |
− | if (!pLang) return;
| |
− | var lis = pLang.getElementsByTagName("li");
| |
− | for (var i = 0; i < lis.length; i++) {
| |
− | var li = lis[i];
| |
− | // only links with a corresponding Link_FA template are interesting
| |
− | if (!document.getElementById(li.className + "-fa")) continue;
| |
− | // additional class so the template can be hidden with CSS
| |
− | li.className += " FA";
| |
− | // change title
| |
− | li.title = linkFA_description;
| |
− | }
| |
− | }
| |
− | | |
− | /** skin == "cologneblue" || skin == "nostalgia" || skin == "standard" */
| |
− | function older() {
| |
− | // these root elements can contain FA-links
| |
− | var rootIds = new Array("topbar", "footer");
| |
− | for (var i=0; i<rootIds.length; i++) {
| |
− | var rootId = rootIds[i];
| |
− | var root = document.getElementById(rootId);
| |
− | if (!root) continue;
| |
− | | |
− | // if the root exists, try to decorate all the links within
| |
− | var links = root.getElementsByTagName("a");
| |
− | for (var j=0; j<links.length; j++) {
| |
− | var link = links[j];
| |
− | decorate(link);
| |
− | }
| |
− | }
| |
− | }
| |
− | | |
− | /** id necessary, modify a link to show the FA-star (older) */
| |
− | function decorate(link) {
| |
− | // exit if not a FA-link
| |
− | var lang = link.title.split(":")[0]; // not precise enough
| |
− | var fa = document.getElementById("interwiki-" + lang + "-fa");
| |
− | if (!fa) return;
| |
− | // possible problem owing the standard skin: "Link FA" template is transcluded with a non-interwiki parameter, for example "Special"
| |
− | // result: links to special pages in the topbar and/or footer might also be marked as a Featured Article
| |
− | | |
− | // build an image-node for the FA-star
| |
− | var img = document.createElement("img");
| |
− | img.setAttribute("src", linkFA_bullet);
| |
− | img.setAttribute("alt", linkFA_description);
| |
− | img.setAttribute("style", linkFA_style);
| |
− | | |
− | // decorate the link with the image
| |
− | link.appendChild(img);
| |
− | link.appendChild(link.removeChild(link.firstChild));
| |
− | link.setAttribute("title", linkFA_description);
| |
− | }
| |
| }); | | }); |
− |
| |
− |
| |
− | // Verwendung von OpenStreetMap in Wikipedia.
| |
− | // (c) 2008 by Magnus Manske
| |
− | // Released under GPL
| |
− |
| |
− |
| |
− | function openStreetMapInit () {
| |
− | c = document.getElementById ( 'coordinates' ) ;
| |
− | if ( !c ) return ;
| |
− |
| |
− | a = c.getElementsByTagName ( 'a' ) ;
| |
− | geohack = 0 ;
| |
− | for ( i = 0 ; i < a.length ; i++ ) {
| |
− | h = a[i].href ;
| |
− | if ( !h.match(/geohack/) ) continue ;
| |
− | geohack = 1 ;
| |
− | break ;
| |
− | }
| |
− | if ( geohack == 0 ) return ;
| |
− |
| |
− | na = document.createElement ( 'a' ) ;
| |
− | na.href = '#' ;
| |
− | na.onclick = openStreetMapToggle ;
| |
− | na.appendChild ( document.createTextNode ( 'OSM' ) ) ;
| |
− | // c.appendChild ( document.createElement ( 'br' ) )
| |
− | c.appendChild ( document.createTextNode ( '(' ) ) ;
| |
− | c.appendChild ( na ) ;
| |
− | c.appendChild ( document.createTextNode ( ') ' ) ) ;
| |
− | }
| |
− |
| |
− | function openStreetMapToggle () {
| |
− | c = document.getElementById ( 'coordinates' ) ;
| |
− | if ( !c ) return ;
| |
− | cs = document.getElementById ( 'contentSub' ) ;
| |
− | osm = document.getElementById ( 'openstreetmap' ) ;
| |
− |
| |
− | if ( cs && osm ) {
| |
− | cs.removeChild ( osm ) ;
| |
− | return ;
| |
− | }
| |
− |
| |
− | a = c.getElementsByTagName ( 'a' ) [0] ;
| |
− | h = a.href ;
| |
− | h = h.split('params=')[1] ;
| |
− |
| |
− | i = document.createElement ( 'iframe' ) ;
| |
− | url = 'http://tools.wikimedia.de/~magnus/ol/wp_poi.php?title=' + wgTitle ;
| |
− | url += '&language=' + wgUserLanguage ;
| |
− | url += '¶ms=' + h ;
| |
− | i.id = 'openstreetmap' ;
| |
− | i.style.width = '100%' ;
| |
− | i.style.height = '300px' ;
| |
− | i.style.clear = 'both' ;
| |
− | i.src = url ;
| |
− | cs.appendChild ( i ) ;
| |
− | }
| |
− |
| |
− |
| |
− | addOnloadHook(openStreetMapInit);
| |