﻿window.onunload = function() { window.onunload; GUnload(); }

function initialize() {
    if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map_canvas"));
        map.setCenter(new GLatLng(37.4419, -122.1419), 13);
        map.setUIToDefault();
    }
}


function initMap(lat, lon, zoom, photo_src, hotel_link, name, address, text_more, desc, tab1_name, tab2_name) {
    if (GBrowserIsCompatible()) {
        if (lat != '' && lon != '' && lat != null && lon != null) {
            var map = new GMap2(document.getElementById("map_canvas"));
            map.setCenter(new GLatLng(lat, lon), zoom);
            map.setUIToDefault();
            map.addOverlay(CreateMarker(lat, lon, photo_src, hotel_link, name, address, text_more, desc, tab1_name, tab2_name));
        }
    }
}



function CreateMarker(lat, lon, photo_src, hotel_link, name, address, text_more, desc, tab1_name, tab2_name) {
    var marker = new GMarker(new GLatLng(lat, lon));
    var InfoText = CreateInfoText(photo_src, hotel_link, name, address, text_more);
    var DescText = CreateDescText(desc, hotel_link, text_more);
    var infoTabs = [new GInfoWindowTab(tab1_name, InfoText), new GInfoWindowTab(tab2_name, DescText)];
    marker.openInfoWindowTabsHtml(infoTabs);
    GEvent.addListener(marker, "click", function() {
        marker.openInfoWindowTabsHtml(infoTabs);
    });
    return marker;
}

function CreateInfoText(photo_src, hotel_link, name, address, text_more) {
    var infoText = "<div class='map_info'>"
    infoText += photo_src;
    infoText += "<h3><a href='";
    infoText += hotel_link;
    infoText += "'>";
    infoText += name;
    infoText +="</a></h3><p><strong>";
    infoText += address;
    infoText +="</strong></p><a href='";
    infoText += hotel_link;
    infoText += "'>";
    infoText += text_more;
    infoText += "</a></div>";
    return infoText;
}

function CreateDescText(desc,hotel_link,text_more) {
    var descText = "<div class='map_info'><p>";
    descText += desc;
    descText += "</p><a href='";
    descText += hotel_link;
    descText += "'>";
    descText += text_more;
    descText += "</a></div>";
    return descText;
}

function initMap2(lat, lon, zoom) {
    if (GBrowserIsCompatible()) {
        if (lat != '' && lon != '' && lat != null && lon != null) {
            
            var map = new GMap2(document.getElementById("map_canvas"));
            map.setCenter(new GLatLng(lat, lon), zoom);
            map.setUIToDefault();
            map.addOverlay(CreateMarker2(map, lat, lon));
        }
        else {
            var map = new GMap2(document.getElementById("map_canvas"));
            map.setCenter(new GLatLng(38, 25), 6);
            map.setUIToDefault();
            map.addOverlay(CreateMarker2(map, lat, lon));
        }
    }
}

function CreateMarker2(map, lat, lon) {
    var marker = new GMarker(new GLatLng(lat, lon),{draggable:true});
    //var InfoText = CreateInfoText(photo_src, hotel_link, name, address, text_more);
    //var DescText = CreateDescText(desc, hotel_link, text_more);
    //var infoTabs = [new GInfoWindowTab(tab1_name, InfoText), new GInfoWindowTab(tab2_name, DescText)];
   
    GEvent.addListener(map, 'click', function(overlay, point) {
        if (overlay) {
            //map.removeOverlay(overlay);
        }
        else if (point) {
            marker.setPoint(point);
            var matchll = /\(([-.\d]*), ([-.\d]*)/.exec(point);
            if (matchll) {
                var lat = parseFloat(matchll[1]);
                var lon = parseFloat(matchll[2]);
                lat = lat.toFixed(8);
                lon = lon.toFixed(8);
                $('#langt').val(lat);
                $('#longt').val(lon);
            }
        }
    });
    GEvent.addListener(marker, "drag", function() {


        lat = marker.getPoint().lat();
        lon = marker.getPoint().lng();
        $('#langt').val(lat);
        $('#longt').val(lon);
    });
    return marker;
}
