// ::: MOOTOOLS ::: //
var Site = {

	start : function(){
		
		Site.HomeBanner('banner1_gtr');
		Site.HomeBannerClick();
		
		Site.CarouselTabs();
		Site.LoadCarousel('ct_audi');
		
		//Site.SidebarAccordion();
		
		//Site.ProdTabs(1);
		
	},
	
	HomeBanner : function(str1){
	
		if($('banner_home')){

			$('banner_home').removeClass('banner_home_img');
			$('banner_home').addClass('loading_bar');	
			$('inner_banner_bar').addClass('hide');
			
			$('inner_banner').set('html', '');
			
			var str1_array=str1.split("_");
			var banner_text = str1_array[0];
			var banner_video = str1_array[1];
			
			var fx = new Fx.Morph($('banner_home'));
			
			fx.start({
				//'opacity': .3
			}).chain(function(){
				this.start.delay(200, this, {
					
				});
			}).chain(function() {
				
				$('banner_home').removeClass('loading_bar');	
				$('inner_banner_bar').removeClass('hide');
				
				var NewsSlide = new Fx.Slide('inner_banner_bar', {mode: 'horizontal'});
				NewsSlide.hide();
				NewsSlide.toggle();
				
				$('inner_banner_bar').addClass(banner_text);	
				
				$('inner_banner').setProperty('html','<div id="inner_banner_flash"></div>');
			
				var params = {};
				params.wmode = "transparent";
				
				swfobject.embedSWF(web_address+"assets/swf/"+banner_video+".swf", "inner_banner_flash", "970", "395", "6.0.0","expressInstall.swf", '', params);
				
				$('banner_home').addClass('banner_home_img');		
				
				
			});	

		}
		
	},
	
	HomeBannerClick : function(){
		
		if($('banner_home_link')){
			
			var banner_home_link = 	$('banner_home_link');	
			var inner_banner_bar = $('inner_banner_bar');	
			
			banner_home_link.addEvent('click', function(e) {
														
			var set_banner_home_rel = banner_home_link.getProperty('rel');	
			
				if(banner_home_link.getProperty('rel') == 'banner1_gtr'){
					
					inner_banner_bar.removeClass('banner5');
					banner_home_link.setProperty('rel','banner2_General');	
					
				}else if(banner_home_link.getProperty('rel') == 'banner2_General'){
					
					inner_banner_bar.removeClass('banner1');
					banner_home_link.setProperty('rel','banner3_dtm');	
					
				}else if(banner_home_link.getProperty('rel') == 'banner3_dtm'){
					
					inner_banner_bar.removeClass('banner2');
					banner_home_link.setProperty('rel','banner4_as4');	
					
				}else if(banner_home_link.getProperty('rel') == 'banner4_as4'){
					
					inner_banner_bar.removeClass('banner3');
					banner_home_link.setProperty('rel','banner5_golf');	
					
				}else if(banner_home_link.getProperty('rel') == 'banner5_golf'){
					
					inner_banner_bar.removeClass('banner4');
					banner_home_link.setProperty('rel','banner1_gtr');	
					
				}
				
				Site.HomeBanner(set_banner_home_rel);	
					
			});
			
		}
		
	},

	CarouselTabs : function(){
		if($('carousel_tabs')){
			$('carousel_tabs').getElements('li').each(function(i) {
				i.addEvent('click', function(event){
					event.stop();
					Site.LoadCarousel(i.get('id'));
				});
			});
		}
		
	},
	
	LoadCarouselAction : function(key){
		
		$('carousel_tabs').getElements('li').each(function(i) {
			i.addClass('carousel_tabs_off');
		})
		$(key).removeClass('carousel_tabs_off');
		
		Site.LoadCarousel(key);
		
	},
	
	LoadCarousel : function(key){
		
		if($('carousel_tabs')){
			
			$('carousel_tabs').getElements('li').each(function(i) {
				i.addClass('carousel_tabs_off');
			})
			$(key).removeClass('carousel_tabs_off');
				
			
			var req = new Request({
				url: web_address + index_page + 'home/carousel/' + key,
				method: 'get',
				evalScripts: true,
				onRequest: function() {
					$('carousel_ajax').set('html','');
					$('carousel_ajax').addClass('carousel_loading');
				},
				onSuccess: function(responseText) {
					
					$('carousel_outer').removeClass('carousel_outer');
					
					$('carousel_ajax').removeClass('carousel_loading');
					$('carousel_ajax').set('html',responseText);
					
					Site.CarouselContent();
				}
			}).send();
		}
		
	},
	
	
	CarouselContent : function(){
		
		/*For Carousal 1 */
		var c1_w = 120;							// Carousal Item Width 
		var c1_n = $('model_count').value; 		// Total Number of Carousal Items  
		var c1_pp = 5  							// Number of  Carousal Items  perpage
		var c1_marginFactor = 110;
		
		var c1_sss = c1_w * c1_pp ; //sss = slide step size 
		var c1_ns =  parseInt(((c1_w * c1_n)/c1_sss) + .5); //ns= number of slides 
		c1_sss += c1_marginFactor ; //sss = slide step size , 51 for margins
	
		var carousel1 =  new MooCarousel('carousel_items_wrapper','carousel_items','arrow_left','arrow_right',c1_ns,c1_sss, false); //c_ns= number of slides , c_sss = slide step size
		
	},
	
	SidebarAccordion : function(str1){
		
		// stop real links
		$$('li.sb_tog').each(function(item){
			
			item.addEvent('click',function(e) {
				e.stop();
			});		
			
		});
		
		// renable links within
		$$('li.sb_el_li').each(function(item){
			
			item.addEvent('click',function(e) {
				window.location = e.target.get('href');
			});		
			
		});
		
		var myAccordion = new Accordion($('sidebar'), 'li.sb_tog', 'ul.sb_el', {
			opacity: false,
			display: str1,
			onActive: function(toggler, element){
				toggler.stop;
				toggler.setStyle('font-weight', 'bold');
				toggler.setStyle('font-style', 'italic');
			},
			onBackground: function(toggler, element){
				toggler.setStyle('font-weight', 'normal');
				toggler.setStyle('font-style', 'normal');
			}
		});
		
	
	},
	
	
	ProdTabs : function(str1){
		
		if($('prod_details')){
			
			var tabs = new SimpleTabs('prod_details', {
				show: str1,				  
				selector: 'h3',
				classWrapper: 'prod_details-wrapper',
				classMenu: 'prod_details-menu',
				classContainer:'prod_details-container'
			});
			
			if($('showdownloadstab')){
				$('showdownloadstab').addEvent('click', function(e) {
																 
					var scroll = new Fx.Scroll(window, {
						wait: true,
						duration: 1000,
						offset: {'x': 0, 'y': 0},
						transition: Fx.Transitions.Quad.easeInOut
					});	
				
					scroll.toElement('prod_details');
					tabs.select(0);	
					
				});
			}
			
			
		}
		
	}
	
};

