//detect flash
var flashversion = 0;
if (navigator.plugins && navigator.mimeTypes.length) {
	var x = navigator.plugins["Shockwave Flash"];
	if(x && x.description) {
		var y = x.description;
		flashversion = parseInt(y.substr(y.indexOf(".") - 2, 2), 10);
	}
} else {
	result = false;
	for(var i = 30; i >= 3 && result != true; i--){
		execScript('on error resume next: result = IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.'+i+'"))','VBScript');
		flashversion = i;
	}
}

if (flashversion >= 6) {
	    document.getElementsByTagName('html')[0].className = 'flashInstalled';
}

var citrusCMS = {
		
	load : function() {
		citrusCMS.openWindow();
		citrusCMS.printWindow();
		citrusCMS.formStyle();
		citrusCMS.confirmLogout();
		if($("flash")) {citrusCMS.flashRewrite('flash','/_img/layup/top.swf', '', '0')}
		if($("flash2")) {citrusCMS.flashRewrite('flash2','/_img/layup/top2.swf', '', '0')}
		if($("flash3")) {citrusCMS.flashRewrite('flash3','/_img/layup/head.swf', '', '0')}
		if($("middle")) {citrusCMS.flashRewrite('middle>h1','/_img/layup/title.swf', 'setcolor=2', '1')}
		if($("middle2")) {citrusCMS.flashRewrite('middle2>h1','/_img/layup/title2.swf', '', '1')}
		if($("news")) {citrusCMS.flashRewrite('news>h1','/_img/layup/title.swf', 'setcolor=1', '1')}
		if($("news")) {citrusCMS.flashRewrite('news>h2','/_img/layup/title.swf', 'setcolor=3', '1')}
		if($("contact")) {citrusCMS.flashRewrite('contact>h2','/_img/layup/title.swf', 'setcolor=3', '1')}
		if($("leftside")) {citrusCMS.flashRewrite('leftside>h2','/_img/layup/title.swf', 'setcolor=3', '1')}
		
	},


	formAreas : function() {
		if ($('reg_actTuesGolf')) {
			Event.observe($('reg_actTuesGolf'), 'change', 
				function(e){					
					switch ($('reg_actTuesGolf').value){
                   		case 'tuesGolfYes':
							$('golfCheckTues').style.display='block'; 
						break;
                   		case 'tuesGolfNo':
                       		 $('golfCheckTues').style.display='none';	
						break;
                        default:
                        	$('golfCheckTues').style.display='none'; 
					}
				});
			}
			
			if ($('reg_actWedGolf')) {
			Event.observe($('reg_actWedGolf'), 'change', 
				function(e){					
					switch ($('reg_actWedGolf').value){
                   		case 'wedGolfYes':
							$('golfCheckWed').style.display='block'; 
						break;
                   		case 'wedGolfNo':
                       		 $('golfCheckWed').style.display='none';	
						break;
                        default:
                        	$('golfCheckWed').style.display='none'; 
					}
				});
			}
			
			if ($('reg_actThursGolf')) {
			Event.observe($('reg_actThursGolf'), 'change', 
				function(e){					
					switch ($('reg_actThursGolf').value){
                   		case 'thursGolfYes':
							$('golfCheckThurs').style.display='block'; 
						break;
                   		case 'thursGolfNo':
                       		 $('golfCheckThurs').style.display='none';	
						break;
                        default:
                        	$('golfCheckThurs').style.display='none'; 
					}
				});
			}
		
		if ($('reg_actTuesSpa1')) {
			Event.observe($('reg_actTuesSpa1'), 'change', 
				function(e){					
					switch ($('reg_actTuesSpa1').value){
                   		case 'tuesSpa50CM':
							$('spaCheckTues1').style.display='none'; 
						break;
                   		case 'tuesSpa50CF':
                       		 $('spaCheckTues1').style.display='none';
						break;
						case 'tuesSpa45BS':
                       		 $('spaCheckTues1').style.display='block'; 	
						break;
                   		case 'tuesSpaNo':
                       		 $('spaCheckTues1').style.display='none'; 
						break;
                   		case '':
                       		 $('spaCheckTues1').style.display='none'; 					 						 
                        break; 
                        default:
                        	$('spaCheckTues1').style.display='none'; 
					}
				});
			}
		
		if ($('reg_actWedSpa1')) {
			Event.observe($('reg_actWedSpa1'), 'change', 
				function(e){					
					switch ($('reg_actWedSpa1').value){
                   		case 'wedsSpa50CM':
							$('spaCheckWed1').style.display='none';
						break;
                   		case 'wedsSpa50CF':
                       		 $('spaCheckWed1').style.display='none';
						break;
						case 'wedsSpa45BS':
                       		 $('spaCheckWed1').style.display='block'; 	
						break;
                   		case 'wedsSpaNo':
                       		 $('spaCheckWed1').style.display='none'; 	
						break;
                   		case '':
                       		 $('spaCheckWed1').style.display='none'; 						 						 
                        break; 
                        default:
                        	$('spaCheckWed1').style.display='none';
					}
				});
			}
			
		if ($('reg_actThursSpa1')) {
			Event.observe($('reg_actThursSpa1'), 'change', 
				function(e){					
					switch ($('reg_actThursSpa1').value){
                   		case 'thursSpa50CM':
							$('spaCheckThurs1').style.display='none';
						break;
                   		case 'thursSpa50CF':
                       		 $('spaCheckThurs1').style.display='none';	
						break;
						case 'thursSpa45BS':
                       		 $('spaCheckThurs1').style.display='block'; 	
						break;
                   		case 'thursSpaNo':
                       		 $('spaCheckThurs1').style.display='none'; 
						break;
                   		case '':
                       		 $('spaCheckThurs1').style.display='none';					 						 
                        break; 
                        default:
                        	$('spaCheckThurs1').style.display='none';
					}
				});
			}
			
		if ($('reg_accom')) {
			Event.observe($('reg_accom'), 'change', 
				function(e){					
					switch ($('reg_accom').value){
                   		case 'Yes':
							$('accomCheck').style.display='block'; 
						break;
                   		case 'No':
							$('accomCheck').style.display='none'; 
						break;
                   		case '':
							$('accomCheck').style.display='none'; 
                        break; 
                        default:
							$('accomCheck').style.display='none'; 
					}
				});
			}			

		if ($('reg_traveltype')) {
			Event.observe($('reg_traveltype'), 'change', 
				function(e){					
					switch ($('reg_traveltype').value){
                   		case 'Air':
							$('travelCheck1').style.display='block'; $('travelCheck2').style.display='none'; $('travelCheck3').style.display='none';
						break;
                   		case 'Rail':
							$('travelCheck1').style.display='none'; $('travelCheck2').style.display='block'; $('travelCheck3').style.display='none';
						break;
                   		case 'Own':
							$('travelCheck1').style.display='none'; $('travelCheck2').style.display='none'; $('travelCheck3').style.display='block';
						break;						
                   		case '':
							$('travelCheck1').style.display='none'; $('travelCheck2').style.display='none'; $('travelCheck3').style.display='none';
                        break; 
                        default:
							$('travelCheck1').style.display='none'; $('travelCheck2').style.display='none'; $('travelCheck3').style.display='none';
					}
				});
			}						

		if ($('reg_guest')) {
			
			Event.observe($('reg_guest'), 'change', 
				function(e){					
					switch ($('reg_guest').value){
                   		case 'Gyes':
							$('guestCheck').style.display='block'; 
						break;
                   		case 'Gno':
							$('guestCheck').style.display='none'; 
						break;
                   		case '':
							$('guestCheck').style.display='none';
                        break; 
                        default:
							$('guestCheck').style.display='none'; 
					}
				});
			}			
			
	},
	
	/*
	formAreas : function (fieldname) {
		if ($('accomCheck')){			
			if (fieldname.value=='Yes') { $('accomCheck').style.display='block'; }
			if (fieldname.value=='No') { $('accomCheck').style.display='none'; }
			if (fieldname.value=='Air') { $('travelCheck1').style.display='block'; $('travelCheck2').style.display='none';  } 
			if (fieldname.value=='Rail') { $('travelCheck1').style.display='none'; $('travelCheck2').style.display='block'; } 
			if (fieldname.value=='Own') { $('travelCheck1').style.display='none'; $('travelCheck2').style.display='none'; } 
			if (fieldname.value=='y') { $('Transport1').style.display='block';  }
			if (fieldname.value=='n') { $('Transport1').style.display='none';  }
			if (fieldname.value=='Gyes') { $('guestCheck').style.display='block'; } 
			if (fieldname.value=='Gno') { $('guestCheck').style.display='none'; } 	
		}
		
		if ($('spaCheckWed1')){				
		
			if (fieldname.value=='wSpa50') { $('spaCheckWed1').style.display='block'; $('spaCheckWed2').style.display='none'; } 	
			if (fieldname.value=='wSpa20') { $('spaCheckWed1').style.display='none'; $('spaCheckWed2').style.display='block'; } 	
			if (fieldname.value=='wSpaNo') { $('spaCheckWed1').style.display='none'; $('spaCheckWed2').style.display='none'; }
			if (fieldname.value=='tSpa50') { $('spaCheckThurs1').style.display='block'; $('spaCheckThurs2').style.display='none'; } 	
			if (fieldname.value=='tSpa20') { $('spaCheckThurs1').style.display='none'; $('spaCheckThurs2').style.display='block'; } 	
			if (fieldname.value=='tSpaNo') { $('spaCheckThurs1').style.display='none'; $('spaCheckThurs2').style.display='none'; }
		}
		
	},
	*/
	
	formCheck : function (fieldname) {
		
		citrusCMS.formAreas($(fieldname))
		
		$(fieldname).onclick = function() { citrusCMS.formAreas(this);};
		
	},

	confirmBox : function(yes) {
	
	
		allNodes = $A(document.getElementsByClassName('confirm'));
		allNodes.each(function(node, i) {
			
			if(yes==1){
			allNodes[i].onclick = function() {return confirm('Are you sure you wish to navigate away? All changes that have not been saved will be lost')}; 
			}else{
			allNodes[i].onclick = function() {}	
			}
			
		});
		
		
	},	
	
	confirmLogout : function() {
	
		allNodes = $A(document.getElementsByClassName('confirmLogout'));
		allNodes.each(function(node, i) {
							   
			allNodes[i].onclick = function() {return confirm('Are you sure?')}; 
			
		});
	},		

	openWindow : function(){
		
		allNodes = $A(document.getElementsByClassName("openWindow")); 
		allNodes.each(function(node, i) {
		allNodes[i].onclick = function() {window.open(this.href); return false};
		});
	},
	
	popupWindow : function() {
		
		if ($('jacket')) { 	
		$('jacket').onclick = function(){
			var width = '535';
			 var height = '343';
			 var left   = (screen.width  - width)/2;
			 var top    = (screen.height - height)/2;
			 newwin=window.open('/content/jacket.htm','', 'scrollbars=0, left=' + left + ', top=' + top + ', width='+width+', height='+height+'');
			 if (window.focus) {newwin.focus()}
			 return false;
			}
		}
	},
	
	printWindow : function(){
		
		allNodes = $A(document.getElementsByClassName("printWindow")); 
		allNodes.each(function(node, i) {
		allNodes[i].onclick = function() {window.print()};
		});

	},
	
	formStyle : function(){
		
		allNodes = $A(document.getElementsByClassName("textform")); 
		allNodes.each(function(node, i) {
			
			Event.observe(allNodes[i], 'focus', 
				function(e){ 
					citrusCMS.confirmBox(1);
					if(Event.element(e).nodeName != 'SELECT'){
						Event.element(e).className="textformfocus";
						if (Event.element(e).value.charAt(0) == '-') { Event.element(e).value='' }
					}
					}
				);


			Event.observe(allNodes[i], 'blur', 
				function(e){ 
					Event.element(e).className="textform";
					}
				);
		});
	},
	
	flashRewrite : function (x, movie, query, type) {
	
		if (flashversion >= 6){
				
			if (type == '1'){ //tag name
				xArea = x.split('>'); //if TagName in a id
	
				if (xArea[1]){var x = $(xArea[0]).getElementsByTagName(xArea[1]);} else {var x = document.getElementsByTagName(x);}
					
				for (var i=0;i<x.length;i++){
								
					width = Element.getDimensions($(x[i])).width;
					height = Element.getDimensions($(x[i])).height;
					title = x[i].innerHTML;
					
					if (title) {title = title.replace("&", "%26")}
					if (!query){q= "title="+ title;} else {q= query +"&title="+ title;}	
					
					citrusCMS.getFlash(x[i], movie, q, width, height)
					q = '';
				}
				
			} else { //id
					
				citrusCMS.getFlash($(x), movie, query, Element.getDimensions($(x)).width, Element.getDimensions($(x)).height)

			}
			
		}	
	},

	getFlash : function(what, movie, query, width, height) {

		new_txt = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="'+width+'" height="'+height+'">\n';
		new_txt += '<param name="movie" value="'+movie+'">\n';
		new_txt += '<param name="quality" value="high" />\n';
		new_txt += '<param name="menu" value="false">\n';
		new_txt += '<param name="wmode" value="transparent">\n';
		new_txt += '<param name="flashvars" value="'+query+'">\n';
		new_txt += '<param name="scale" value="noscale" />\n';
		new_txt += '<param name="salign" value="lt" />\n';
		new_txt += '<embed src="'+movie+'" flashvars="'+query+'" width="'+width+'" height="'+height+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" menu="false" scale="noscale" salign="lt" wmode="transparent"></embed>\n';
		new_txt += '</object>';
		what.innerHTML = new_txt;
		what.style.visibility= 'visible';
	
	}
	
}

