MediaWiki:Geoloc.user.js

Koordinater: " + lat + "_N_" + lon + "_E_type:landmark Uttrykksfeil: Uventet <-operator°Uttrykksfeil: Uventet <-operatorUttrykksfeil: Uventet <-operatorUttrykksfeil: Ugjenkjennelig skilletegn «"» Uttrykksfeil: Uventet <-operator°Uttrykksfeil: Uventet <-operatorUttrykksfeil: Uventet <-operatorUttrykksfeil: Ugjenkjennelig skilletegn «"»Uttrykksfeil: Ugjenkjennelig skilletegn «"»Uttrykksfeil: Ugjenkjennelig skilletegn «"»Uttrykksfeil: Ugjenkjennelig skilletegn «"»Uttrykksfeil: Ugjenkjennelig skilletegn «"» komma i stedet for punktum i {{Koord}}[[Kategori:Uttrykksfeil: Ugjenkjennelig skilletegn «"»|Geoloc.user.js]][[Kategori:Uttrykksfeil: Ugjenkjennelig skilletegn «"»|Geoloc.user.js]]
Fra Wikipedia, den frie encyklopedi

Merk: Etter publisering vil det kanskje være nødvendig å slette mellomlageret i nettleseren din for å se endringene.

  • Firefox / Safari: Hold Shift mens du klikker på Oppdater, eller trykk enten Ctrl+F5 eller Ctrl+R (⌘+R på Mac)
  • Google Chrome: Trykk Ctrl+Shift+R (⌘+Shift+R på Mac)
  • Internet Explorer / Edge: Hold Ctrl mens du trykker på Oppdater eller trykk Ctrl+F5
  • Opera: Ttrykk Ctrl+F5.
// ==UserScript==
// @name           geoloc
// @namespace      GeoLoc
// @description    Overfør koordinater fra Norkart til Wikipedia
// @include        http://norgeskart.no/*
// @include        http://no.wikipedia.org/*
// ==/UserScript==


// add jQuery
(function(){
    if (typeof unsafeWindow.jQuery == 'undefined') {
        var GM_Head = document.getElementsByTagName('head')[0] || document.documentElement,
            GM_JQ = document.createElement('script');
        if (!GM_Head) return;
        GM_JQ.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js';
        GM_JQ.type = 'text/javascript';
        GM_JQ.async = true;
        GM_Head.insertBefore(GM_JQ, GM_Head.firstChild);
    }

    // check if jQuery's loaded
    function GM_wait() {
        if (typeof unsafeWindow.jQuery == 'undefined')
            window.setTimeout(GM_wait, 100);
        else
            worker();
    }

    // start the wait loop
    GM_wait();

    // instance vars
    var lat, lon, res, box;

    // setter, must be outside document context
    function set() {
        GM_setValue('lat', lat);
        GM_setValue('lon', lon);
    }

    // getter, must be outside document context
    function get() {
        lat = GM_getValue('lat', '');
        lon = GM_getValue('lon', '');
        if (lat && lon)
            box.val("{{koord|" + lat + "|" + lon + "|type:landmark|vis=tittel|note=Statens kartverk}}");
    }

    // construct scooping
    function worker() {
        var $ = unsafeWindow.jQuery;

        // delayed worker, make sure dom is properly constructed
        $(function() {

            // do inside of norkart
            res = $('#ifr_result');
            if (res.length) {
                // wait for the iframe to change
                res.load(function(i, el) {
                    var coord = $(this).contents().find('#latlon_x_coord,#latlon_y_coord');
                    lat = $(this).contents().find('#latlon_y_coord').text();
                    lon = $(this).contents().find('#latlon_x_coord').text();
                    setTimeout(set, 0);
                });
            }

            // do inside of wikipedia
            box = $('#CoordinateBox');
            if (box.length) {
                var btn = $('#ReloadCoordinates');
                if (btn.length == 0) {
                    box.after(' <input id="ReloadCoordinates" value="⟳" type="button">');
                    $('#ReloadCoordinates').click(function() { setTimeout(get, 0); });
                }
                setTimeout(get, 0);
            }
        });
    }

})();