-
Notifications
You must be signed in to change notification settings - Fork 0
/
dpa-maps.php
118 lines (109 loc) · 3.11 KB
/
dpa-maps.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
<?php
require_once 'dpa-api.php';
$objDPA = new DPA();
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Google Maps JavaScript API v3 Example: Marker Animations</title>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
<script>
var chile = new google.maps.LatLng(-36.4, -72.0);
var regiones = [
<?php
$aRegiones = $objDPA->Regiones($aData);
$nro_regiones = count($aRegiones);
$cnt = 1;
foreach ($aRegiones as $r):
$coma = '';
if ($cnt < $nro_regiones)
$coma = ',';
echo "new google.maps.LatLng(" . $r->lat . ", " . $r->lng . ")" . $coma . "\n\r";
$cnt++;
endforeach;
?>
];
var provincias = [
<?php
$aProvincias = $objDPA->Provincias($aData);
$nro_provincias = count($aProvincias);
$cnt = 1;
foreach ($aProvincias as $p):
$coma = '';
if ($cnt < $nro_provincias)
$coma = ',';
echo "new google.maps.LatLng(" . $p->lat . ", " . $p->lng . ")" . $coma . "\n\r";
$cnt++;
endforeach;
?>
];
var comunas = [
<?php
$aComunas = $objDPA->Comunas($aData);
$nro_comunas = count($aComunas);
$cnt = 1;
foreach ($aComunas as $c):
$coma = '';
if ($cnt < $nro_comunas)
$coma = ',';
echo "new google.maps.LatLng(" . $c->lat . ", " . $c->lng . ")" . $coma . "\n\r";
$cnt++;
endforeach;
?>
];
var markers = [];
var iterator = 0;
var map;
function initialize() {
var mapOptions = {
zoom: 4,
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: chile
};
map = new google.maps.Map(document.getElementById('map_canvas'),
mapOptions);
}
function drop(type) {
switch(type){
case "regiones":
color = "228b22";
break
case "provincias":
color = "ffff00";
break
case "comunas":
color = "FF0000";
break
}
type = eval(type);
iterator = 0;
for (var i = 0; i < type.length; i++) {
setTimeout(function() {
addMarker(type, color);
}, i * 50);
}
}
function addMarker(type, color) {
markers.push(new google.maps.Marker({
position: type[iterator],
map: map,
draggable: false,
animation: google.maps.Animation.DROP,
icon: "http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=%E2%80%A2|" + ((color) ? color : 'FAFAEE')
}));
iterator++;
}
</script>
</head>
<body onload="initialize()">
<div id="map_canvas" style="width: 800px; height: 600px;">map div</div>
<button id="drop" onclick="drop('regiones')">Regiones</button>
<button id="drop" onclick="drop('provincias')">Provincias</button>
<button id="drop" onclick="drop('comunas')">Comunas</button>
<div style="clear: both"></div>
<div id="info" style="border: 1px solid #ccc; float: right">
info
</div>
</body>
</html>