﻿
var map,marker,centre;

function e(id)
{
    return document.getElementById(id); 
}

function formatFloat(v, p)
{
    var m = Math.pow(10, p);
    return parseInt(v * m, 10) / m;
}

function initPageOnRequest()
{
    var mapDiv = e("mapDiv");
    var zoom = parseInt(e("hdnGoogleMapZoom").value);
    map = new GMap(mapDiv);    

    centre = new GLatLng(e("hdnlat").value,e("hdnlon").value);    

    map.setCenter(centre, zoom);
    
    map.addMapType(G_PHYSICAL_MAP);    
    map.addControl(new GLargeMapControl3D()); 
    map.addControl(new GMenuMapTypeControl()); 
    map.addControl(new GScaleControl());     
    
    GEvent.addListener(map, "zoomend", function()
    {
        e("zoomText").value = map.getZoom();
    });    
    
    marker = new GMarker(centre, {"draggable":true});
    map.addOverlay(marker);
    
    GEvent.addListener(marker, "dragend", function()
       {            
            centre = marker.getPoint();
            map.setCenter(centre);
            
            e("latText").value = formatFloat(centre.lat(), 6);
            e("lngText").value = formatFloat(centre.lng(), 6);
       }
    );     

    GEvent.addListener(marker, "click", function()
       {              
            marker.openInfoWindowHtml(placeTitle);
       }
    );     

    e("latText").value = formatFloat(centre.lat(), 6);
    e("lngText").value = formatFloat(centre.lng(), 6);
    e("zoomText").value = map.getZoom();    
    e("TargetLocation").innerHTML = e("hdnloc").value;
}

function initPage()
{    
    var mapDiv = e("mapDiv");    
    map = new GMap(mapDiv);  
    centre = new GLatLng(9.925565,76.267089);		
    map.setCenter(centre, 6);    
    map.addMapType(G_PHYSICAL_MAP);    
    map.addControl(new GLargeMapControl3D()); 
    map.addControl(new GMenuMapTypeControl()); 
    map.addControl(new GScaleControl());     
    
    GEvent.addListener(map, "zoomend", function()
    {
        e("zoomText").value = map.getZoom();
    });    
    
    marker = new GMarker(centre, {"draggable":true});
    map.addOverlay(marker);
    
    GEvent.addListener(marker, "dragend", function()
       {            
            centre = marker.getPoint();
            map.setCenter(centre);
            
            e("latText").value = formatFloat(centre.lat(), 6);
            e("lngText").value = formatFloat(centre.lng(), 6);
       }
    );     

    GEvent.addListener(marker, "click", function()
       {              
            marker.openInfoWindowHtml(placeTitle);
       }
    );     

    e("latText").value = formatFloat(centre.lat(), 6);
    e("lngText").value = formatFloat(centre.lng(), 6);
    e("zoomText").value = map.getZoom();    
    e("TargetLocation").innerHTML = placeTitle;
}
   
function closePage()
{
    GUnload();
}

function formatTitle(str)
{
    var title = "";
    for (var i=0; i<str.length; i++)
    {
        var c = str.substr(i,1);
        if (c != "/r" && c != "\n")
        {
            title += c;
        }
    }    
    return title;
}


