// Function - Get Google Maps
function getGoogleMaps(element, nr, ityp) {

    // Default
    var hidval      = document.getElementById("hid_"+nr)
    var vals        = hidval.value.split("#");
    var street      = vals[0];
    var street2     = vals[1];
    var town        = vals[2];
    var land        = vals[3];
    var img         = vals[4];
    var img_th      = vals[5];
    var skizze      = vals[6];
    var skizze_th   = vals[7];
    var details     = vals[8];
    var gmlat       = vals[9];
    var gmlng       = vals[10];
    
    // Vals
    var loc                     = street+" "+town+" "+land;
    var dimg                    = "";
    var dtext                   = "";
    if( img_th != "" )          dimg  += '<p><b>Foto:</b><br /><a class="gml" href="'+img+'" title="'+street+' '+street2+'" target="_blank" rel="lightbox[]" ><img src="'+img_th+'" height="50" border="0" alt="img" /></a></p>';
    if( skizze_th != "" )       dimg  += '<p><b>Skizze:</b><br /><a class="gml" href="'+skizze+'" title="'+street+' '+street2+'" target="_blank" rel="lightbox[]" ><img src="'+skizze_th+'" height="50" border="0" alt="skizze" /></a></p>';
    if( street != "" )          dtext += '<p><b>Standort:</b><br />'+street+'</p>';
    if( street2 != "" )         dtext += '<p><b>Kreuzung:</b><br />'+street2+'</p>';
    if( details != "" )         dtext += '<p><b>Details:</b><br />'+details+'</p>';

    // Var - HTML
    html = '<div class="gmdetails"><div class="gmdleft">'+dimg+'</div><div class="gmdright">'+dtext+'</div></div><div class="clear"></div>';

    // Load - Class
    geocoder = new GClientGeocoder();
    
    // Set - Geocode per Function Parameter
    geocoder.getLatLng(loc, function(pointer){
    
        if( gmlat != "" && gmlng != "" ) {
            var pointer = new GLatLng(gmlat, gmlng);
        }
    
        // If - is Location Real
        if(!pointer){
            alert(loc+" wurde nicht gefunden");
        }else{
        
            // Div Popup
            /*
            var ankpos                  = document.getElementById("ank_"+nr);
            var divpopup                = document.getElementById("googlemaps");
            divpopup.style.left         = (getLeft(ankpos)-200)+"px";
            divpopup.style.top          = (getTop(ankpos)-300)+"px";
            if( divpopup && divpopup.style.display != "block" ) {
                divpopup.style.display  = "block";
                hideFlash();
            }
            */
        
            // Load - Class
            var map         = new GMap2(document.getElementById("map"));
            
            // Set - Class Settings
            //map.addControl(new GLargeMapControl());
            map.addControl(new GMapTypeControl());
            map.addControl(new GSmallZoomControl());
            
            // Set - Map Fix Point per Location Parameter
            map.setCenter(pointer, 16, G_NORMAL_MAP);
            //map.getSize();
            
            if( ityp != "" ) {
                var icon = new GIcon();
                if( ityp == 1)      icon.image              = "http://www.addmission.de/upload/gmicon_addwall.png";
                else if( ityp == 2) icon.image              = "http://www.addmission.de/upload/gmicon_addboard.png";
                icon.iconSize           = new GSize(35, 35);
                icon.iconAnchor         = new GPoint(16, 35);
    
                // Set - Marker per Geocode
                var marker = new GMarker(pointer, icon);
            } else {
                // Set - Marker per Geocode
                var marker = new GMarker(pointer);            
            }
            map.addOverlay(marker);
            //marker.openInfoWindowHtml(html);
            
        }
    });
}


function getLeft(l) {
  if (l.offsetParent) return (l.offsetLeft + getLeft(l.offsetParent));
  else return (l.offsetLeft);
}

function getTop(l) {
  if (l.offsetParent) return (l.offsetTop + getTop(l.offsetParent));
  else return (l.offsetTop);
}


// Function Google Maps - Close
function gmclose(id) {
    var element  = document.getElementById(id);  
    element.style.display = "none";
    showFlash();
} 


// Function - Get Google Maps - Positions
function getGeoCode(street, town, land) {

    // Vals
    var loc = street+" "+town+" "+land;

    // Load - Class
    geocoder = new GClientGeocoder();
    
    // Set - Geocode per Function Parameter
    geocoder.getLatLng(loc, function(pointer){
    
        // If - is Location Real
        if(!pointer){
            alert(loc+" wurde nicht gefunden");
        }else{
        
            fctOnload(pointer);
        }
    });
}

function fctOnload(point) {
        
    //Überprüfung, ob der Browser Google Maps-fähig ist
    if (GBrowserIsCompatible()) {
    
        //Ein neues Google Maps-Objekt wird erstellt
        var map = new GMap2(document.getElementById("googlemap"));
        
        //myMapControl = new GLargeMapControl();
        //map.addControl(myMapControl);
        //map.enableScrollWheelZoom();
        map.addControl(new GMapTypeControl());
        map.addControl(new GSmallZoomControl());
        
        //Die Karte wird bei diesem Punkt zentriert
        map.setCenter(point, 16, G_NORMAL_MAP);
        
        marker = new GMarker(point, {draggable:true});
        map.addOverlay(marker);
        
        GEvent.addListener(map, "click", function(overlay, latlng) {
        
            if (latlng) {
        
                //Wenn Marker schon gesetzt, dann den alten löschen
                if (typeof marker != "undefined")
            
                marker.hide();
                
                marker = new GMarker(latlng, {draggable:true});
                GEvent.addListener(marker, "click");
                map.addOverlay(marker);
                
                document.getElementById("ad_gmlat").value = latlng.lat();
                document.getElementById("ad_gmlng").value = latlng.lng();
                
                //Position beim Verschieben in die input-Felder schreiben
                GEvent.addListener(marker, "dragend", function(){
                    latlng = marker.getLatLng();
                    document.getElementById("ad_gmlat").value = latlng.lat();
                    document.getElementById("ad_gmlng").value = latlng.lng();
                });
            }
        });
    }
}

function setStdIframe() {

    var std_iframe = document.getElementById("std_infos");
    
    if( std_iframe.style.display == 'none' ) {
        std_iframe.contentWindow.location.reload();
        std_iframe.style.display = 'block';
    } else {
        std_iframe.style.display = 'none';
    }
}



/* No in use */
/*
function googleMapsLoad() {

    // If - Browser Compatible
    if (GBrowserIsCompatible()) {
    
        // Load - Class
        var map = new GMap2(document.getElementById("map"));
        
        // Set - Class Settings
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
        //map.enableScrollWheelZoom();
        
        // Set - Mappoint per Adress
        var loc     = 'Eisenbahnstraße Leipzig Deutschland';
        getGeocodePerAddress(map, loc, 14);
    }
}
*/