window.addEvent('domready', Site.start);
// ::: MOOTOOLS END ::: //


// ::: GENERAL JAVASCRIPT FUNCTIONS ::: //

//Pop Up
function popup(theURL,winName,features) {
	window.open(theURL,winName,features);
}

// Show Div
function showdiv(divid){
	document.getElementById(divid).style.display = (document.getElementById(divid).style.display == "none") ? "" : "none";
}
function hidediv(divid){
	document.getElementById(divid).style.display = "none";
}

// clearfields
function clearfield(thisfield){ 
	thisfield.value = "";
}

// Check Login
function CheckLoginForm()
{    
	var msg,submitFlag, f;
	msg = "";
	var flagfail = false;
	f = document.loginform;
	                 
	if(f.lem.value.indexOf("@") == -1 || f.lem.value.indexOf(".") == -1 || f.lem.value ==  "") 
	{	
    	msg = msg +  "  - A valid e-mail address\n";
		flagfail = true;
	}
	
	if(f.lpw.value ==  "")
	{
		msg = msg +  "  - Your password\n";
		flagfail = true;
	}
	
		
	msg = "Please complete the following field(s):\n\n" + msg;
	
	if (flagfail == true){
		alert(msg);
		return false;
	}
	
}

// Check Register
function CheckRegForm()
{    
	var msg,submitFlag, f;
	msg = "";
	var flagfail = false;
	f = document.new_account;
	                 
	if(f.reg_email_address.value.indexOf("@") == -1 || f.reg_email_address.value.indexOf(".") == -1 || f.reg_email_address.value ==  "") 
	{	
    	msg = msg + "	- A valid email address\n";
		flagfail = true;
	}
		
	if(f.reg_password.value ==  "")
	{
		msg= msg + "	- Your password\n";
		flagfail = true;
	}
	
	if(f.reg_password.value.toUpperCase() != f.confirm_password.value.toUpperCase())
	{
		msg= msg + "	- Passwords must match\n";
		flagfail = true;
	}
	
	
	if(f.reg_email_address.value.toUpperCase() != f.confirm_email_address.value.toUpperCase())
	{
		msg= msg + "	- Email Addresses must match\n";
		flagfail = true;
	}
		
	
	if (flagfail == true){
		msg = "Please complete the following field(s):\n\n" + msg;
		alert(msg);
		return false;
	}
	
}

function CheckSubForm()
{    
	var msg,submitFlag, f;
	msg = "";
	submitFlag = 0;
	f = document.subform;
	
	                 
	if(f.sube.value.indexOf("@") == -1 || f.sube.value.indexOf(".") == -1 || f.sube.value ==  "") 
	{	
    	msg = msg +  " Please enter a valid email address";
		submitFlag = 1;
	}
	
			
	if(submitFlag == "1")
	{
		alert(msg);
		return (false);
	}

	else 
	{
	     return (true);
	}
}

