Greasy Fork is available in English.

LeBonCoin plus plus General

lbc++general


Installer ce script?
  1. // ==UserScript==// @name LeBonCoin plus plus General// @namespace lbc_general// @include https://www.leboncoin.fr/*// @version 1.0// @grant GM.xmlHttpRequest// @require https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js// @description lbc++general// ==/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_modesvar 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>';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 = $('.tabsContent ul li');// var offers = $('#react-tabs-1 div ul li');console.log(`offers: `, offers);$.each(offers, function(i, el){// add target blank to a link// console.log('el', $(el).find('a').attr("target","_blank"));var href = $(el).find('a').attr('href');$(el).find('a').attr("target","_blank");var ctn = $(el).find('.item_price');// ctn.prev().prev().append('<p class="item_supp loading" content=""><strong>Loading values...</strong></p>');// requestPagesBis(href, el);// change pro/private container stylevar isProContainer = ($(el).find('.ispro').length !== 0);if(isProContainer) {$(el).css('opacity', '0.8').css('background', '#ddd');}if(!isProContainer && $(el).find('.lbcppheader').length === 0) {$(el).css('border', '1px solid #aaa');}// get city name to retrieve distance and durationvar cityEl = $(el).find('.item_infos .item_supp:eq(1)');var cityTxt = $.trim(cityEl.text());var cityParsing = cityTxt.replace(/\r\n/g, "\n").split("\n");var place = { "city" : cityParsing[0], "departement" : cityParsing[cityParsing.length-1].trim() };getDistances(place, el, cityEl, destCity[0], "Travail");});}parsePageDom()});