﻿var map = document.getElementById('map'); ;
var geoXml;
var singleItemmView = false;
var mapDiv;
var coordinates;

function initialize() {

    if (!GBrowserIsCompatible()) {
        mapDiv.innerHTML = 'Sorry your browser inn\'t compatible with Google Maps.';
    }
    else {

        mapDiv = document.getElementById('map');
        map = new GMap2(mapDiv);
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
        map.addControl(new GOverviewMapControl());
        map.addControl(new GScaleControl());
        coordinates = new GLatLng(51.463, -.018);
          map.setCenter(coordinates, 6);
          geoXml = new GGeoXml('http://api.mediaklik.com/reports/georss?age=10', xmlLoaded);
//     geoXml = new GGeoXml('http://www.maplondon.org/imagegeorss.aspx', xmlLoaded);
          map.addOverlay(geoXml);
    }
 




}




function loadMap() {
    
    if (!GBrowserIsCompatible()) {
        mapDiv.innerHTML = 'Sorry your browser inn\'t compatible with Google Maps.';
    }
    else {
        initialize();

        coordinates = new GLatLng(51.463, -.018);

map.setCenter(coordinates, 6);

//  

        
    }
};




function loadBlankMap() {

    if (!GBrowserIsCompatible()) {
        mapDiv.innerHTML = 'Sorry your browser inn\'t compatible with Google Maps.';
    }
    else {


        mapDiv = document.getElementById('map');
        map = new GMap2(mapDiv);
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
        map.addControl(new GOverviewMapControl());
        map.addControl(new GScaleControl());
        coordinates = new GLatLng(51.463, -.018);
        map.setCenter(coordinates, 6);
        loadMap();

        //  


    }
};



function getRecord(id) {
    TransectService.GetTransectItems(id, onGotRecord);
}




function onGotRecord(result) {


    //var map = new GMap2(document.getElementById("map"));
    mapDiv = document.getElementById('map');
    var Lat = result[0].Latitude;
    var Lon = result[0].Longitude;
   coordinates = new GLatLng(Lat, Lon);
    var address = '<font size="2" face="Arial"><b>INDIA</b><br/><br/>XYZ Inc.<br/>New York City"  + result[0].Longitude + " <br/>America<br/>Ph.: 343254543</font>';
    var text = "<H3>" + result[0].FormattedAddress + "</H3><BR>" + result[0].Notes + "<BR>" + result[0].TransectItemDateTime.format("ddd dd MMM yyyy") + "<BR>";
    map = new GMap2(mapDiv);

    var image = "<IMG HEIGHT=" + "150" + "WIDTH=" + "75" + " img  src=http://www.maplondon.org/" + "ViewLCSImage.ashx?id=" + result[0].TransectItemId + " />"


    map.addControl(new GSmallMapControl());
    map.addControl(new GMapTypeControl());
    map.setCenter(coordinates, 11);
    map.enableDoubleClickZoom();
    map.enableScrollWheelZoom();


    // Our info window content
    var infoTabs = [new GInfoWindowTab("Photo", image), new GInfoWindowTab("Details", text)];


    var marker = new GMarker(coordinates);

GEvent.addListener(marker, "click", function() { marker.openInfoWindowTabsHtml(infoTabs); });

    


  map.addOverlay(marker);

   
marker.openInfoWindowTabsHtml(infoTabs);


};



function getSingleMap(id) {

   // window.open('map.aspx');
    TransectService.GetJAMTransectsById(id, onJI);

}

function getSingleDog(id) {

    // window.open('map.aspx');
    TransectService.GetDOGTransectsById(id, onGottheDogItem);

}

function getSingleScandi(id) {

    // window.open('map.aspx');
    TransectService.GetScandiById(id, onGottheScandiItems);

}


function myJAMItems() {
    showLoadingAnimation();
    //need to check the user has a la set first..
    TransectService.GetJAMTransects(onGottheJAMItems);
}


function myDogItems() {
    showLoadingAnimation();
    //need to check the user has a la set first..
    TransectService.GetDogTransects(onGottheDogItems);
}

function myScadiItems() {
    showLoadingAnimation();
    //need to check the user has a la set first..
    TransectService.GetScandiTransects(onGottheScandiItems);
}


function myItems() {
    showLoadingAnimation();
    TransectService.GetUserTransects(onGottheItems);
}

