
 Request.HTML.implement({
  
         processHTML: function(text){
             var match = text.match(/<body[^>]*>([\s\S]*?)<\/body>/i);
             text = (match) ? match[1] : text;
            	
             var container = new Element('div');
            
             return $try(function(){
                 var root = '<root>' + text + '</root>', doc;
                 if (Browser.Engine.trident){
                     doc = new ActiveXObject('Microsoft.XHTMLDOM');
                     doc.async = false;
                     doc.loadXML(root);
                 } else {
                     doc = new DOMParser().parseFromString(root, 'text/xhtml');
                 }
                 root = doc.getElementsByTagName('root')[0];
                 for (var i = 0, k = root.childNodes.length; i < k; i++){
                     var child = Element.clone(root.childNodes[i], true, true);
                     if (child) container.grab(child);
                 }
                 return container;
             }) || container.set('html', text);
         }
    
     });

function formSubmit(el,form){
/*$('submit_enquiry').addEvent('click',function(){*/
	//Form Check
	var empty_error = false;
	var email_error = false;
	var passed = true;
	el.getElements('input').each(function(item){
		if(item.get('value') == ''){							
			empty_error = true;
		}
		if(item.get('name') == 'email_ord' || item.get('name') == 'email'){
			email_error = echeck(item.get('value'));							
		}
	});
	if(empty_error){
		passed = false;
		sexy.error('Please fill in all fields');
	}
	if(!email_error && !empty_error){
		passed = false;
		sexy.error('Please fill in a correct Email address');
	}
	if(passed){
		form.submit();
	}
/*});*/
}

function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   //alert("Invalid E-mail")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   //alert("Invalid E-mail")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    //alert("Invalid E-mail")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    //alert("Invalid E-mail")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		   // alert("Invalid E-mail")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    //alert("Invalid E-mail")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		   // alert("Invalid E-mail")
		    return false
		 }

 		 return true					
	}
	

window.addEvent('domready', function() {
	
	sexy = new SexyAlertBox();
	
	$$('.handles').each(function(item,index){
		if(index == 0){
			item.addClass('current');
			
			var req = new Request.HTML({  
				method: 'get',  
				url: 'snippets/breadcrumb.logic.php?action=first&id='+item.get('rel'),  
				data: { 'do' : 'breadcrumb' },
				link : 'chain',
				onRequest: function() {
								
				},  
				update: $('prod'),  
				onComplete: function(responseTree,responseElements,responseHTML) { 
					 				
				}
			}).send();
		}
	});
	
	function toolBoxClick(){	
		$$('.toolbox').addEvent('click',function(event){
			event.stop();
			
			if(this.get('id') == 'view_info'){
				if($('current_view').hasClass('view_info')){
					//do nothing
				}else{
					var req = new Request.HTML({  
						method: 'get',  
						url: 'snippets/products/prod.bot.logic.php?action=view_info&id='+this.get('rel'),  
						data: { 'do' : '2' },
						link : 'chain',
						onRequest: function() {
							$('current_view').set('html','<div id="loader"><img src="images/ajax-loader.gif"/></div>');				
						},  
						update: $('current_view'),  
						onComplete: function(responseTree,responseElements,responseHTML) { 
							 toolBoxClick();				
						}
					}).send();
					$('current_view').set('class','view_info');
				}
			}else if(this.get('id') == 'send_enquiry'){
				if($('current_view').hasClass('send_enquiry')){
					//do nothing
				}else{
					var req = new Request.HTML({  
						method: 'get',  
						url: 'snippets/products/prod.bot.logic.php?action=send_enquiry&id='+this.get('rel'),  
						data: { 'do' : '2' },
						link : 'chain',
						onRequest: function() {
							$('current_view').set('html','<div id="loader"><img src="images/ajax-loader.gif"/></div>');			
						},  
						update: $('current_view'),  
						onComplete: function(responseTree,responseElements,responseHTML) { 
							 toolBoxClick();			
						}
					}).send();
					$('current_view').set('class','send_enquiry');
				}
			}
		});
	}
	
	function addClick(){
		$$('.handles').addEvent('click',function(event){
			event.stop();
			var cur_a = this;			
			$$('.handles').each(function(item){
				item.removeClass('current');
			});
			
			this.addClass('current');
			
			var req = new Request.HTML({  
				method: 'get',  
				url: 'snippets/products/prod.bot.logic.php?id='+this.get('rel'),  
				data: { 'do' : '1' },
				link : 'chain',
				onRequest: function() {
					$('current_view').set('html','<div id="loader"><img src="images/ajax-loader.gif"/></div>');				
				},  
				update: $('item_div'),  
				onComplete: function(responseTree,responseElements,responseHTML) { 
					$('item_div').getElements('a').each(function(item){
						if(item.hasClass('handles')){
							if(item.get('rel') == cur_a.get('rel')){
								item.addClass('current');
							}
						}
					});
					if(Browser.Engine.trident4){
						correctPNG();
					}
					addClick();
					toolBoxClick();
				}
			}).send();
			
			var req = new Request.HTML({  
				method: 'get',  
				url: 'snippets/breadcrumb.logic.php?action=first&id='+this.get('rel'),  
				data: { 'do' : 'breadcrumb' },
				link : 'chain',
				onRequest: function() {
								
				},  
				update: $('prod'),  
				onComplete: function(responseTree,responseElements,responseHTML) { 
					 				
				}
			}).send();
			
		});
	}
	
	addClick();
	
	toolBoxClick();
	
	if($('newsletter-subscribe')){
		$('newsletter-email').addEvent('click',function(){
			this.set('value','');
		});
		$('newsletter-subscribe').addEvent('click',function(){
			var passed = echeck($('newsletter-email').get('value'));
			if(!passed){
				sexy.error('Please enter a valid email address.');
			}else{
				var req = new Request.HTML({  
					method: 'get',  
					url: 'snippets/subscribe.logic.php?&email='+$('newsletter-email').get('value'),  
					data: { 'do' : 'subscribe' },
					link : 'chain',
					onRequest: function() {
						$('subscribe-box').fade(0.5);			
					},  
					//update: $('subscribe-box'),  
					onComplete: function(responseTree,responseElements,responseHTML) { 
						$('subscribe-box').fade(1);
						if(responseHTML == 'exists'){
							sexy.alert('The email already exists in our database.');							
						}else if(responseHTML == 'failed'){
							sexy.alert('There was an error adding the email to our database. Please try again.');
						}else if(responseHTML == 'success'){
							sexy.info('Your email was added to our mailing list.');
							$('subscribe-box').set('html','Email added.');
						}
					}
				}).send();
			}
		});
	}
	
	new SmoothScroll({ duration:700 }, window);
			
	new MultiBox("mb", {
				descClassName:"multiBoxDesc",
				useOverlay:true							
	});
	
	if($('country-select')){
		
		var moo_select = '';
		if(!Browser.Engine.trident){			
			$$('.n2Select').each(function(el){  
			 switch (el.get('name')) {  
			   case 'country':  
				 moo_select = new n2Select(el, {  
				   options: {  
					
					 1: {html: '<span style="color:red">Select your country</span>'}
					 
				   },  
				   // this will overwrite the selected option in select object  
				   selected: 1,  
				   parent : $('country-select'),
				   onChange: function(value) {  
					 // action when change value  
					
				   }
				   
				 });  
			   break;  
			 }  
		   });
		}
				
	}
	
	
	
});

