1// ========================================= 2// Antennes des exploitants (opérateurs) 3// Situées dans le voisinage du site étudié. 4// ========================================= 5 6//Icone oroginal 7var icone_originale = null; 8// Supports affichés pour l'exploitant sélectionné 9// Remplis avant l'affichage avec les coordonnées des supports reçues du serveur 10// Utilisé pour effacer les supports de l'exploitant sur changement 11var exploitant_supports_affiches = []; 12 13var exploitant_habitat_courant = null; 14 15 16// Nom de l'exploitant sélectionné par bouton radio 17// de "Sites des exploitants entourant votre site" 18var exploitant_courant = null; 19 20// Mémorise l'exploitant courant. 21// Ne peut pas etre mémoriser dans le script la page html 22// Voir: https://www.w3schools.com/js/tryit.asp?filename=tryjs_scope_window 23function exploitant_courant_memorise(nom_exploitant) 24{ 25 console.log('exploitant_courant_memorise: '+ nom_exploitant); 26 exploitant_courant = nom_exploitant; 27} 28 29// Efface les supports exploitant. 30// Pour les reafficher par la suite. 31function exploitant_supports_efface() 32{ 33 // Efface les supports sur la carte 34 for (var s in exploitant_supports_affiches) 35 { 36 // Efface le support 37 exploitant_support_efface(s); 38 } 39 // Efface dans le modèle 40 exploitant_supports_affiches = []; 41} 42 43// Réduit un support exploitant. 44// Utilisé pour masquer la portée des supports exploitant 45// sans interet pour l'étude du site. 46function exploitant_support_reduit(s) 47{ 48 var marqueur = s[0]; 49 var portee = s[1]; 50 var affiche = s[2]; 51 console.log('affiche',affiche); 52 53 if (affiche) 54 { 55 // Affiche: réduit le support 56 radio_map.removeLayer(portee); // Portée 57 // Réduit l'icone 58 exploitant_icone_reduit(marqueur); 59 s[0]=marqueur; 60 // Non affiché 61 s[2]=false; 62 } 63 else 64 { 65 // Réduit: remet le support visible 66 exploitant_icone_restaure(marqueur) 67 radio_map.addLayer(s[1]); // Portée 68 s[2]=true; 69 } 70 71} 72 73function exploitant_icone_reduit(marqueur) 74{ 75 // This sets up an icon to be replaced on redraw. 76 console.log("marqueur", marqueur); 77 icone_originale = marqueur.options.icon; 78 var petiteIcone = L.icon({ 79 iconUrl: 'vendeur/leaflet/images/marker-icon.png', 80 iconSize: [15, 25] 81 }); 82 marqueur.setIcon(petiteIcone); 83} 84 85function exploitant_icone_restaure(marqueur) 86{ 87 marqueur.setIcon(icone_originale); 88} 89 90 91// Efface le support 92function exploitant_support_efface(s) 93{ 94 console.log('exploitant_support_efface'); 95 radio_map.removeLayer(exploitant_supports_affiches[s][0]); // marqueur 96 radio_map.removeLayer(exploitant_supports_affiches[s][1]); // portée 97} 98 99// 100// ==============Supports exploitant sélectionné ================= 101// 102// Evènement: Déclenché sur changement d'exploitant 103// - Formulaire: "exploitant" 104// - Evènement sur boutons radio: "onchange" 105function exploitant_supports_affiche() 106{ 107 // console.log(url()); 108 exploitant_supports_efface(); 109 console.log('exploitant_courant',exploitant_courant) 110 console.log(radio_map); 111 if (exploitant_courant != '00') 112 { 113 // Exploitant choisi. 114 // Récupère les coordonnées de la vue (fenetre d'affichage de la carte) 115 var fenetre_affichage = radio_map.getBounds(); 116 console.log(fenetre_affichage); 117 118 // Coordonnée du coin en bas à gauche
119 var sud_ouest = fenetre_affichage.getSouthWest(); 120 var sud = sud_ouest.lat; 121 var ouest = sud_ouest.lng; 122 123 // Coordonnée du coin en haut à droite 124 var nord_est = fenetre_affichage.getNorthEast(); 125 var nord = nord_est.lat; 126 var est = nord_est.lng; 127 console.log(url()); 128 var requete= url() + "classes/exploitants/lis_supports_exploitant.php" 129 +"?nord=" + nord 130 +"&ouest=" + ouest 131 +"&est=" + est 132 +"&sud=" + sud 133 +"&exploitant=" + exploitant_courant 134 +"&supports=?"; 135 console.log(requete); 136 137 $.ajax({ 138 dataType: "json", 139 url: requete, 140 }); 141 } 142} 143 144// Affiche les supports de l'exploitant sélectionné renvoyés par le serveur 145// Appelé par '$.ajax(url() + "lis_supports_exploitant.php", ...)' 146// Dans la fonction 'exploitant_supports_affiche(exploitant)' ci dessus 147function supports 148( 149 liste_supports // Liste de supports en Json retournée par le serveur 150) 151{ 152 var Nombre_supports_exploitant = liste_supports.length; 153 console.log('Nombre_supports_exploitant: ' + Nombre_supports_exploitant); 154 console.log(liste_supports[1]); 155 // Affiche les supports 156 for (var i = 0; i < Nombre_supports_exploitant; i++) { 157 var s = liste_supports[i]; 158 // console.log(s); 159 // Support d'antennes existant 160 support_affiche(s,i); 161 } 162} 163 164function support_affiche( 165 s, // Support 166 i // Position dans liste des supports 167 ) 168{ 169 // Marqueur du support 170 var marqueur = L.marker 171 ( 172 [s.latitude, s.longitude], 173 // Options 174 { 175 clickable: true, 176 draggable: false, 177 position_liste : i 178 } 179 ); 180 marqueur.on('click', exploitant_support_click); 181 marqueur.addTo(radio_map); 182 183 console.log('horizon_temporel_courant:' + horizon_temporel_courant); 184 console.log('exploitant_habitat_courant:' + exploitant_habitat_courant); 185 // Cercle centré sur le support matérialisant la portée de l'antenne 186 //nouveau_rayon_antenne=1000; 187 switch (horizon_temporel_courant) 188 { 189 case 0: nouveau_rayon_antenne = habitats_antennes_rayons[exploitant_habitat_courant].habitat_rayon_0; 190 break; 191 case 1: nouveau_rayon_antenne = habitats_antennes_rayons[exploitant_habitat_courant].habitat_rayon_2_3; 192 break; 193 case 2: nouveau_rayon_antenne = habitats_antennes_rayons[exploitant_habitat_courant].habitat_rayon_5; 194 break; 195 } 196 console.log('nouveau_rayon_antenne:' + nouveau_rayon_antenne ); 197 var portee_antenne = L.circle 198 ([s.latitude, s.longitude], 199 Number(nouveau_rayon_antenne), 200 { 201 fillColor : 'PaleTurquoise', 202 fillOpacity: Number(0.1), 203 color: 'blue', 204 weight : Number(0.5), 205 opacity : Number(0.8) 206 } 207 ); 208 // Indispensable 209 portee_antenne.setRadius(nouveau_rayon_antenne); 210 console.log('portee_antenne:' ) 211 console.log(portee_antenne) 212 portee_antenne.addTo(radio_map); 213 // Mémorise les supports afin de pouvoir les effacer en tant que objets graphiques 214 var affiche = true; 215 exploitant_supports_affiches.push([marqueur,portee_antenne,affiche]); 216} 217 218// Réduit l'icone du support exploitant sur click 219// Pour les antennes de deuxième rang par rapport au site étudié 220function exploitant_support_click(e) 221{ 222 console.log(e); 223 var marqueur = e.target; 224 var position_liste = marqueur.options.position_liste; 225 var s = exploitant_supports_affiches[position_liste]; 226 exploitant_support_reduit(s); 227} 228 229// Changement de l'habitat couvert par les antennes de l'exploitant courant 230// Réaffiche les corolles des supports de l'exploitant en fonction 231 232function exploitant_habitat_change(nouvel_habitat) 233{ 234 exploitant_habitat_courant = nouvel_habitat; 235 horizon_temporel_operateur_change(); 236} 237
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.