// inicializacia api map seznamu
if (typeof (Loader) === 'object' && typeof (Loader.load) === 'function') {
	Loader.load();
}

$(function() {
	
	var map_holder = $('#map'),
		lng = 14.4346619,
		lat = 50.0870800,
		ba_lat = 48.143396,
		ba_lng = 17.114084,
		s_mapy_zoom_level = 15,
		s_mapy_a = $('#seznam-mapy'),
		g_mapy_a = $('#google-maps'),
		contact_info = $('#contact-info'),
		s_mapa_url = 'http://www.mapy.cz/#d=firm_2665700_1&t=s&x=14.4346619&y=50.0870800&z=15&c=23-14-30-28-29-27',
		g_mapa_url = 'http://maps.google.cz/maps/place?georestrict=input_srcid:c3b868b61aa56db7';
		
	if ((map_holder.length > 0)
		&& (typeof (SMap) !== 'undefined' && typeof (google) !== 'undefined')) {
		
		// aktivacia seznam mapy
		function activate_s_mapy() {
			var center = SMap.Coords.fromWGS84(lng, lat),
				m = new SMap(JAK.gel("map"), center, s_mapy_zoom_level),
				layer = new SMap.Layer.Marker(),
				card = new SMap.Card(),
				marker = new SMap.Marker(center, "smartmedia", {});
				
			m.addDefaultLayer(SMap.DEF_BASE).enable();
			m.addDefaultControls();
			m.addLayer(layer);
			layer.enable();
			
			card.getBody().innerHTML = (contact_info.length > 0) ? contact_info.html() : '';
			layer.addMarker(marker);
			
			try {
				var tmp1 = $(marker._dom.container),
					tmp2 = $(tmp1[0][3]);

				tmp2.click(function () {
					window.location = s_mapa_url;
				});

				tmp2.css({'cursor' : 'pointer'});
			} catch (e) {
				// silent exception handling
				marker.decorate(SMap.Marker.Feature.Card, card);
			}
			
			s_mapy_a.hide();
			g_mapy_a.show();
			
			map_holder.parent().removeClass('google');
			map_holder.parent().addClass('seznam');
		}
				
		// aktivacia google mapy
		function activate_g_mapy() {
			var mapLatLng = new google.maps.LatLng(lat, lng),
				mapOptions = {
					zoom: 16,
					center: mapLatLng,
					mapTypeControl: true,
					mapTypeControlOptions: {
						style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
					},
					zoomControl: true,
					zoomControlOptions: {
						style: google.maps.ZoomControlStyle.SMALL
					},
					mapTypeId: google.maps.MapTypeId.ROADMAP
				},
				map = null,
				infowindow = null,
				marker = null;
			
			map_holder.html('');
			map = new google.maps.Map(map_holder.get(0), mapOptions);
        
			// info window initialization
			infowindow = new google.maps.InfoWindow({
				content: (contact_info.length > 0) ? contact_info.html() : ''
			});

			// marker initialization
			marker = new google.maps.Marker({
				position: mapLatLng,
				map: map
			});
        
			// click + marker + infowindow
			google.maps.event.addListener(marker, 'click', function() {
//				infowindow.open(map,marker);
				window.location = g_mapa_url;
			});
		
			g_mapy_a.hide();
			s_mapy_a.show();
			
			map_holder.parent().toggleClass('google');
			map_holder.parent().toggleClass('seznam');
		}
		
		/* prepac */
		if (map_holder.hasClass('sk')) {
			lat = ba_lat;
			lng = ba_lng;			
			g_mapa_url = 'http://maps.google.sk/maps/place?georestrict=input_srcid:cce0a7830535f384';
			activate_g_mapy();
    } else if (map_holder.hasClass('en')) {
			lat = lat;
			lng = lng;			
			g_mapa_url = 'http://maps.google.cz/maps/place?georestrict=input_srcid:c3b868b61aa56db7';
			activate_g_mapy();
		} else {
			s_mapy_a.bind('click', function () {
				activate_s_mapy();
				return false;
			});

			g_mapy_a.bind('click', function () {
				activate_g_mapy();
				return false;			
			});

			activate_s_mapy();
		}
	}
});