// Check Contact Us form
function Checkform()
{    
	var msg,submitFlag, f;
	msg = "";
	submitFlag = 0;
	f = document.contact;
	                 
	
	if(f.Full_Name.value ==  "")
	{
		msg= msg + "     - Your Name \n";
		submitFlag = 1;
	}

	if(f.Email_Address.value.indexOf("@") == -1 || f.Email_Address.value.indexOf(".") == -1 || f.Email_Address.value ==  "") 
	{	
		msg= msg + "     - Email Address \n";
		submitFlag = 1;
	}
	
	if(f.Subject.value ==  "")
	{
		msg= msg + "     - Subject \n";
		submitFlag = 1;
	}
	
	
	if(f.Message.value ==  "")
	{
		msg= msg + "     - Message \n";
		submitFlag = 1;
	}
	
	
	msg = "Please complete the following before continuing :\n\n" + msg;
			
	if(submitFlag == "1")
	{
		alert(msg);
		return (false);
	}

	else 
	{
	      return (true);
	}
}


// Check Review  form
function CheckRevForm()
{    
	var msg,submitFlag, f;
	msg = "";
	submitFlag = 0;
	f = document.add_customer_review;
	                 
	
	if(f.cust_name.value ==  "")
	{
		msg= msg + "     - Name \n";
		submitFlag = 1;
	}

	if(f.cust_email.value.indexOf("@") == -1 || f.cust_email.value.indexOf(".") == -1 || f.cust_email.value ==  "") 
	{	
		msg= msg + "     - Email Address \n";
		submitFlag = 1;
	}
	
	if(f.cust_review_title.value ==  "")
	{
		msg= msg + "     - Title \n";
		submitFlag = 1;
	}
	
	if(f.cust_review.value ==  "")
	{
		msg= msg + "     - Review \n";
		submitFlag = 1;
	}
	
	if(f.cust_rating.value ==  "")
	{
		msg= msg + "     - Rating \n";
		submitFlag = 1;
	}
	
	
	msg = "Please complete the following before continuing :\n\n" + msg;
			
	if(submitFlag == "1")
	{
		alert(msg);
		return (false);
	}

	else 
	{
	      return (true);
	}
}


// Check call back form
function CheckCallBack()
{    
	var msg,submitFlag, f;
	msg = "";
	submitFlag = 0;
	f = document.callback;
	                 
	
	if(f.Full_Name.value ==  "")
	{
		msg= msg + "     - Your Name \n";
		submitFlag = 1;
	}

	if(f.Email_Address.value.indexOf("@") == -1 || f.Email_Address.value.indexOf(".") == -1 || f.Email_Address.value ==  "") 
	{	
		msg= msg + "     - Email Address \n";
		submitFlag = 1;
	}
	
	if(f.Telephone_Number.value ==  "")
	{
		msg= msg + "     - Contact Number \n";
		submitFlag = 1;
	}	
	
	msg = "Please complete the following before continuing :\n\n" + msg;
			
	if(submitFlag == "1")
	{
		alert(msg);
		return (false);
	}

	else 
	{
	      return (true);
	}
}


function textCounter(field,cntfield,maxlimit) {
	
	f = document.add_customer_review;
	flength = f.cust_review.value.replace(' ',"");
	fspaces = f.cust_review.value.split(' ').length;
	
	if (flength.length > maxlimit) // if too long...trim it!
	f.custom_name.value = f.custom_name.value.substring(0,((maxlimit+fspaces)-1));
	// otherwise, update 'characters left' counter
	else
	$(cntfield).innerHTML = maxlimit - (flength.length);
	
}


function checksearch(str1)
{    
	var msg,submitFlag, f;
	msg = "";
	submitFlag = 0;
	if(str1 == 0){
		f = document.searchform;
	}else{
		f = document.searchform_left;
	}
	
	                 
	if(f.searchfld.value ==  "" || f.searchfld.value ==  "Product Name or Type") 
	{	
    	msg = msg +  "Please enter a Product Name or Type";
		submitFlag = 1;
	}
	
			
	if(submitFlag == "1")
	{
		alert(msg);
		return (false);
	}

	else 
	{
	     return (true);
	}
	
}


var win=null;
  
function open_window(mypage,myname,w,h,scroll,status,pos){
if(pos=="center"){
  LeftPosition=(screen.width)?(screen.width-w)/2:100;
  TopPosition=(screen.height)?(screen.height-h)/2:100;
}
else if((pos!="center" && pos!="random") || pos==null){
  LeftPosition=0;
  TopPosition=20;
}
settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status='+status+',menubar=no,toolbar=no,resizable=no';
win=window.open(mypage,myname,settings);
}

// ::: GENERIC JAVASCRIPT FUNCTIONS END ::: //