//get page area
url = ''+ document.location +'';
surl = url.split("/")


//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 = y.charAt(y.indexOf('.')-1);
	}
} else {
	result = false;
	for(var i = 15; i >= 3 && result != true; i--){
		execScript('on error resume next: result = IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.'+i+'"))','VBScript');
		flashversion = i;
	}
}

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



var citrusCMS = {
		
	load : function() {
		citrusCMS.openWindow();
		citrusCMS.printWindow();
		citrusCMS.formStyle();
		citrusCMS.confirmBox();
		citrusCMS.sortFields();
		citrusCMS.flashRewrite('topnavi','/_img/layup/topimg.swf', 'area='+surl[3]+'', '0');  
		citrusCMS.flashRewrite('leftside>h2','/_img/layup/title.swf', '', '1'); 
		citrusCMS.flashRewrite('middle>h1','/_img/layup/title.swf', '', '1')
	},
	
	openWindow : function(){
		
		allNodes = $A(document.getElementsByClassName("openWindow")); 
		allNodes.each(function(node, i) {
		allNodes[i].onclick = function() {window.open(this.href); return false};
		});
	},
	
	printWindow : function(){
		
		allNodes = $A(document.getElementsByClassName("printWindow")); 
		allNodes.each(function(node, i) {
		allNodes[i].onclick = function() {window.print()};
		});

	},
	
	confirmBox : function() {
	
		allNodes = $A(document.getElementsByClassName('confirm'));
		allNodes.each(function(node, i) {
							   
			allNodes[i].onclick = function() {return confirm('Are you sure?')}; 
			
		});
	},
	
	formStyle : function(){
		
		allNodes = $A(document.getElementsByClassName("textform")); 
		allNodes.each(function(node, i) {
			
			Event.observe(allNodes[i], 'focus', 
				function(e){ 
					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 >= 5){
				
			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';
	
	},
	
	sortFields : function() {
		
		if ($('itemNo')){cartAmmount = parseInt($('itemNo').innerHTML)}
		allNodes = $A(document.getElementsByClassName("sortField")); 
		allNodes.each(function(node, i) {
		allNodes[i].onclick = function() {
			
			if (this.title =='Add to Cart') {$('itemNo').innerHTML = cartAmmount + 1}
			if (this.title =='Remove From Cart') {$('itemNo').innerHTML = cartAmmount - 1}
			citrusAjax.showFields(this.href); 
			return false
			
			};   

		});		
	},
	
	colourBars : function() {
	
		var even = false;
		var thearea = $('viewtable');		
		allNodes = $A(thearea.getElementsByTagName('tr'));
		
		allNodes.each(function(node) {
			if (!even && node.className != 'hometr') {node.className = 'colourbar';}		     
			even =  ! even;
		});
	},
	
	showImage : function(dropdown,image) {
	
		imgValue = dropdown.value.split('|');
		document.getElementById(image).src= '/_img/pics/'+imgValue[1];
		
	}
	
}


var citrusWeb = {
	
	liLinks : function() {
		
		linkNode = $A($("carlist").childNodes);
		linkNode.each(function(node, i) {
		
			if (node.nodeName=="LI") {
				
				node.className="hand";
				node.onclick=function() {
					
					if (node.childNodes[1].childNodes[0].nodeName=="A") {
						window.location = node.childNodes[1].childNodes[0].href //ie
						}else{
						window.location = node.childNodes[3].childNodes[0].href //others
					} 
				}	
			}
		
		})
	},
	
	changeImg : function() {
	
		allNodes = $A(document.getElementsByClassName("swapImg"));
		originalImg = $("mainimg").src 
		
		allNodes.each(function(node, i) {

			allNodes[i].onclick = function() {return false};
			allNodes[i].onmouseover = function() {$("mainimg").src = this.href};
			allNodes[i].onmouseout = function() {$("mainimg").src = originalImg};
		});
	},
	
	featureLinks : function() {
		
		allNodes = $A(document.getElementsByClassName("fLink"));
		
		allNodes.each(function(node, i) {
			
			allNodes[i].onclick = function() {

				
				allBoxNodes = $A(document.getElementsByClassName("fBox"));
				allBoxNodes.each(function(bnode, n) {allBoxNodes[n].removeClassName('show'); allBoxNodes[n].addClassName('hide');} );
				
				allBoxNodes = $A(document.getElementsByClassName("fLink"));
				allBoxNodes.each(function(bnode, n) {allBoxNodes[n].removeClassName('on');} );
				
				
				boxno = this.href.split('#')
				$(boxno[1]).removeClassName('hide');
				$(boxno[1]).addClassName('show');
				this.addClassName('on')

			};
				
		});
		
	}
	
}

var citrusAjax = {
	
	submitForm : function() {
		
		
		$('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 - 55) /2
		$('waiting').style.paddingTop =  waitPadd + "px"
		$('waiting').style.paddingBottom =  waitPadd -6 + "px"
		Element.show('waiting'); //show waiting div
		
		
		var myAjax = new Ajax.Request(
		window.location,
		{
			method: 'post', 
			parameters: 'ajax=1&' + Form.serialize("cmsForm"),
			onComplete: citrusAjax.showResponse
		});
			
	},

	showResponse : function(originalRequest) {
			
			if(originalRequest.responseText.substring(0,4) == 'http') {
				window.location = originalRequest.responseText; //redirect
			  } else {
				new Effect.Fade('waiting') ; //hide waiting div
				$('cmsForm').innerHTML = originalRequest.responseText; //show response
				new Effect.Shake('submitButton')
				citrusCMS.formStyle(); //load js functions again for new content
  			}

	},
	
	showFields : function(url) {
		$('waiting').innerHTML = '<img src="/_img/layup/loading.gif" />'
		
		waitPadd = (Element.getDimensions($('dataView')).height) /2
		$('waiting').style.paddingTop =  waitPadd + "px"
		$('waiting').style.paddingBottom =  waitPadd  +"px"
		$('waiting').style.marginLeft =  -1 +"px"
		Element.show('waiting');
		var myAjax = new Ajax.Request(
		window.location,
		{
			method: 'post', 
			parameters: 'ajax=1' +url.replace("?","&"),
			onComplete: citrusAjax.showFieldResponse
		});
		
		return false;
		
		
	},	
	
	showFieldResponse : function(originalRequest) {
		new Effect.Fade('waiting');
		$('dataView').innerHTML = originalRequest.responseText; //show response 
		citrusCMS.openWindow();
		citrusCMS.printWindow();
		citrusCMS.formStyle();
		citrusCMS.confirmBox();
		citrusCMS.sortFields();
		citrusCMS.colourBars();
		citrusAjax.sortOrder();
	}
	
}


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