🏠 返回首頁 

Greasy Fork is available in English.

SeLoger plusplus

sl++


Installer ce script?
// ==UserScript==
// @name        SeLoger plusplus
// @namespace   sl_pp
// @include     https://www.seloger.com/*
// @version     1.0
// @grant       GM.xmlHttpRequest
// @require     https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js
// @description sl++
// ==/UserScript==
this.$ = this.$$$ = jQuery.noConflict(true);
// if($( "#searcharea option:selected" ).text().indexOf('Côte') !== -1) {
//   var onlyAddInfo = true;
// } else {
//   var onlyAddInfo = false;
// }
$(function () {
console.log("LBC++ loading...");
var googleApiKey = "AIzaSyCHSc3xuyTzEa2fJfspmoibJduKa1iNmVs";
var destCity = ["3 rue du docteur quignard, 21000, DIJON, France", ""];
// http://atlas.cosmosia.com/
var postalCodes = ["21121", "21120", "21240", "21370", "21380", "21490", "21850", "21800", "21560", "21110", "21600", "21300", "21910", "21220", "21160", "21410", "21640", "21540", "21470", "21310", "21270"];
function getDistances(place, el, cityEl, dest, cityName) {
console.log("place.city: "+ place.city);
console.log("dest: "+ dest);
// transit: https://developers.google.com/maps/documentation/distance-matrix/intro?hl=fr#travel_modes
var request = "https://maps.googleapis.com/maps/api/distancematrix/json?origins=21 "+place.city+"&destinations="+dest+"&mode=driving&sensor=false&key="+googleApiKey;
console.log(`request: `, request);
GM.xmlHttpRequest ({
method: "GET",
url: request,
onload: function(r###lt) {
console.log(`r###lt: `, r###lt);
var res = $.parseJSON(r###lt.response);
var status = res.rows[0].elements[0].status;
if(status === "OK") {
var duration = res.rows[0].elements[0].duration.text;
var distance = res.rows[0].elements[0].distance.text;
var infosAdd =  distance+ ', ' +duration;
console.log(`infosAdd: `, infosAdd);
var pBlock = '<p class="item_supp">'+cityName+': '+infosAdd+'</p><p><a href="https://www.google.fr/maps/dir/'+ dest +'/21 '+ place.city +'/" target="_blank">map</a></p>';
cityEl.after(pBlock);
}
else {
var pBlock = '<p class="item_supp">'+cityName+': NOT FOUND (<a href="'+request+'">gmaps link</a>)</p>';
cityEl.after(pBlock);
}
}
});
}
function parsePageDom() {
var offers = $('.liste_r###ltat .c-pa-list')
console.log(`offers: `, offers);
$.each(offers, function(i, el){
var cityEl = $(el).find('.c-pa-city');
var cityTxt = $.trim(cityEl.text());
var cityParsing = cityTxt.replace(/\r\n/g, "\n").split("\n");
console.log(`GETTING cityEl: `, cityTxt);
console.log(`GETTING cityEl: `, cityParsing);
var place = { "city" : cityParsing[0]};
getDistances(place, el, cityEl, destCity[0], "Travail");
});
}
parsePageDom()
});