resources google map
[unfold.git] / portal / static / js / onelab_slice-resource-view.js
1 $(document).ready(function() {
2         $('ul.nav-resources a').click(function() {
3         $('ul.nav-resources li').removeClass('active');
4         $(this).parent().addClass('active');
5         $('div.panel').hide();
6         $('div#'+$(this).data('panel')).show();
7         
8         if ($(this).data('panel') == 'map') {
9                 mapInit();
10         }
11     });
12     
13     $.get("/rest/platform", function(data) {
14                 var list = '<div class="list-group-item sl-platfrom"><span class="list-group-item-heading">Testbeds</span></div>';
15                 for(i=0; i<data.length;i++) {
16                         list += '<a href="#" class="list-group-item sl-platfrom" data-platform="'+data[i].platform+'"><span class="list-group-item-heading">'+data[i].platform_longname+'</span><p class="list-group-item-text">'+data[i].platform+'</p></a>';
17                 }
18                 $('#select-platform').html(list);
19         }).done(function() {
20                 
21         });
22         
23    //google.maps.event.addDomListener(window, 'load', initialize);
24 });
25
26 function mapInit() {
27         
28     $.get("/rest/resource/", {"fields" : ["hostname","latitude","longitude"] }, function(data) {
29         
30                 var mapOptions = {
31               center: new google.maps.LatLng(48.8567, 2.3508),
32               zoom: 4,
33               scrollwheel: false
34             };
35             var map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions);
36                  marker = new google.maps.Marker({
37                         position: new google.maps.LatLng(48.8567, 2.3508),
38                         map: map,
39                         icon: '/static/img/marker2.png'
40                     });
41                 
42                 for (i = 0; i < data.length; i++) {  
43                         if (!data[i].longitude) continue;
44                     marker = new google.maps.Marker({
45                         position: new google.maps.LatLng(data[i].latitude, data[i].longitude),
46                         map: map
47                     });
48                         var infowindow = new google.maps.InfoWindow();
49
50                     google.maps.event.addListener(marker, 'click', (function(marker, i) {
51                         return function() {
52                           infowindow.setContent(data[i].hostname);
53                           infowindow.open(map, marker);
54                         };
55                 })(marker, i));
56             }
57           });
58 }