/**
 * Minska.cz
 * @author Jan Samek (jan.samek@gmail.com)
 */
 
function trackOutUrl(url,udf) {
	try {
		pageTracker._trackPageview('/out/'+url);
	} catch(e) {}
	$.get('/ajax/track-url', {udf:udf});
}

function trackOutGps(udf) {
	$.get('/ajax/track-gps', {udf:udf});
}

/* mapy */
function loadGoogleMaps() {
    var success = false;
    $(document).ready(function() {
        if (GBrowserIsCompatible()) {
			success = true;        	
        }
    });
    $(window).unload(function() { 
    	GUnload(); 
    });
    return success;
}

var map = null;
var marker = null;
var position = null;
var polyline = null;
var mp = null;

function showElementMap(udf, nodeId, controlId) {
	$.getJSON('/ajax/element-map-opt', {udf:udf}, 
		function(data){
			try { if ( data.ver!='h028' ) return; } catch(e) { return; }
			
			$(document.getElementById(nodeId)).css('height', data.height+'px');
			$(document.getElementById(controlId)).show();
							
			position = new GLatLng(data.lat, data.lng);		
			
			var icon = new GIcon(G_DEFAULT_ICON);
			icon.image = data.iurl;
			icon.iconSize = new GSize(data.isx, data.isy);
			icon.iconAnchor = new GPoint(data.iax, data.iay);
			icon.shadow = data.ish;
			
			marker = new GMarker(position, {icon:icon, title:data.title});
			
			map = new GMap2(document.getElementById(nodeId));
    		map.enableScrollWheelZoom();
    		map.setCenter(position, data.zoom);		
    		map.addOverlay(marker);	
    		
    		try {
    			data.polyline.points;
    			polyline = data.polyline;
    			mp = new GPolyline.fromEncoded(polyline)
				map.addOverlay(mp);
				//$(document.getElementById(nodeId)).next().html('<div style="min-height: '+polyline.weight+'px; background-color:'+polyline.color+';min-width:5em;opacity:0.5;float:left;margin:4px 4px 0 0;"></div> <div>ulice <strong>'+polyline.strname+'</strong></div>');
			} catch (e) {}			    		
		}
	);
}

function mapControlAction(action,event) {
	if (!map)
		return;
	
	switch (action) {
		case 'sw2def':
			map.setMapType(G_NORMAL_MAP);
			break;
		case 'sw2sat':
			map.setMapType(G_HYBRID_MAP);
			break;
		case 'strview':
			var anchor = false;
			var node = null;
			try {
				if (event.target.nodeName=="A") {
					anchor = true;
					node = event.target.firstChild;
				} else {
					anchor = false;
					node = event.target;
				}
			} catch (e) {
				if (event.srcElement.nodeName=="A") {
					anchor = true;
					node = event.srcElement.firstChild;				
				} else {
					anchor = false;
					node = event.srcElement;
				}
			}
			if (node) {
				if (anchor) {	
					if ($(node).attr('checked')) {
						$(node).removeAttr('checked');
						mp.hide();
					} else {
						$(node).attr('checked', 'true');
						mp.show();
					}
				} else { 
					var node = event.target;
					if ($(node).attr('checked'))
						mp.show();
					else
						mp.hide();
				}
			}
			break;
		case 'bigmap':
			Shadowbox.open({
			    player:     "html",
			    content:    "",
			    height:     600,
			    width:      800,
			    options:    {
			        onFinish: function(item) {
			            var body = document.getElementById(Shadowbox.playerId);
			            var gmap = new GMap2(body);
			            gmap.enableScrollWheelZoom();
			            gmap.setCenter(map.getCenter(), map.getZoom()+2);
						gmap.setMapType(map.getCurrentMapType());
						var gmarker = new GMarker(position, {icon:marker.getIcon(),title:marker.getTitle()});
		     			gmap.addOverlay(gmarker);
		     			gmap.addOverlay(new GPolyline.fromEncoded(polyline));    
			            gmap.setUIToDefault();
			        }
			    }
			});
			break;
		default:
			break;
	}
	
}

