// Javascript Document

/*

	--------------------------------
	Javascript functionality.
	bradford-theatres.co.uk
	--------------------------------

*/

function Misc ()
{
	
	$("a.external-link").attr("target", "_blank");
	
	/*
	$("a[rel='alter-text-size']").click(
		function ()
		{
			var fontSize = "12px";
			var parentSpan = $(this).parent("span");
			if(parentSpan.length) {
				switch($(parentSpan).attr("class"))
				{
					case "larger":
						fontSize = "14.4px";
						break;
					case "largest":
						fontSize = "18px";
						break;
					default:
						fontSize = "12px";
						break;
				}
			}
			$("#content").css("font", fontSize+"/1.4em arial, helvetica, tahoma, verdana, sans-serif");
			return false;
		});
	*/
	
	$("input.clearMeFocus").focus(function(){$(this).val("");});
	
	$(".trigger-print").click(
		function ()
		{
			window.print();
			return false;
		});
	
}

function Events ()
{
	
	$("#reset-event-search").click(
		function ()
		{
		
			$("#keywordsBox").val("");
			$("#venueDropdown").val(0);
			$("#typeDropdown").val(0);
			
			$("#datepicker_from").datepicker("setDate");
			
			return false;
		
		});

	if(!$("#whatsOn").hasClass("emergency-panel")) {
		$("#whatsOn").hover(
			function ()
			{
				$("#whatsOnFloat").stop(true);
				$("#whatsOnFloat").animate({"bottom": "0"}, 750);
			},
			function ()
			{
				$("#whatsOnFloat").animate({"bottom": "-140px"}, 750);
			});
	} else {
		$("#whatsOnFloat").css("bottom", "0");
	}
	
	
	$("a.gotAQuestion, a.live-chat, a.live-chat-pop").click(
		function ()
		{
			window.open('http://chat.livechatinc.net/licence/1023765/open_chat.cgi?groups=0'+'&s=1&lang=en&dc='+escape(document.cookie+';l='+document.location+';r='+document.referer+';s='+typeof lc_session),'Czat_1023419','width=604,height=247,resizable=no,scrollbars=no,status=1');
			return false;
		});
	
	
	$("#jump-to").each(
		function ()
		{
		
			// Get event content.
			var eventContent = $("div[id^='content_']");
			
			var selectJump = $("<select>");
			
			$(eventContent).each(
				function ()
				{
				
					var option = $("<option>").val($(this).attr("id")).text($(this).children("h2").text());
					$(option).appendTo(selectJump);
				
				});
			
			$(selectJump).appendTo(this);
			$(selectJump).prepend($("<option>").val("").text("Jump to section...").attr("selected", "selected"));
			
			$(selectJump).change(
				function ()
				{
					if($(this).val().length > 0) {
						window.location.hash = "#" + $(this).val();
					} else {
						window.location.hash = "#container";
					}
				});
			
			$(this).prepend("<strong>Quick jump:</strong>&nbsp; ");
			$(this).show();
		
		});
	
	
	function swapEventImage (image, parentObj)
	{
		
		var mainImage = $(parentObj).children(".main-image");
		$(mainImage).empty();
		
		var imageObj = $("<img>").attr("src", $(image).parent().attr("href"))
		                         .hide()
								 .attr("alt", $(image).attr("alt"))
								 .show();
		
		// Change to large image.
		var largeImage = $(imageObj).attr("src");
		largeImage = largeImage.substring(0, largeImage.lastIndexOf("/"))+"/large"+largeImage.substring(largeImage.lastIndexOf("/"));
		
		// Image alt.
		var imageAlt = $(imageObj).attr("alt");
		
		$("<a>").attr("href", largeImage)
				.append(imageObj)
				.appendTo(mainImage)
		        .click(
					function ()
					{
						tb_show(imageAlt, largeImage, false);
						$(this).blur();
						return false;
					});
		
	}
	
	$(".event-images").each(
		function ()
		{
			
			// First thumbnail
			var thumbnail = $(this).children().children(".thumbnail:first").children("a");
			
			var parentObj = $(thumbnail).parent().parent().parent();
			var image = $(thumbnail).children("img");
			swapEventImage(image, parentObj);
			
		});
	
	$(".event-images .more-images .thumbnail a").click(
		function ()
		{
		
			var parentObj = $(this).parent().parent().parent();
			var image = $(this).children("img");
			swapEventImage(image, parentObj);
			return false;
		
		});
	
	//$("#reviewEvent input[name='ereview_rating']").hide();
	$("#reviewEvent label").addClass("review-star-off")
						   .click(
								function ()
								{
								
									$("#reviewEvent label").removeClass("review-star-on");
									$(this).parent().prevAll("li").children("label").addClass("review-star-on");
									$(this).addClass("review-star-on");
									
									var check_value = $(this).html();
									$("#reviewEvent input[name='ereview_rating']").val(check_value);
								
								});
						   
	$("#reviewEvent input[name='ereview_rating']").each(
		function ()
		{
		
			$("#reviewEvent label").removeClass("review-star-on");
			var checked_value = $(this).val();
			$("#ereview_rating_"+checked_value).addClass("review-star-on");
			$("#ereview_rating_"+checked_value).parent().prevAll("li").children("label").addClass("review-star-on");
		
		});
	
}

// On docready - go.
$(document).ready(
	function()
	{
		
		Misc();
		Events();
		
		
		$(function() 
			{
				$("#feedTabs").tabs();
			});
		
		$("div.ajax_content").each(
			function ()
			{
			
				var ajax_content = $(this);
				var content = $(this).children("div").attr("class");
				$(this).empty();
				$.get(
					"libs/includes/ajax.php", 
					{
						action: "getComponent", 
						component: content
					},
					function (data)
					{
						$(ajax_content).html(data);
					});
			
			});
		
		// Datepicker functionality.
		if($("#searchEvents").length > 0) {
		
		$(function()
			{
				
				$("#datepickerBox").show();
				$("#datepicker_from").datepicker(
					{
						onSelect: function (dateText, inst)
									{
										$("#fromDateSearch").val(dateText);
									},
						dateFormat: "dd/mm/yy",
						defaultDate: $.datepicker.parseDate("dd/mm/yy", $("#fromDateSearch").val())
					});
				
			});
		
		}
		
		
	}
);

function expandMenu(listName) {
	var control=document.getElementById(listName);
	var listElements=control.getElementsByTagName("li");
	
	for(var i=0; i<listElements.length; i++) {
		//EXPAND MENU
		listElements[i].onmouseover=function() {
				var uls=this.getElementsByTagName("ul");
				for(var n=0; n<uls.length; n++) {
					if(n==0) {
						uls[n].style.display="block";
					}
					
				}
			}
		//CLOSE MENU	
		listElements[i].onmouseout=function() {
			var uls=this.getElementsByTagName("ul");
				for(var n=0; n<uls.length; n++) {
					if(n==0) {
						uls[n].style.display="none";
					}
					
				}
		}
	}
}