function getSingleRecord(id) {
    TransectService.GetReportById(id, onJI);
}

function getOneRecord(id) {
    showLoadingAnimation();
    TransectService.GetJAMTransectsById(id, onJI);
}

function getOneMap(id) {

    window.open('map.aspx?id='+ id);
}




function onGottheItems(results) {

    map = new GMap2(document.getElementById('map'));
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    for (var i = 0; i < results.length; i++) {
        var latitude = results[i].Latitude;
        var longitude = results[i].Longitude;
        var startLat = results[0].Latitude;
        var startLong = results[0].Longitude;
        var notes = results[i].Notes + results[i].ReportItemDateTime.format("dd MMMM yyyy, hh:mm tt") + ",";
        var coordinates = new GLatLng(latitude, longitude);
        var centreCord = new GLatLng(startLat, startLong);
        var image = "<IMG HEIGHT=" + "150" + "WIDTH=" + "75" + " img  src=http://www.maplondon.org/" + "ViewLCSImage.ashx?id=" + results[i].ReportItemId + " />"
        var marker = createMarker(coordinates, notes);
        map.setCenter(centreCord, 10);
        map.addOverlay(marker);
        //gotoDefaultViewport(map);

    }
    map.enableScrollWheelZoom();
    map.enableDoubleClickZoom();
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    function createMarker(coordinates, notes) {
        var marker = new GMarker(coordinates);
        var infoTabs = [new GInfoWindowTab("Photo", image), new GInfoWindowTab("Details", notes)];
        GEvent.addListener(marker, "click", function() { marker.openInfoWindowTabsHtml(infoTabs); });
        return marker;

    }

}



function onGottheksacItems(results) {

    map = new GMap2(document.getElementById('map'));
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    for (var i = 0; i < results.length; i++) {
        var latitude = results[i].Latitude;
        var longitude = results[i].Longitude;
        var startLat = results[0].Latitude;
        var startLong = results[0].Longitude;
        var notes = results[i].Description + results[i].ReportItemDateTime.format("dd MMMM yyyy, hh:mm tt") + ",";
        var coordinates = new GLatLng(latitude, longitude);
        var centreCord = new GLatLng(18.012039, -76.79306);
        var image = "<IMG HEIGHT=" + "150" + "WIDTH=" + "75" + " img  src=http://www.maplondon.org/" + "ViewLCSImage.ashx?id=" + results[i].ReportItemId + " />"
        var marker = createMarker(coordinates, notes);
        map.setCenter(centreCord, 12, G_NORMAL_MAP);
        map.addOverlay(marker);
        //gotoDefaultViewport(map);

    }
    map.enableScrollWheelZoom();
    map.enableDoubleClickZoom();
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    function createMarker(coordinates, notes) {
        var marker = new GMarker(coordinates);
        var infoTabs = [new GInfoWindowTab("Photo", image), new GInfoWindowTab("Details", notes)];
        GEvent.addListener(marker, "click", function () { marker.openInfoWindowTabsHtml(infoTabs); });
        return marker;

    }

}


function onGottheDogItems(results) {

    map = new GMap2(document.getElementById('map'));
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    for (var i = 0; i < results.length; i++) {
        var latitude = results[i].Latitude;
        var longitude = results[i].Longitude;
        var startLat = results[0].Latitude;
        var startLong = results[0].Longitude;
        var notes = "<B>" + results[i].Description + "</B> <BR>" + results[i].DateTimeRecorded.format("dd MMMM yyyy, hh:mm tt") + ",";
        var coordinates = new GLatLng(latitude, longitude);
        var centreCord = new GLatLng(startLat, startLong);
        var image = "<IMG HEIGHT=" + "150" + "WIDTH=" + "75" + "<img src=" + "http://api.mediaklik.com/images/" + results[i].ReportItemId + " />"

        var marker = createMarker(coordinates, notes);
        map.setCenter(coordinates, 13, G_NORMAL_MAP);
        map.addOverlay(marker);
        //gotoDefaultViewport(map);

    }
    map.enableScrollWheelZoom();
    map.enableDoubleClickZoom();
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    function createMarker(coordinates, notes) {
        var marker = new GMarker(coordinates);
        var infoTabs = [new GInfoWindowTab("Photo", image), new GInfoWindowTab("Details", notes)];
        GEvent.addListener(marker, "click", function () { marker.openInfoWindowTabsHtml(infoTabs); });
        return marker;

    }
}