var citrusAjax = {
	
	makeRequest : function(url,getID) { 
	
		var myAjax = new Ajax.Request(
		url,
		{
			method: 'get', 
			onComplete: function(originalRequest){$(getID).innerHTML = originalRequest.responseText;}
		});
	
	},
	
	submitForm : function(pageUrl) {
		
		
		$('waiting').innerHTML = '<img src="/_img/layup/loading.gif" />'
		$('submitButton').type == 'button'; //if js then remove the sumit function of the button
		$('submitButton').disabled = 'disabled'; //when submited disable button
		
		waitPadd = (Element.getDimensions($('cmsForm')).height - 50) /2
		$('waiting').style.paddingTop =  waitPadd + "px"
		$('waiting').style.paddingBottom =  waitPadd + "px"
		Element.show('waiting'); //show waiting div
		
		
		if(pageUrl) {pageLocation = pageUrl} else {pageLocation = window.location}
		
		var myAjax = new Ajax.Request(
		pageLocation,
		{
			method: 'post', 
			parameters: 'ajax=1&' + Form.serialize("cmsForm"),
			onComplete: citrusAjax.showResponse
		});
				
	},

	showResponse : function(originalRequest) {
		
			ajaxhtml = originalRequest.responseText;
			
			if(ajaxhtml.substring(0,4) == 'step') {
				$(ajaxhtml.substring(0,5)).addClassName('completed');
				ajaxhtml =ajaxhtml.replace(ajaxhtml.substring(0,5),'') //show tick
				citrusCMS.confirmBox(0); //turn of confirm
			  }
			
			if(ajaxhtml.substring(0,4) == 'http') {
				window.location = ajaxhtml; //redirect
			  } else {
				new Effect.Fade('waiting') ; //hide waiting div
				$('cmsForm').innerHTML = ajaxhtml; //show response
				new Effect.Shake('submitButton')
				
				citrusCMS.formStyle(); //load js functions again for new content
				citrusCMS.formAreas();
  			}
	}
	
}

Event.observe(window, 'load', citrusCMS.load, false);