// Change these
var rotatetime = 5000; // Time for each image to be displayed in milliseconds
var fadetime = 1000; // Time for cross-fade in milliseconds

// Don't touch these!
var rotateimgs = new Array();
var pos = 0;
var go;
var inprogress = 0;

function getimages(div) {
	var container = $(div);
	for(var i = 0; i < container.childNodes.length; i++) {
		if(container.childNodes[i].nodeName == "A") {
			container.childNodes[i].id = "fadeimg_" + i;
			$('fadeimg_' + i).style.display = "none";
			rotateimgs[rotateimgs.length] = container.childNodes[i];
			if(rotateimgs.length == 1) container.childNodes[i].style.display = "block";
		}
	}
	if(rotateimgs.length > 1) go = setInterval(rotateimages, rotatetime + fadetime);
}

function rotateimages() {
	if(!rotateimgs[pos + 1]) var newpos = 0;
	else var newpos = pos + 1;
	fadeimg(rotateimgs[newpos], rotateimgs[pos]);
	pos = newpos;
}

function fadeimg(el, oldel) {
	var myFade = new Fx.Tween($(el.id), {
		duration: fadetime,
		onStart: function() { inprogress = 1; },
		onComplete: function() { 
			oldel.style.display = "none";
			inprogress = 0;
		}
	});
	myFade.set('opacity', 0);
	el.style.display = "block";
	oldel.style.zIndex = 4;
	el.style.zIndex = 5;
	myFade.start('opacity', 1);
}

function fadeto(newpos) {
	if(newpos != pos && inprogress != 1) {
		fadeimg(rotateimgs[newpos], rotateimgs[pos]);
		pos = newpos;
		clearInterval(go);
	}
	else if(newpos == pos) window.location = $('featlink' + pos).href;
}

function readmore() {
		$('readmore').setStyle('display', 'inline');
		$('readmorelink').parentNode.removeChild($('readmorelink'));
}

function browsercheck() {
	if(navigator.userAgent.indexOf("Firefox/") != -1) {
		var browserbits = navigator.userAgent.split("\/");
		var lastbit = browserbits.length - 1;
		var ver = browserbits[lastbit];
		if(ver.indexOf(".") != -1) {
			var splitup = ver.split(".");
			ver = splitup[0];
		}
		ver = ver * 1;
		if(ver < 3) {
			$$('.fl_menu').setStyle('position', 'static');
		}
	}
}

function register(sthg) { window.location = "content/register/"; }

var geocoder;
var map;
var infowindow;
var marker;
var directionsService;
var directionsDisplay;
var venuename;
var venueloc;
function loadmap() {
	directionsService = new google.maps.DirectionsService();
	directionsDisplay = new google.maps.DirectionsRenderer();
	infowindow = new google.maps.InfoWindow();
	geocoder = new google.maps.Geocoder();
    var myOptions = {
      zoom: 14,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    venuename = $('venuename').innerHTML;
    venueloc = $('venueloc').innerHTML;
    map = new google.maps.Map($('map_canvas'), myOptions);
	directionsDisplay.setMap(map);
	geocoder.geocode({ 'address': venueloc }, function(results, status) {
		if (status == google.maps.GeocoderStatus.OK) {
			map.setCenter(results[0].geometry.location);
			marker = new google.maps.Marker({
				map: map, 
				position: results[0].geometry.location
			});
			google.maps.event.addListener(marker, 'click', function() {
	            infowindow.open(map, marker);
			});
            infowindow.setContent("<b>" + venuename + "<\/b>");
		}
		else showmsg('alert<><><>Venue location could not be found on the map.');
	});
}

function getdirs() {
	var startpt = $('dirfrom').value;
	var request = {
		origin: startpt + ", UK",
		destination: venueloc,
	    travelMode: google.maps.DirectionsTravelMode.DRIVING
	};
	directionsService.route(request, function(result, status) {
	    if (status == google.maps.DirectionsStatus.OK) {
    		directionsDisplay.setDirections(result);
			directionsDisplay.setPanel($('directions'));
		}
		else showmsg('alert<><><>Your location could not be found on the map.');
	});
}

function checkdate() {
	var yr = $('searchfromyear').value;
	var mn = $('searchfrommonth').value;
	var dy = $('searchfromday').value;
	var toyr = $('searchtoyear').value;
	var tomn = $('searchtomonth').value;
	var tody = $('searchtoday').value;
	if(yr != 0 && mn != 0 && dy != 0) {
		if(toyr == 0 && tomn == 0 && tody == 0) {
		if(mn < 10) mn = '0' + mn;
		if(dy < 10) dy = '0' + dy;
			var curstamp = Date.parse(yr + '-' + mn + '-' + dy) / 1000;
			var futstamp = curstamp + 86400;
			var futdate = new Date(futstamp * 1000);
			$('searchtoyear').value = futdate.getFullYear();
			$('searchtomonth').value = futdate.getMonth() + 1;
			$('searchtoday').value = futdate.getDate();
		}
	}
}

window.addEvent('domready', function() {
	if($('readmore')) {
		$('readmore').setStyle('display', 'none');
		$('readmorelink').setStyle('display', 'inline');
	}
	if($('imgrotate')) getimages('imgrotate');
	browsercheck();
});
