$(document).ready(function() {
	/*--- lightbox ---*/

	$('a[rel*=lightbox]').lightBox({
		imageLoading: '/images/lightbox-ico-loading.gif',
		imageBtnClose: '/images/lightbox-btn-close.gif',
		imageBtnPrev: '/images/lightbox-btn-prev.gif',
		imageBtnNext: '/images/lightbox-btn-next.gif',
		txtImage: 'Slika',
		txtOf: 'od'
	});
	
	
	$('#gallery-link').click(function(e) {
		$('#photo-gallery-container #gallery a:first').click();
		e.preventDefault();
	});	
	
	$("#input-search-mini, #input-search-main").autocomplete("/util/string_search.php?lng=slo", {
		width: 260,
		matchContains: true,
		//mustMatch: true,
		//minChars: 0,
		//multiple: true,
		//highlight: false,
		//multipleSeparator: ",",
		selectFirst: false
	});

	/*--- END lightbox ---*/
	
	Date.format = 'dd.mm.yyyy';
	Date.firstDayOfWeek = 1;
	Date.dayNames = ['Nedelja','Ponedeljek','Torek','Sreda','Četrtek','Petek','Sobota'];
	Date.abbrDayNames = ['Ned','Pon','Tor','Sre','Čet','Pet','Sob'];
	Date.monthNames = ['januar','februar','marec','april','maj','junij','julij','avgust','september','oktober','november','december'];
	Date.abbrMonthNames = ['jan','feb','mar','apr','maj','jun','jul','avg','sep','okt','nov','dec'];
		
	$.dpText = {
		TEXT_PREV_YEAR		:	'Prejšnje leto',
		TEXT_PREV_MONTH		:	'Prejšnji mesec',
		TEXT_NEXT_YEAR		:	'Naslednje leto',
		TEXT_NEXT_MONTH		:	'Naslednji mesec',
		TEXT_CLOSE			:	'Zapri',
		TEXT_CHOOSE_DATE	:	'Izberi datum'
	}
	
	/* --- Maps --- */
	
	var map;
	var marker;
	var aMarkers = new Array();
	
	var markerFlag = new google.maps.MarkerImage('/images/wind_flag.png',
		new google.maps.Size(32, 32),
		new google.maps.Point(0, 0),
		new google.maps.Point(15, 32));
	var markerFlagShadow = new google.maps.MarkerImage('/images/wind_flag_shadow.png',
		new google.maps.Size(34, 34),
		new google.maps.Point(0, 0),
		new google.maps.Point(15, 33));
	var flagShape = {
		coord: [15, 15, 15],
		type: 'circle'
	};
	
	var markerRoadBlock = new google.maps.MarkerImage('/images/sign-road-block.png',
		new google.maps.Size(21, 21),
		new google.maps.Point(0, 0),
		new google.maps.Point(15, 32));
	var markerRoadBlockShadow = new google.maps.MarkerImage('/images/sign-road-block-shadow.png',
		new google.maps.Size(21, 21),
		new google.maps.Point(0, 0),
		new google.maps.Point(7, 32));
	var markerRoadBlockShape = {
		coord: [10, 10, 10],
		type: 'circle'
	};
	
	var markerRoadWork = new google.maps.MarkerImage('/images/sign-road-work.png',
		new google.maps.Size(22, 20),
		new google.maps.Point(0, 0),
		new google.maps.Point(15, 32));
	var markerRoadWorkShadow = new google.maps.MarkerImage('/images/sign-road-work-shadow.png',
		new google.maps.Size(22, 20),
		new google.maps.Point(0, 0),
		new google.maps.Point(10, 32));
	var markerRoadWorkShape = {
		coord: [11, 0, 22, 20, 0, 20],
		type: 'poly'
	};
	
	
	function positionWeatherMarkers(data) {
		for (var i=0; i < data.length; i++) {
			var markerData = data[i];
			markerData.title = markerData.title.replace(' deg. ','°');
			loc = new google.maps.LatLng(markerData.latitude, markerData.longitude);
			aMarkers.push(new google.maps.Marker({ map: map, position: loc, icon: markerFlag, shadow: markerFlagShadow, shape: flagShape, title: markerData.title }));
			currMarkerIndex = aMarkers.length-1;
			google.maps.event.addListener(aMarkers[currMarkerIndex], 'click', (function(markerData) {
				return function() {
					window.location.href = '/vreme/vremenske_postaje/'+markerData.id+'/';
				}
			})(markerData));
		}
	}
	
	
	function positionRoadMarkers(data) {
		for (var i=0; i < data.length; i++) {
			var markerData = data[i];
			loc = new google.maps.LatLng(markerData.latitude, markerData.longitude);
			var markerIcon = null;
			var markerShadow = null;
			var markerShape = null;
			if (markerData.mark == 'road_block') {
				markerIcon = markerRoadBlock;
				markerShadow = markerRoadBlockShadow;
				markerShape = markerRoadBlockShape;
			} else {
				markerIcon = markerRoadWork;
				markerShadow = markerRoadWorkShadow;
				markerShape = markerRoadWorkShape;
			}
			aMarkers.push(new google.maps.Marker({ 
				map: map, 
				position: loc, 
				icon: markerIcon, 
				shadow: markerShadow, 
				shape: markerShape, 
				title: markerData.title,
				html: markerData.html
			}));
			
			var infoWindow = new google.maps.InfoWindow({ content: "", maxWidth: 300 });
			var currMarkerIndex = aMarkers.length-1;
			var currMarker = aMarkers[currMarkerIndex];
			google.maps.event.addListener(currMarker, 'click', function() {
				infoWindow.setContent(this.html);
				infoWindow.open(map, this);
			});
		}
	}
	
	if ($("#weather-map-canvas").length) {
		var geocoder = new google.maps.Geocoder();
		geocoder.geocode( { address: 'Divača, Slovenia'}, function(results, status) {
			if (status == google.maps.GeocoderStatus.OK) {
				latlng = results[0].geometry.location;
				var myOptions = {
					zoom: 10,
					center: latlng,
					mapTypeId: google.maps.MapTypeId.ROADMAP
				};
				map = new google.maps.Map(document.getElementById("weather-map-canvas"), myOptions);
				
				// retrieve markers via ajax and place them on the map
				$.post("/util/ajaxresponse.php?lng=slo", { func: "getWeatherStations" },
					function(data) {
						positionWeatherMarkers(data);
					}, "json");
			}
		});
	}
	
	
	if ($("#roads-map-canvas").length) {
		var geocoder = new google.maps.Geocoder();
		geocoder.geocode( { address: 'Divača, Slovenia'}, function(results, status) {
			if (status == google.maps.GeocoderStatus.OK) {
				latlng = results[0].geometry.location;
				var myOptions = {
					zoom: 10,
					center: latlng,
					mapTypeId: google.maps.MapTypeId.ROADMAP
				};
				map = new google.maps.Map(document.getElementById("roads-map-canvas"), myOptions);
				
				// retrieve markers via ajax and place them on the map
				$.post("/util/ajaxresponse.php", { func: "getRoadMarkers" },
					function(data) {
						positionRoadMarkers(data);
					}, "json");
			}
		});
	}
	
	
	if ($("#us-map-canvas").length) {
		var markerCPK = new google.maps.MarkerImage('/images/cpk-marker.png',
			new google.maps.Size(40, 18),
			new google.maps.Point(0, 0),
			new google.maps.Point(20, 18));
		var markerCPKShadow = new google.maps.MarkerImage('/images/cpk-marker-shadow.png',
			new google.maps.Size(45, 11),
			new google.maps.Point(0, 0),
			new google.maps.Point(18, 11));
		var markerCPKShape = {
			coord: [1, 1, 40, 1, 40, 13, 24, 13, 21, 18, 16, 13, 1, 13],
			type: 'poly'
		};
		var geocoder = new google.maps.Geocoder();
		geocoder.geocode( { address: 'Divača, Slovenia'}, function(results, status) {
			if (status == google.maps.GeocoderStatus.OK) {
				latlng = results[0].geometry.location;
				var myOptions = {
					zoom: 10,
					center: latlng,
					mapTypeId: google.maps.MapTypeId.ROADMAP
				};
				map = new google.maps.Map(document.getElementById("us-map-canvas"), myOptions);
				
				var data = new Array();
				
				data[0] = {'title':'CPK d.d.', 'html':'<p>CPK D.D.<br />Ulica 15. maja 14<br />6000  KOPER<br /><br />Telefon: 05 663 02 00<br />Faks: 05 663 02 60</p>', 'longitude':'13.73110', 'latitude':'45.53805'};
				data[1] = {'title':'Kamnolom Črni Kal', 'html':'<p>KAMNOLOM ČRNI KAL<br />Črni Kal b. š.<br />6275 ČRNI KAL<br /><br />Telefon: 05 659 27 03<br />Faks: 05 659 23 43</p>', 'longitude':'13.876991', 'latitude':'45.555557'};
				data[2] = {'title':'Operativna baza Hrpelje', 'html':'<p>OPERATIVNA BAZA HRPELJE<br />Reška cesta 47<br />6240 KOZINA<br /><br />Telefon: 05 689 03 00<br />Faks: 05 689 03 01</p>', 'longitude':'13.94809', 'latitude':'45.60510'};
				data[3] = {'title':'Cestna baza Sežana', 'html':'<p>CESTNA BAZA SEŽANA<br />Dane pri Sežani 39<br />6210 SEŽANA<br /><br />Telefon: 05 730 19 80<br />Faks: 05 730 19 81</p>', 'longitude':'13.90173', 'latitude':'45.72300'};
				data[4] = {'title':'Cestna baza Ilirska Bistrica', 'html':'<p>CESTNA BAZA ILIRSKA BISTRICA<br />Vilharjeva cesta b. š. <br />6251 ILIRSKA BISTRICA – TRNOVO<br /><br />Telefon: 05 710 13 37<br />Faks: 05 710 13 34</p>', 'longitude':'14.22998', 'latitude':'45.57536'};
				data[5] = {'title':'Zimska točka Postojna', 'html':'<p>ZIMSKA TOČKA POSTOJNA<br />Tržaška 62<br />6230 POSTOJNA<br /><br />Telefon: 05 720 47 00<br />Faks: 05 720 46 99</p>', 'longitude':'14.198124', 'latitude':'45.772018'};
				data[6] = {'title':'Asfaltna baza Senožeče', 'html':'<p>ASFALTNA BAZA SENOŽEČE<br />Senožeče 1<br />6224 SENOŽEČE<br /><br />Telefon: 05 708 31 00<br />Faks: 05 765 52 36</p>', 'longitude':'14.053821', 'latitude':'45.740888'};
				data[7] = {'title':'Kamnolom Razdrto', 'html':'<p>KAMNOLOM RAZDRTO<br />Razdrto 52<br />6225 RAZDRTO<br /><br />Telefon: 05 757 70 15<br />Faks: 05 757 71 90</p>', 'longitude':'14.05559', 'latitude':'45.75116'};
				
				for (var i=0; i < data.length; i++) {
					var markerData = data[i];
					markerData.title = markerData.title.replace(' deg. ','°');
					loc = new google.maps.LatLng(markerData.latitude, markerData.longitude);
					aMarkers.push(new google.maps.Marker({ 
						map: map, 
						position: loc, 
						icon: markerCPK, 
						shadow: markerCPKShadow, 
						shape: markerCPKShape, 
						title: markerData.title, 
						html: markerData.html
					}));
					
					var infoWindow = new google.maps.InfoWindow({ content: "", maxWidth: 300 });
					var currMarkerIndex = aMarkers.length-1;
					var currMarker = aMarkers[currMarkerIndex];
					google.maps.event.addListener(currMarker, 'click', function() {
						infoWindow.setContent(this.html);
						infoWindow.open(map, this);
					});
				}
			}
		});
	}
		
	/* --- END Maps --- */
	
	//$("body").initAnchorScroller(); // anchor scroller
});
