source: spip-zone/_plugins_/autocompletion/autocompletion.js.html @ 63072

Last change on this file since 63072 was 63072, checked in by dexbrayat@…, 9 years ago

Suppression de fichiers inutiles.
Renomage de l'ison gmap pour éviter les conflits éventuels.
Élargissement de la largeur de la google map.

File size: 4.1 KB
Line 
1[(#HTTP_HEADER{Content-Type: text/javascript})]
2
3[(#REM) Initialisation des variables goblals pour l'affichage initiale de la google map]
4var zoom_initial  = ($('googl'))? : ;
5var zoom_autocomp = 10;
6var centre_latitude_initial  = 46.763056; 
7var centre_longitude_initial = 2.424722;
8var latitude_marker_initial  = 45.044881;
9var longitude_marker_initial = 3.8898673999999573;
10
11var class_ville   = 'autocompletion_ville';
12var element_ville = 'input.'+class_ville;
13var class_cp      = 'autocompletion_cp';
14var element_cp    = 'input.'+class_cp;
15var id_map        = 'map_canvas';
16var element_map   = 'div#'+id_map;
17
18$(document).ready(function() {
19
20    if( $(element_cp).length > 0 && $(element_ville).length > 0){
21
22        // Initialisation de la Google map
23        if($(element_map).length > 0){
24            initialize();
25        }
26       
27        // Gestion de l'autocomplete par ajax
28        $(function (){
29            $( element_cp + ", " + element_ville ).autocomplete({
30                source: function (request, response){
31                    var objData = {};
32                    if ($(this.element).hasClass(class_cp)){
33                        objData = {
34                            codePostal: request.term,
35                            maxRows: 20
36                        };
37                    }
38                    else{
39                        objData = {
40                            ville: request.term,
41                            maxRows: 30
42                        };
43                    }
44                    $.ajax({
45                        url: "plugins/autocompletion/inc/autocompletion.php",
46//                        url: "#CHEMIN{inc/autocompletion.php}",
47                        dataType: "json",
48                        data: objData,
49                        type: 'POST',
50                        success: function (data){
51                            response($.map(data, function (item){
52                               
53                                return {
54                                    label: ""+ item.CodePostal + " - " + item.Ville,
55                                    value: function (){
56                                        if ($(this).hasClass(class_cp)){
57                                            return item.CodePostal;
58                                        }
59                                        else{
60                                            return item.Ville;
61                                        }
62                                    },
63                                    cp: item.CodePostal,
64                                    ville: item.Ville,
65                                    latitude: item.Latitude,
66                                    longitude: item.Longitude
67                                }
68                            }));
69                        }
70                    });
71                },
72                minLength: 2,
73                delay: 200,
74                select: function(event, ui) {
75                    $(element_ville).val(ui.item.ville);
76                    $(element_cp).val(ui.item.cp);
77//                    $("input.autocompletion_latitude").val(ui.item.latitude);
78//                    $("input.autocompletion_longitude").val(ui.item.longitude);
79//                    if($(element_map).length > 0){
80                        var location = new google.maps.LatLng(ui.item.latitude, ui.item.longitude);
81                        marker.setPosition(location);
82                        map.setZoom(zoom_autocomp);
83                        map.setCenter(location);
84//                    }
85                }
86            });
87        });
88    }
89});
90
91function initialize() {         
92
93console.log("#ENV");
94
95    var options = {
96        center: new google.maps.LatLng( centre_latitude_initial , centre_longitude_initial ),
97        zoom: zoom_initial,
98        mapTypeId: google.maps.MapTypeId.ROADMAP
99    };
100           
101    map = new google.maps.Map(document.getElementById(id_map), options);
102    geocoder = new google.maps.Geocoder();   
103    marker = new google.maps.Marker({
104        position: new google.maps.LatLng(latitude_marker_initial, longitude_marker_initial),
105        map: map,
106        draggable: false
107    });     
108}
109
110
Note: See TracBrowser for help on using the repository browser.