EnglishSvenska

Location, location, location

Läge är kanske den viktigaste parametern när man söker bostad, men varför presenteras den så dåligt på boplats.se? Med Tampermonkey la jag till ett skript som tar bostadsadressen och beräknar avstånd och cykeltid till valfri adress. För mig var det viktigt att min bostad inte var för långt från mitt arbete.

Utan mitt skript ser Boplats.se ut såhär:

boplats.se utan tampermonkey

Och med mitt skript blir Boplats.se en nästan bra webbplats:

bokplats.se med tampermonkey

Hur gör man:

  1. Installera Tampermonkey i Google Chrome
  2. Kodiera mitt skript.
  3. Modifera destinationsadress i koden
  4. Jag tror att skriptet aktiveras automatiskt så fort man går in på Boplats.se. Om inte så trixa i Settings i Tampermonkey.

Tampermonkey-kod:

// ==UserScript==
// @name       Boplats.se enhancer
// @namespace  https://sebastiannilsson.com/blogg/location-location-location/
// @version    0.1
// @description  Adds google maps integration to Boplats.se
// @match      https://boplats.se/
// @copyright  Whatever
// @require http://code.jquery.com/jquery-latest.js
// ==/UserScript==


$(document).ready(function() {
  var i = 0;
    var elements = $('#dgList.tbl_list tr');
    elements.each(function() { 
        if (i++ == 0)
            return;
        var origin = $(this).find('td:eq(1)').text() + ", " + $(this).find('td:eq(2)').text();
        var origin2 = $(this).find('td:eq(1)').text() + ", Göteborg";
        var destination = "Bergskroken 3, Mölndal";

        origin = encodeURIComponent(origin);
        origin2 = encodeURIComponent(origin2);
        destination = encodeURIComponent(destination);
        $.ajax({
            url: "https://sebastiannilsson.com/boplats-google-maps/index.php?origin="+origin+"&destination="+destination+"&mode=bicycling",
            dataType: 'text',
            context: $(this)
        }).done(function(s) {
            console.log("done: https://sebastiannilsson.com/boplats-google-maps/index.php?origin="+origin+"&destination="+destination+"&mode=bicycling");

            if (s== "NOT_FOUND") {
                $.ajax({
                    url: "https://sebastiannilsson.com/boplats-google-maps/index.php?origin="+origin2+"&destination="+destination+"&mode=bicycling",
                    dataType: 'text',
                    context: $(this)
                }).done(function(s2) {
                    console.log("done2: https://sebastiannilsson.com/boplats-google-maps/index.php?origin="+origin2+"&destination="+destination+"&mode=bicycling");
                    $(this).append( "<td>"+s2+"</td>" );
                });  
            }
            else {
                $(this).append( "<td>"+s+"</td>" );
            }
        });
    });
});
Tagged with:
Posted in Blog
1 Comment »Location, location, location
  1. Jean-Adrien says:

    Thank you Sebastian for sharing your work. I also have an interest in such features.
    Will try it tonight.
    Well done!

Leave a Reply

Your email address will not be published. Required fields are marked *

*