1var lat = '49.2'; 2var lng = '-0.7'; 3var mymap; 4var _global_dragstart = _global_zoomstart = _auto_fitbounds = false; 5var datas_geo = null; 6var old_nb_elements = 0; 7var affiches = new_affiches = markers = new_markers = []; 8var mapbounds = null; 9var nb_elements_to_load = 0; 10var nb_elements_loaded = -1; 11var nbresultstext = ''; 12var _init = true; 13 14var icone_base; 15var icone_over; 16var _max_zindex = 999; 17 18var syndicationcode = ''; 19 20 21 22$(function() { 23 _init_map(); 24 //_load_elements(); 25 _load_map_elements(); 26}); 27 28//récupération des paramètres de l'URL 29function getQueryParams(url_string, param) { 30 var url = new URL(url_string); 31 var value = url.searchParams.get(param); 32 return value; 33} 34 35//affichage erreur 36function _load_error(msg) { 37 console.log("ERREUR : " + msg ); 38} 39 40function _init_map() { 41 mymap = L.map('mapid').setView([lat, lng], 11); 42 var tiles_server = 'https://{s}.tile.osm.org/{z}/{x}/{y}.png'; 43 44 L.tileLayer(tiles_server, { 45 attribution: 'données <a href="//osm.org/copyright">OpenStreetMap</a>/ODbL - rendu <a href="//openstreetmap.fr">OSM</a>', 46 minZoom: 6, 47 maxZoom: 18 48 }).addTo(mymap); 49 50 /* 51 //carte avec tile vectorisee 52 L.maplibreGL({ 53 style: 'https://tiles.openfreemap.org/styles/liberty', 54 }).addTo(mymap); 55 */ 56 // Désactive le zoom roulette à moins de cliquer sur la carte 57 mymap.scrollWheelZoom.disable(); 58 this.mymap.on('click', () => { this.mymap.scrollWheelZoom.enable();}); 59 this.mymap.on('mouseout', () => { this.mymap.scrollWheelZoom.disable();}); 60
61 //icones disponibles 62 icone_base = _create_icon(get_url_site() + '/images/assets/puce-signature.svg'); 63 icone_over = _create_icon(get_url_site() + '/images/assets/puce-signature-gris.svg'); 64 65} 66 67//actions : tri, popin filtre, ... 68function _liste_actions() { 69 //tri 70 $('#prestataire-tri').unbind(); 71 $('#prestataire-tri').on("change", function (event) { 72 event.stopPropagation(); 73 $.ajax({ 74 type: "GET", 75 url: get_url_site() + "/prestataire/actions.php", 76 data: { 77 mode: 'set_orderby', 78 tri: $('#prestataire-tri').val() 79 } 80 }) 81 .done(function(data) { 82 /* 83 //console.log('//tri enregistré'); 84 //reload prestataires 85 _init = true; 86 _reset_elements(); 87 _load_elements(); 88 */ 89 window.location.reload(); 90 }); 91 }); 92 93 //popin filtres 94 $('#btn-prestataire-filtres').unbind(); 95 $('#btn-prestataire-filtres').on("click", function (event) { 96 //console.log('//open filtre'); 97 event.stopPropagation(); 98 $.ajax({ 99 type: "GET", 100 url: get_url_site() + "/prestataire/popin_filtres.php", 101 datatype: "html", 102 data: { 103 page_id: $('#btn-prestataire-filtres').data('idpage') 104 } 105 }) 106 .done(function(html) { 107 108 //affiche la popin 109 $('#filtres-modal').remove(); 110 $('body').append(html); 111 112 //actions popin 113 //applique les filtres 114 $('#filtres-reload').unbind(); 115 $('#filtres-reload').on('click', function(event) { 116 event.stopPropagation(); 117 $.ajax({ 118 type: "GET", 119 url: get_url_site() + "/prestataire/actions.php", 120 data: $('#form_filtres').serialize(), 121 datatype: "json" 122 }) 123 .done(function(data) { 124 125 //console.log('set_filtres:' + data); 126 if(data !== null) { 127 128 if(data.done == "1") { 129 $('#filtres-modal').remove(); 130 //reload les prestataires correspondant aux nouveaux filtres 131 /* 132 _init = true; 133 _reset_elements(); 134 _load_elements(); 135 $('#btn-prestataire-reset-filtres').css('display','block'); 136 */ 137 window.location.reload(); 138 } else { 139 140 } 141 142 } else { 143 _load_error('set_filtres : data null'); 144 } 145 146 147 148 149 150 }); 151 }); 152 153 //btn reset les filtres dans la popin 154 $('#filtres-effacer').unbind(); 155 $('#filtres-effacer').on('click', function(event) { 156 157 event.stopPropagation(); 158 _reset_filtres(); 159 160 }); 161 162 163 164 $('#filtres-modal-close').unbind(); 165 $('#filtres-modal-close').on("click", function () { 166 $('#filtres-modal').remove(); 167 }); 168 169 }); 170 }); 171 172 //reset les filtres 173 $('#btn-prestataire-reset-filtres').unbind(); 174 $('#btn-prestataire-reset-filtres').on('click', function(event) { 175 176 event.stopPropagation(); 177 _reset_filtres(); 178 179 }); 180} 181 182function _reset_filtres() { 183 //console.log('//RESET FILTRES'); 184 $.ajax({ 185 type: "GET", 186 url: get_url_site() + "/prestataire/actions.php", 187 data: { 188 mode: 'reset_filtres' 189 }, 190 datatype: "json" 191 }) 192 .done(function(data) { 193 194 if(data !== null) { 195 if(data.done == "1") { 196 $('#filtres-modal').remove(); 197 //reload les prestataires 198 /* 199 _init = true; 200 _reset_elements(); 201 _load_elements(); 202 $('#btn-prestataire-reset-filtres').css('display','none'); 203 */ 204 window.location.reload(); 205 } 206 } else { 207 _load_error('reset_filtres : data null'); 208 } 209 210 211 }); 212} 213 214//mouvements de la carte 215function _move_map_actions(mymap) { 216 _global_dragstart = false; 217 _global_zoomstart = false; 218 219 $(mymap).on("dragstart", function () { 220 //console.log('map dragstart'); 221 _global_dragstart = true; 222 }); 223 $(mymap).on("zoomstart", function () { 224 //console.log('map zoomstart'); 225 _global_zoomstart = true; 226 }); 227 228 $(mymap).on("moveend", function () { 229 //console.log('map moveend / _global_dragstart = ' + _global_dragstart); 230 if(_global_dragstart) { 231 _map_end_move(mymap); 232 } 233 234 }); 235 $(mymap).on("zoomend", function () { 236 //console.log('map zoomend / _global_zoomstart = ' + _global_zoomstart); 237 if(_global_zoomstart) { 238 _map_end_move(mymap); 239 } 240 }); 241 242} 243 244function _move_map_actions_delete(mymap) { 245 _global_dragstart = false; 246 _global_zoomstart = false; 247 248 $(mymap).unbind('dragstart'); 249 $(mymap).unbind('zoomstart'); 250 $(mymap).unbind('moveend'); 251 $(mymap).unbind('zoomend'); 252} 253 254 255 256//_load_elements() ne sert plus : rechargement de la page complet via window.location.reload(); 257function _load_elements() { 258 259 console.log('//LOAD ELEMENTS'); 260 261 _move_map_actions_delete(mymap); 262 $('.nb-results').css('opacity', '0'); 263 $('#listing-prestataire-load').css('display', 'block'); 264 $('#listing-prestataire-up').css('display', 'none'); 265 $('#listing-prestataire-noresult').css('display', 'none'); 266 /*$('.js-prestataire').css('display','none');*/ 267 $('.listing-prestataire__item').css('opacity', 0); 268 syndicationcode = $('#listing-prestataire__list').data('syndicationcode'); 269
270 //NB : async forcé à false car les éléments ont une chronologie ou un tri 271 //si on met à true, les vignettes se chargent dans le désordre 272 273 //filtres recherche : en session 274 275 //filtres geo 276 if(datas_geo != null) { 277 send_datas_geo = JSON.stringify(datas_geo); 278 } else { 279 send_datas_geo = {}; 280 } 281 282 283 $.ajax({ 284 type: "GET", 285 url: get_url_site() + "/prestataire/actions.php", 286 data: { 287 mode: 'get_prestataires', 288 datatype: 'json', 289 datas_geo: send_datas_geo 290 }, 291 async: false, 292 datatype: 'json' 293 }) 294 .done(function(data) { 295 /* 296 console.log(data); 297 console.log('//nb filtres: ' + data.nb_filtres); 298 console.log('//filtres: ' + data.filtres); 299 console.log('//send_datas_geo: ' + send_datas_geo); 300 */ 301 302 if(data !== null) { 303 //console.log('//LOAD ELEMENTS'); 304 //console.log('//tri: ' + data.tri); 305 //console.log('//date_debut: ' + data.date_debut); 306 307 308 //console.log('//request_mode: ' + data.request_mode); 309 //console.log('//requete: ' + data.req); 310 311 if(data.error != '') { 312 _load_error(data.error); 313 } else { 314 315 316 317 var elements = data.elements; 318 if(elements != null) { 319 //console.log('//elements: ' + elements.length); 320 //console.log('//deja affichés: ' + affiches.length); 321 322 //affichage des points sur la carte & des cadres 323 324 new_affiches = []; 325 new_markers = []; 326 nb_elements_loaded = 0; 327 nb_elements_to_load = elements.length; //compte des éléments à charger 328 nbresultstext = data.nbresultstext; 329 330 if(elements.length > 0) { 331 332 333 for(p=0;p<elements.length;p++) { 334 335 336 new_affiches.push(elements[p]["id"]); 337 338 //test si deja present dans la liste affichée 339 if(jQuery.inArray(elements[p].id, affiches) > -1) { 340 //OK déjà affiché 341 //console.log('//deja : ' + elements[p].titre); 342 nb_elements_loaded++; 343 _load_elements_complete(); 344 } else { 345 346 //console.log('//nouveau : ' + elements[p].titre); 347 //special agenda FMA : affiche un bloc par date 348 if(syndicationcode == 'FMA') { 349 if(p>0) { 350 elements[p].date_precedente = elements[p-1].date; 351 } else { 352 elements[p].date_precedente = ''; 353 } 354 355 356 } 357 358 359 _load_element(elements[p]); 360 } 361 362 363 364 365 } 366 367 //aucun résultat 368 } else { 369 $('#listing-prestataire-noresult').css('display', 'block'); 370 $('#listing-prestataire-load').css('display', 'none'); 371 $('#listing-prestataire-up').css('display', 'none'); 372 _reset_elements(); 373 _move_map_actions(mymap); 374 } 375 376 377 } else { 378 $('#listing-prestataire-noresult').css('display', 'block'); 379 $('#listing-prestataire-load').css('display', 'none'); 380 _reset_elements(); 381 _move_map_actions(mymap); 382 } 383 384 385 } 386 } else { 387 _load_error('data null'); 388 } 389 390 //if(!_auto_fitbounds) { 391 392 //reactive mouvements carte 393 //_global_dragstart = true; 394 395 396 //} 397 }); 398 399} 400 401//meme fonction, mais ne charge que les points de la carte 402function _load_map_elements() { 403 404 _move_map_actions_delete(mymap); 405 $('.nb-results').css('opacity', '0'); 406 $('#listing-prestataire-load').css('display', 'block'); 407 $('#listing-prestataire-up').css('display', 'none'); 408 $('#listing-prestataire-noresult').css('display', 'none'); 409 $('.listing-prestataire__item').css('opacity', 0); 410 syndicationcode = $('#listing-prestataire__list').data('syndicationcode'); 411 412 413 //filtres recherche : en session 414 415 //filtres geo 416 if(datas_geo != null) { 417 send_datas_geo = JSON.stringify(datas_geo); 418 } else { 419 send_datas_geo = {}; 420 } 421 422 //console.log('//LOAD MAP ELEMENTS'); 423 $.ajax({ 424 type: "GET", 425 url: get_url_site() + "/prestataire/actions.php", 426 data: { 427 mode: 'get_prestataires', 428 datatype: 'json', 429 datas_geo: send_datas_geo 430 }, 431 datatype: 'json' 432 }) 433 .done(function(data) { 434 435 if(data !== null) { 436 //console.log('//LOAD ELEMENTS'); 437 //console.log('//tri: ' + data.tri); 438 //console.log('//date_debut: ' + data.date_debut); 439 //console.log('//filtres: ' + data.filtres); 440 441 //console.log('//request_mode: ' + data.request_mode); 442 //console.log('//requete: ' + data.req); 443 444 if(data.error != '') { 445 _load_error(data.error); 446 } else { 447 448 449 450 var elements = data.elements; 451 if(elements != null) { 452 //console.log('//elements: ' + elements.length); 453 //console.log('//deja affichés: ' + affiches.length); 454
455 //affichage des points sur la carte & des cadres 456 457 new_affiches = []; 458 new_markers = []; 459 nb_elements_loaded = 0; 460 nb_elements_to_load = elements.length; //compte des éléments à charger 461 nbresultstext = data.nbresultstext; 462 463 if(elements.length > 0) { 464 465 466 for(p=0;p<elements.length;p++) { 467 468 469 new_affiches.push(elements[p]["id"]); 470 471 //test si deja present dans la liste affichée 472 if(jQuery.inArray(elements[p].id, affiches) > -1) { 473 //OK déjà affiché 474 //console.log('//deja : ' + elements[p].titre); 475 nb_elements_loaded++; 476 _load_elements_complete(); 477 } else { 478 479 _load_map_element(elements[p]); 480 } 481 482 483 484 485 } 486 487 //aucun résultat 488 } else { 489 $('#listing-prestataire-noresult').css('display', 'block'); 490 $('#listing-prestataire-load').css('display', 'none'); 491 $('#listing-prestataire-up').css('display', 'none'); 492 _reset_elements(); 493 _move_map_actions(mymap); 494 _liste_actions(); 495 } 496 497 498 } else { 499 $('#listing-prestataire-noresult').css('display', 'block'); 500 $('#listing-prestataire-load').css('display', 'none'); 501 _reset_elements(); 502 _move_map_actions(mymap); 503 } 504 505 506 } 507 } else { 508 _load_error('data null'); 509 } 510 511 //if(!_auto_fitbounds) { 512 513 //reactive mouvements carte 514 //_global_dragstart = true; 515 516 517 //} 518 }); 519 520} 521 522function _reset_elements() { 523 $('#listing-prestataire__list').find('li').remove(); 524 affiches = []; 525 $('#nb-results-value').html('0'); 526 $('#nb-results-text').html(nbresultstext); 527 528 for(m=0;m<markers.length;m++) { 529 mymap.removeLayer(markers[m]); 530 } 531 markers = []; 532 nb_elements_loaded = 0; 533 nb_elements_to_load = 0; 534 535 //_move_map_actions(mymap); 536} 537 538/* 539function _load_bloc_date(date) { 540 541 console.log('Change date : '+date); 542 $.ajax({ 543 type: "GET", 544 url: get_url_site() + "/prestataire/include_bloc_date.php", 545 data: { 546 date: date 547 }, 548 549 datatype: 'html' 550 }) 551 .done(function(html) { 552 553 //cadre HTML 554 if(html != null) { 555 $('#listing-prestataire__list').append(html); 556 } 557 558 }); 559} 560*/ 561 562function _load_element(element) { 563 564 565 566 var id = element.id; 567 $.ajax({ 568 type: "GET", 569 url: get_url_site() + "/prestataire/include_bloc_prestataire.php", 570 data: { 571 id: id, 572 date_precedente: element.date_precedente, 573 date: element.date, 574 heure: element.heure_debut, 575 syndicationcode: syndicationcode 576 }, 577 async: false, 578 datatype: 'html' 579 }) 580 .done(function(html) { 581 582 //cadre HTML 583 if(html != null) { 584 $('#listing-prestataire__list').append(html); 585 /* 586 $('#listing-prestataire__list').find('li#prestataire-'+id).find('.listing-prestataire__galerie').css('display','block'); 587 //galerie 588 589 $('#listing-prestataire__list').find('li#prestataire-'+id).find('.js-prestataire').lightSlider({ 590 item:1, 591 slideMove:1, 592 slideMargin:0, 593 controls: true, 594 pager: false, 595 speed: 1000, 596 }); 597 */ 598 } 599 600 601 //icon sur la carte 602 var marker = L.marker([element.lat, element.lng], {icon: icone_base, title: element.titre, id: element.i
602d, point: element, riseOnHover: true}); 603 marker.addTo(mymap); 604 marker.on('mouseover',function(ev) { 605 for(m=0;m<markers.length;m++) { 606 _marker_change_icon(markers[m], icone_base, false); 607 } 608 $('#listing-prestataire__list').find('li').removeClass('listing-prestataire__item_active'); 609 _marker_change_icon(marker, icone_over, true); 610 var id = marker.options.id; 611 $('#listing-prestataire__list').find('li#prestataire-'+id).addClass('listing-prestataire__item_active'); 612 }); 613 marker.on('mouseout',function(ev) { 614 _marker_change_icon(marker, icone_base, false); 615 $('#listing-prestataire__list').find('li').removeClass('listing-prestataire__item_active'); 616 }); 617 618 619 620 //popup 621 var myPopup = L.DomUtil.create('div', '_marker_popup_'+id); 622 myPopup.innerHTML = _create_popup(element); 623 marker.bindPopup(myPopup); 624 625 markers.push(marker); 626 627 //chargé 628 nb_elements_loaded++; 629 _load_elements_complete(); 630 631 }); 632} 633 634 635//meme fonction mais load uniquement les points de la carte 636function _load_map_element(element) { 637 638 var id = element.id; 639 640 641 //icon sur la carte 642 var marker = L.marker([element.lat, element.lng], {icon: icone_base, title: element.titre, id: element.id, point: element, riseOnHover: true}); 643 marker.addTo(mymap); 644 marker.on('mouseover',function(ev) { 645 for(m=0;m<markers.length;m++) { 646 _marker_change_icon(markers[m], icone_base, false); 647 } 648 $('#listing-prestataire__list').find('li').removeClass('listing-prestataire__item_active'); 649 _marker_change_icon(marker, icone_over, true); 650 var id = marker.options.id; 651 $('#listing-prestataire__list').find('li#prestataire-'+id).addClass('listing-prestataire__item_active'); 652 }); 653 marker.on('mouseout',function(ev) { 654 _marker_change_icon(marker, icone_base, false); 655 $('#listing-prestataire__list').find('li').removeClass('listing-prestataire__item_active'); 656 }); 657 658 659 660 //popup 661 var myPopup = L.DomUtil.create('div', '_marker_popup_'+id); 662 myPopup.innerHTML = _create_popup(element); 663 marker.bindPopup(myPopup); 664 665 markers.push(marker); 666 667 //chargé 668 nb_elements_loaded++; 669 _load_elements_complete(); 670 671} 672 673 674function _load_elements_complete() { 675 //console.log('//_load_elements_complete'); 676 //console.log('//nb_elements_loaded = ' + nb_elements_loaded + ' / nb_elements_to_load = ' + nb_elements_to_load); 677 if(nb_elements_loaded == nb_elements_to_load) { 678 //console.log('//load complete / init = '+_init); 679 680 681 682 //affichage elements 683 //ne recupere que les nouveaux 684 685 $('#nb-results-value').html(nb_elements_to_load); 686 $('#nb-results-text').html(nbresultstext); 687 $('.nb-results').css('opacity', '1'); 688 689 //si plus de 6 elements, affiche le bouton pour retour haut 690 if(nb_elements_to_load > 6) { 691 $('#listing-prestataire-up').css('display', 'block'); 692 $('#listing-prestataire-up').unbind(); 693 $('#listing-prestataire-up').on('click', function() { 694 $("html, body").animate({ scrollTop: 0 }, "slow"); 695 return false; 696 }); 697 } 698 699 700 //retire ceux qui ne figurent plus dans la liste 701 if(!_init) { 702 //console.log('//--> anciennement affiches : ' + affiches.length); 703 //console.log('//--> anciennement affiches array : ' + affiches); 704 for(p=0;p<affiches.length;p++) { 705 if(jQuery.inArray(affiches[p], new_affiches) == '-1') { 706 707 //retire cadre 708 $('#listing-prestataire__list').find('li#prestataire-'+affiches[p]).remove(); 709 710 //retire marker lié 711 for(m=0;m<markers.length;m++) { 712 if(markers[m].options.id == affiches[p]) { 713 var marker = markers[m]; 714 //console.log('//delete marker : ' + marker); 715 mymap.removeLayer(marker); 716 markers.splice(m, 1);//retire du tableau JS 717 break; 718 } 719 } 720 721
722 } 723 } 724 } 725 affiches = []; 726 for(p=0;p<new_affiches.length;p++) { 727 affiches.push(new_affiches[p]); 728 } 729 730 731 732 //auto cadrage de la carte 733 _auto_fitbounds = false; 734 735 if(_init && nb_elements_to_load != old_nb_elements) { 736 737 _global_dragstart = false; 738 _global_zoomstart = false; 739 740 var mapbounds = L.latLngBounds(); 741 for(m=0;m<markers.length;m++) { 742 if(markers[m] != null && markers[m] != undefined &&markers[m].getLatLng() != null) { 743 mapbounds.extend(markers[m].getLatLng()); 744 } 745 } 746 mymap.fitBounds(mapbounds, {padding: [50,50]}); 747 //console.log('//map fitbounds'); 748 749 $(mymap).on("zoomend movend", function () { 750 _move_map_actions(mymap); 751 }); 752 } else { 753 _move_map_actions(mymap); 754 } 755 756 //actions cadre prestataire : over = icon actif 757 $('#listing-prestataire__list').find('li').unbind(); 758 $('#listing-prestataire__list').find('li').on('mouseover', function() { 759 $('#listing-prestataire__list').find('li').removeClass('listing-prestataire__item_active'); 760 $(this).addClass('listing-prestataire__item_active'); 761 762 var id = $(this).data('id'); 763 for(m=0;m<markers.length;m++) { 764 if(markers[m].options.id == id) { 765 _marker_change_icon(markers[m], icone_over, true); 766 } else { 767 _marker_change_icon(markers[m], icone_base, false); 768 } 769 } 770 }); 771 772 //galeries : active toutes à la fin 773 //pb : les images sont en vrac pendant le chargement 774 //à desactiver si 1 seule photo par prestataire 775 776 $('#listing-prestataire__list').find('.js-prestataire').lightSlider({ 777 item:1, 778 slideMove:1, 779 slideMargin:0, 780 controls: true, 781 pager: false, 782 speed: 1000, 783 mode: 'slide', 784 onSliderLoad: function(el) { 785 //$('.js-prestataire').css('display','block'); 786 //$('.listing-prestataire__galerie-item').css('display','block'); 787 //$('.listing-prestataire__item').fadeTo(300, 1); 788 $('.listing-prestataire__item').css('opacity', 1); 789 } 790 }); 791 792 $('.listing-prestataire__item').css('opacity', 1); 793 old_nb_elements = nb_elements_to_load; 794 795 796 //autorise le tri 797 if(_init) { 798 _liste_actions(); 799 } 800 801 802 _init = false; 803 804 //masque l'animation de loading 805 $('#listing-prestataire-load').css('display', 'none'); 806 //console.log('//chargement termine'); 807 808 } 809 810 if(nb_elements_to_load == 0) { 811 _liste_actions(); 812 } 813} 814 815function _map_set_datasgeo(map) { 816 datas_geo = {}; 817 818 var bounds = map.getBounds(); 819 820 //nord / sud
821 datas_geo.lat_min = bounds.getSouthWest().lat; 822 datas_geo.lat_max = bounds.getNorthWest().lat; 823 824 //ouest / est 825 datas_geo.lng_min = bounds.getNorthWest().lng; 826 datas_geo.lng_max = bounds.getNorthEast().lng; 827 828 return datas_geo; 829} 830 831 832function _map_end_move(map) { 833 834 835 datas_geo = _map_set_datasgeo(map); 836 837 //reload points 838 //A FAIRE : probleme, reload parfois 2 fois ! 839 _load_elements(); 840 841 842} 843 844//icones 845function _marker_change_icon(marker, icon, change_zindex) { 846 marker.setIcon(icon); 847 if(change_zindex) { 848 //L.setOptions(marker, {riseOnHover: true}); //ne fonctionne pas 849 marker._icon.style.zIndex = _max_zindex; 850 _max_zindex++; 851 } 852} 853 854 855function _create_icon(icon_url) { 856 857 var myIcon = L.icon({ 858 iconUrl: icon_url, 859 iconSize: [35, 70] // size of the icon 860 861 /* 862 //autres reglages possibles 863 864 865 shadowSize: [50, 64], // size of the shadow 866 iconAnchor: [22, 94], // point of the icon which will correspond to marker's location 867 shadowAnchor: [4, 62], // the same for the shadow 868 popupAnchor: [-3, -76] // point from which the popup should open relative to the iconAnchor 869 */ 870 }); 871 872 ////console.log(icon_url); 873 return myIcon; 874
875} 876 877 878//popups 879function _create_popup(element) { 880 var url = ''; 881 if(element.page != null && element.page != undefined) { 882 url = element.page.full_url; 883 } 884 var content = '<a class="_popup_content" href="'+url+'">'; 885 var cssphoto = ''; 886 if(element.photos != null && element.photos.length > 0 && element.photos[0].photo_mini != '' && element.photos[0].photo_mini != undefined) { 887 cssphoto = 'background-image:url(\''+element.photos[0].photo_mini+'\');'; 888 } 889 content += '<div class="_photo" data-field="url_photo" style="'+cssphoto+'"></div>'; 890 content += '<div class="_infos"><div class="prestataire-titre" data-field="titre">' + element.titre + '</div><div class="prestataire-resume">' + element.adresse1 + '</div><div class="prestataire-localisation" data-field="commune">' + element.commune + '</div></div>'; 891 content += '</a>'; 892 return content; 893}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.