//////////////////////////////////////////////////////////////////////////////////////////////////////////////
//	 Ajax get response stuff
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
function getResponse_init(value,value1,itemid) {
	jQuery.get(ajaxurl+'?option=com_jomres&task=dynamichandlereq&no_html=1&Itemid=' + itemid,
		{field: "offercode", value: value, value1: value1},
		function(data)
			{
			showmy(data, itemid); 
			}
		);
	}

function getResponse_offercode (itemid) {
	hide_all();
	var value =		document.getElementById("offercode").value; 
	jQuery.get(ajaxurl+'?option=com_jomres&task=dynamichandlereq&no_html=1&Itemid=' + itemid,
		{ field: "offercode", value: value},
		function(data)
			{
			showmy(data, itemid); 
			}
		);
	}

function getResponse_offeremail (itemid) {
	hide_4();
	var value =		document.getElementById("offeremail").value; 
	jQuery.get(ajaxurl+'?option=com_jomres&task=dynamichandlereq&no_html=1&Itemid=' + itemid,
		{ field: "offeremail", value: value},
		function(data)
			{
			showmy(data, itemid); 
			}
		);
	}

function getResponse_offercheck (value, itemid) {
	document.getElementById("offercode").value = ""; 
	hide_all();
	if (document.getElementById("nooffer").checked == 1)
		{
		jQuery.get(ajaxurl+'?option=com_jomres&task=dynamichandlereq&no_html=1&Itemid=' + itemid,
			{ field: "offercode", value: value},
			function(data)
				{
				showmy(data, itemid); 
				}
			);
		}	
	}

var timer;	
var abort;
function getResponse_times (action, value, itemid) {
	if (action == 1)
		{
		clearTimeout (timer);
		abort	=	0;
		timer = setTimeout (function() { 
		jQuery.get(ajaxurl+'?option=com_jomres&task=dynamichandlereq&no_html=1&Itemid=' + itemid,
			{ field: "times", value: value},
			function(data)
				{
				if (abort == 0)
					showtimes(data); 
				}
			)}, 500);
		}
	else
		{
		abort	=	1;
		clearTimeout (timer);
		}
	}

function getResponse_offer(field,value,itemid) {
	if (field == "offeremail")
		hide_4();
	else if (field == "vendor")
		hide_4();
	else if (field == 'category')
		hide_3();
	else if (field == "session")
		hide_2();
	else if (field == "calendar")
		blockOfferForm (200);
	
	jQuery.get(ajaxurl+'?option=com_jomres&task=dynamichandlereq&no_html=1&Itemid=' + itemid,
		{ field: field, value: value},
		function(data)
			{
			if (field == "calendar")
				jQuery('div.block_ui_offerform').unblock();
						
			showmy(data, itemid); 
			}
		);
	}

function showmy(data, itemid)
	{
	var parts = data.split("~");

	if (parts[0] == 0)
		displayAlert(parts[1]);
	else if (parts[0] == 1)
		enable_offeremail();
	else if (parts[0] == 2)
		displayVendor (parts[1]);
	else if (parts[0] == 3)
		displayCategory (parts[1]);
	else if (parts[0] == 4)
		displaySession (parts[1]);
	else if (parts[0] == 5)
		displayCalendar (parts[1]);
	else if (parts[0] == 6)
		{
		blockOfferForm (200);
		jQuery.get(ajaxurl+'?option=com_jomres&task=dynamichandlereq&no_html=1&Itemid=' + itemid,
			{ field: "calendar", value: "99"},
			function(data)
				{
				showcalendar(data); 
				jQuery('div.block_ui_offerform').unblock();
				}
			);
		}	
	}

function showcalendar(data)
	{
	var parts = data.split("~");
	displayCalendar (parts[1]);
	}

function showtimes(data)
	{
	return overlib(data, CAPTION, "Available Times", WIDTH, 120, RIGHT);	
	}

function enable_offeremail()
	{
	document.getElementById("offeremail").style.visibility="visible"; 			
	document.getElementById("validateemail").style.visibility="visible"; 			
	document.getElementById("vendordiv").style.visibility="hidden"; 			
	document.getElementById("categorydiv").style.visibility="hidden"; 			
	document.getElementById("sessiondiv").style.visibility="hidden"; 			
	document.getElementById("calendardiv").style.visibility="hidden"; 			
	setTimeout('document.getElementById("offeremail").select()', 100)
	document.getElementById("offeremail").focus(); 			
	}