function onGottheDogItem(results) {

    map = new GMap2(document.getElementById('map'));
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    for (var i = 0; i < results.length; i++) {
        var latitude = results[i].Latitude;
        var longitude = results[i].Longitude;
        var startLat = results[0].Latitude;
        var startLong = results[0].Longitude;
        var notes = "<B>" + results[i].Description + "</B> <BR>" + results[i].DateTimeRecorded.format("dd MMMM yyyy, hh:mm tt") + ",";
        var coordinates = new GLatLng(latitude, longitude);
        var centreCord = new GLatLng(startLat, startLong);
        var image = "<IMG HEIGHT=" + "150" + "WIDTH=" + "75" + "<img src=" + "http://api.mediaklik.com/images/" + results[i].ReportItemId + " />"

        var marker = createMarker(coordinates, notes);
        map.setCenter(coordinates, 18, G_HYBRID_MAP);
        map.addOverlay(marker);
        //gotoDefaultViewport(map);

    }
    map.enableScrollWheelZoom();
    map.enableDoubleClickZoom();
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    function createMarker(coordinates, notes) {
        var marker = new GMarker(coordinates);
        var infoTabs = [new GInfoWindowTab("Photo", image), new GInfoWindowTab("Details", notes)];
        GEvent.addListener(marker, "click", function () { marker.openInfoWindowTabsHtml(infoTabs); });
        return marker;

    }
}
function onJI(results) {

       map = new GMap2(document.getElementById('map'));
  

    for (var i = 0; i < results.length; i++) {
        var latitude = results[i].Latitude;
        var longitude = results[i].Longitude;
        var startLat = results[0].Latitude;
        var startLong = results[0].Longitude;
        var notes = "<B>" + results[i].Description + "</B> <BR>" + results[i].DateTimeRecorded.format("dd MMMM yyyy, hh:mm tt") + ",";
        var coordinates = new GLatLng(latitude, longitude);
      
        var image = "<IMG HEIGHT=" + "150" + "WIDTH=" + "75" + "<img src=" + "http://api.mediaklik.com/images/" + results[i].ReportItemId + " />"
        
        var marker = createMarker(coordinates, notes);
        map.setCenter(coordinates, 16, G_NORMAL_MAP);
        map.addOverlay(marker);
       

    }
    map.enableScrollWheelZoom();
    map.enableDoubleClickZoom();
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    function createMarker(coordinates, notes) {
        var marker = new GMarker(coordinates);
        var infoTabs = [new GInfoWindowTab("Photo", image), new GInfoWindowTab("Details", notes)];
        GEvent.addListener(marker, "click", function () { marker.openInfoWindowTabsHtml(infoTabs); });
        return marker;

    }

}


function onGottheJAMItems(results) {

    map = new GMap2(document.getElementById('map'));
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    for (var i = 0; i < results.length; i++) {
        var latitude = results[i].Latitude;
        var longitude = results[i].Longitude;
        var startLat = results[0].Latitude;
        var startLong = results[0].Longitude;
        var notes = "<B>" + results[i].Description + "</B> <BR>" + results[i].DateTimeRecorded.format("dd MMMM yyyy, hh:mm tt") + ",";
        var coordinates = new GLatLng(latitude, longitude);
        var centreCord = new GLatLng(18.012039, -76.79306);
        var image = "<IMG HEIGHT=" + "150" + "WIDTH=" + "75" + "<img src=" + "http://api.mediaklik.com/images/" + results[i].ReportItemId + " />"

        var marker = createMarker(coordinates, notes);
        map.setCenter(centreCord, 12, G_NORMAL_MAP);
        map.addOverlay(marker);
        //gotoDefaultViewport(map);

    }
    map.enableScrollWheelZoom();
    map.enableDoubleClickZoom();
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.addControl(new GOverviewMapControl());
    map.addControl(new GScaleControl());

    function createMarker(coordinates, notes) {
        var marker = new GMarker(coordinates);
        var infoTabs = [new GInfoWindowTab("Photo", image), new GInfoWindowTab("Details", notes)];
        GEvent.addListener(marker, "click", function () { marker.openInfoWindowTabsHtml(infoTabs); });
        return marker;

    }

}


