﻿var C2SAT = {};

C2SAT.maps = {
    instance: null,
    apiKey: '',
    mapsUrl: "http://maps.google.com/maps",

    init: function() {
        this.apiKey = jQuery("input[class='gmapsApiKey']").val();
        instance = this;
        this.loadApi();
    },

    loadApi: function() {
        jQuery.ajax({
            type: "get",
            dataType: "script",
            url: instance.mapsUrl,
            data: {
                file: "api",
                v: 2,
                key: instance.apiKey,
                async: 2,
                callback: 'C2SAT.maps.loadMap'
            },
            error: function() { alert('Could not load google Maps API'); }
        });
    },

    loadMap: function() {
        if (typeof ItemEditing == 'undefined') {
            var fm = {};
            fm.maps = new Array();
            $('div[class*=map]').each(function() {

                $(this).addClass('mapdimensions');
                var mapId = $(this).attr('id');

                var value = $(this).html();
                value = $.trim(value);
                if (value != '') {

                    var point = value.split(',');

                    var lat = parseFloat(point[0]);
                    var lon = parseFloat(point[1]);
                    var zoom = parseFloat(point[2]);

                    fm.maps[fm.maps.length] = new GMap2(document.getElementById(mapId));
                    var m = fm.maps[fm.maps.length - 1];

                    var p = new GLatLng(lat, lon);
                    m.setCenter(p, zoom);

                    m.setUIToDefault();

                    var marker = new GMarker(p);
                    m.addOverlay(marker);
                }
            });
        }
    }

};

jQuery(document).ready(function() {
    C2SAT.maps.init();
});