function hide_all()
	{
	document.getElementById("offeremail").style.visibility="hidden"; 			
	document.getElementById("validateemail").style.visibility="hidden"; 			
	document.getElementById("vendordiv").style.visibility="hidden"; 			
	document.getElementById("categorydiv").style.visibility="hidden"; 			
	document.getElementById("sessiondiv").style.visibility="hidden"; 			
	document.getElementById("calendardiv").style.visibility="hidden"; 			
	}

function hide_4()
	{
	document.getElementById("vendordiv").style.visibility="hidden"; 			
	document.getElementById("categorydiv").style.visibility="hidden"; 			
	document.getElementById("sessiondiv").style.visibility="hidden"; 			
	document.getElementById("calendardiv").style.visibility="hidden"; 			
	}

function hide_3()
	{
	document.getElementById("categorydiv").style.visibility="hidden"; 			
	document.getElementById("sessiondiv").style.visibility="hidden"; 			
	document.getElementById("calendardiv").style.visibility="hidden"; 			
	}

function hide_2()
	{
	document.getElementById("sessiondiv").style.visibility="hidden"; 			
	document.getElementById("calendardiv").style.visibility="hidden"; 			
	}

function hide_1()
	{
	document.getElementById("calendardiv").style.visibility="hidden"; 			
	}

function displayVendor (string)
	{
	document.getElementById("vendordiv").style.visibility="visible"; 			
	document.getElementById("vendordiv").innerHTML = string;
	document.getElementById("vendordiv").focus();
	}
	
function displayCategory (string)
	{
	document.getElementById("categorydiv").style.visibility="visible"; 			
	document.getElementById("categorydiv").innerHTML = string;
	document.getElementById("categorydiv").focus();
	}

function displaySession (string)
	{
	document.getElementById("sessiondiv").style.visibility="visible"; 			
	document.getElementById("sessiondiv").innerHTML = string;
	document.getElementById("sessiondiv").focus();
	}

function displayCalendar (string)
	{
	document.getElementById("calendardiv").style.visibility="visible"; 
	document.getElementById("calendardiv").innerHTML = string; 
	}

function displayAlert(error)
	{
	var msg;
	var params = error.split("^");

	switch(params[0])
		{
		case "1":
			//enter offer code
			document.getElementById('offercode').focus();
			hide_all();
		break;
		case "2":
			//offer code invalid
			document.getElementById('offercode').focus();
			hide_all();
		break;
		case "3":
			//voucher expired
			document.getElementById('offercode').focus();
			hide_all();
		break;
		case "4":
			//bookings exceeded
			document.getElementById('offercode').focus();
			hide_all();
		break;
		case "5":
			//enter email
			document.getElementById('offeremail').focus();
			hide_4();
		break;
		case "6":
			//email not valid for voucher
			document.getElementById('offeremail').focus();
			hide_4();
		break;
		case "7":
			//user bookings exceeded
			document.getElementById('offeremail').focus();
			hide_4();
		break;
		default:
			hide_all();
		}

	msg		=	params[1];
	if (msg == "")
		msg	=	"An error has occurred";
	alert (msg);
	}	

function blockOfferForm(fadetime)
	{
	//jQuery.extend(jQuery.blockUI.defaults.overlayCSS, { backgroundColor: '#fff', opacity: '0.5'  });
	jQuery.blockUI.defaults.overlayCSS.backgroundColor = '#fff';
	jQuery.blockUI.defaults.overlayCSS.opacity = '0.5';
	jQuery.blockUI.defaults.pageMessage = "Please be patient...";
	jQuery.blockUI.defaults.fadeTime = fadetime;
	jQuery.blockUI.defaults.fadeOut = 1000;
	
	message				=	"Please wait, we are checking availability....";
	
	//jQuery('div.block_ui_bookingform').block('<img src="'+livesite+'/components/com_jomres/images/31.gif" /> <h3>'+message+'</h3>',{ border:'1px solid #016191'}); 
	jQuery('div.block_ui_offerform').block({message: '<img src="' + livesite + '/components/com_jomres/images/31.gif" /><br /><b>'+message+'</b>', css:{ border:'1px solid #666666',width: '60%',padding:'3px'}}); 
	}
	
