// JavaScript Document

_locationArray = location.pathname.split('/');
_hideCartTimer = 0;

$(function(){

	var browserInfo = detect_browser();

	if(browserInfo.type == 'msie'){
		switch(browserInfo.version){
			case '6.0' :
				$('div._jsIE6').show();
			case '7.0' :
				$('div._jsIE7').show();
				break;
		}
	} else {
		if(browserInfo.type == 'firefox'){
			if(browserInfo.version < 4){
				$('div._jsFF2').show();
			}
		}
	}
	
	/*==================== PRODUCTS ACCORDIAN PRE-OPEN ====================*/
	
	if( _contains(_locationArray, 'products') ){
		for(var i=0;i<_locationArray.length;i++){
			if( _locationArray[i] == 'products' && _locationArray[i+1] ){
				var category = _locationArray[i+1];
				break;
			}
		}
		if( category ){
			$('#leftNavAnchor .wrapper').each(function(){
				var $wrapper = $(this);
				
				if( $wrapper.data('category') == category ){
					$wrapper.removeClass('closed').find('._jsSwitch').click();
				}
			});
		}
	}
	
	/*==================== NEWS ACCORDIAN PRE-OPEN ====================*/
	
	if( _contains(_locationArray, 'latestNews') ){
		for(var i=0;i<_locationArray.length;i++){
			if( _locationArray[i] == 'latestNews' && _locationArray[i+1] ){
				var category = _locationArray[i+1].replace('_', ' ');
				break;
			}
		}
		if( category ){
			$('.articleTree .wrapper').each(function(){
				var $wrapper = $(this);
				
				if( $wrapper.find('a:first:contains("'+category+'")').size() ){
					$wrapper.removeClass('closed').data('closed', false).find('ul').show();
				}
			});
			$('.articleTree .wrapper:contains("'+category+'")').data('closed', false).removeClass('closed').find('ul').show();
		}
	}
	
	/*==================== CART DROPDOWN CUSTOM INTERACTIVE ELEMENTS ====================*/
	
	$('._jsGotoSignIn').click(function( event ){
		event.preventDefault();
		var $cartWrapper = $('._jsCartDropDownWrapper');
		var $signIn = $cartWrapper.find('._jsSignIn');
		var $passwordSent = $cartWrapper.find('._jsPasswordSent');
		var $passwordForgot = $cartWrapper.find('._jsForgotPassword');
		var $cartList = $cartWrapper.find('._jsCartList');
		var $closeCartBtn = $cartWrapper.find('._jsCloseCartBtn');
		var $error = $cartWrapper.find('._jsSignInError');
		var $guestProcess = $cartWrapper.find('._jsGuestDetails');
		
		$closeCartBtn.html('Cancel');
		
		$passwordSent.add($cartList).add($passwordForgot).hide();
		$guestProcess.hide();
		$signIn.show();
		$error.hide();
		
		if( _hideCartTimer ) clearTimeout(_hideCartTimer);
	});
	
	$('._jsGuestProcess').click(function( event ){
		event.preventDefault();
		var $cartWrapper = $('._jsCartDropDownWrapper');
		var $signIn = $cartWrapper.find('._jsSignIn');
		var $guestProcess = $cartWrapper.find('._jsGuestDetails');
		var $closeCartBtn = $cartWrapper.find('._jsCloseCartBtn');
		var $error = $cartWrapper.find('._jsSignInError');
		var $cartList = $cartWrapper.find('._jsCartList');
		
		$closeCartBtn.html('Cancel');
		
		$signIn.hide();
		$guestProcess.show();
	});
	
	$('._jsGotoForgotPassword').click(function( event ){
		event.preventDefault();
		var $cartWrapper = $('._jsCartDropDownWrapper');
		var $signIn = $cartWrapper.find('._jsSignIn');
		var $passwordForgot = $cartWrapper.find('._jsForgotPassword');
		
		$signIn.hide();
		$passwordForgot.show();
	});
	
	$('._jsCartMenuBtn').click(function( event ){
		event.preventDefault();
		
		var $cartMenuBtn = $('._jsCartMenuBtn');
		var $cartWrapper = $('._jsCartWrapper');
		var $cartList = $cartWrapper.find('._jsCartList');
		
		if( !$cartList.find('._jsCartUl li').size() ) return false;
		
		if( !$cartWrapper.data('open') ){
			$cartWrapper.data('open', true);
			$cartMenuBtn.addClass('hover');
			$cartWrapper.show();
			$cartWrapper.data('show', true);
		}else{
			$cartWrapper.data('open', false);
			$cartMenuBtn.removeClass('hover');
			$cartWrapper.hide();
		}
	});
	
	$('._jsCloseCartBtn').click(function( event ){
		event.preventDefault();
		
		var $cartMenuBtn = $('._jsCartMenuBtn');
		var $cartWrapper = $('._jsCartWrapper');
		var $passwordForgot = $cartWrapper.find('._jsForgotPassword');
		var $passwordSent = $cartWrapper.find('._jsPasswordSent');
		var $signIn = $cartWrapper.find('._jsSignIn');
		var $cartList = $cartWrapper.find('._jsCartList');
		var $closeCartBtn = $(this);
		var $guestProcess = $cartWrapper.find('._jsGuestDetails');
		
		$cartWrapper.data('open', false);
		$cartMenuBtn.removeClass('hover');
		$cartWrapper.hide();
		$guestProcess.hide();
		$closeCartBtn.html('Close');
		
		$passwordForgot.add($signIn).add($passwordSent).hide();
		$cartList.show();
	});
	
	$('._jsCartWrapper').click(function(){
		$(this).data('show', true);
	});
	
	$('html').click(function(){
		var $cartWrapper = $('._jsCartWrapper');
		var $cartMenuBtn = $('._jsCartMenuBtn');
		
		if( !$cartWrapper.data('show') ){
			$cartWrapper.hide();
			$cartWrapper.data('open', false);
			$cartMenuBtn.removeClass('hover');
		}
		$cartWrapper.data('show', false);
	});
	
	/*==================== SEARCH DROPDOWN ====================*/
	
	$('._jsSearchForm').each(function(){
		var $form = $(this);
		var $suggestions = $form.find('._jsSearchSuggestsion');
		var $input = $form.find('._jsSearchInput');
		
		$suggestions.click(function(){
			$suggestions.data('show', true);
		});
		
		$input.keyup(function(){
			var $this = $(this);
			var searchVal = $this.val().toLowerCase();
			var searchPattern = new RegExp(searchVal);
			var matchCount = 0;
			
			if (searchVal == '') {
				$suggestions.hide();
				return;
			} else {
				$suggestions.show();
			}
			
			$suggestions.show().find('li:not(.title)').each(function(){
				var $row = $(this);
				//var $a = $row.find('a, span');
				var $a = $row.find('a');
				var showRow = false;
				
				$a.each(function(){
					var $thisA = $(this);
					var $thisAParent = $thisA.parent();
					var thisVal = $thisA.text().toLowerCase();
					
					if( thisVal.match(searchPattern) ){
						showRow = true;
						matchCount++;
						$thisAParent.show().find('._jsSlash').show();
						//if( searchVal == '' ) $thisA.removeClass('hilight');
					}else{
						$thisA.removeClass('hilight').parent().hide();
					}
				});
				
				if( showRow ) $row.show();
				else $row.hide();
				
				$row.find('._jsSlash').show();
				$row.find('._jsSlash:visible').last().hide();
			});
			if( !matchCount ) $suggestions.hide();
			
		}).focus(function(){
			var $this = $(this);
			var searchVal = $this.val().toLowerCase();
			
			if( searchVal.length ) $suggestions.show().data('show', true);
		});
		
		$('html').click(function(){
			if( !$suggestions.data('show') ) $suggestions.hide();
			$suggestions.data('show', false);
		});
	});
	
	/*==================== NEWSLETTER SUBSCRIBE CUSTOM INTERACTIVE ELEMENTS ====================*/
	
	$('._jsSubscribeAgain').click(function(){
		var $form = $('._jsSubscribeForm');
		var $default = $form.find('._jsDefault'),
			$success = $form.find('._jsSubmitSuccess'),
			$failed = $form.find('._jsSubmitFailed');
		
		$failed.add($success).hide();
		$default.show();
	});
});



// Analytics //
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-5641688-12']);
_gaq.push(['_trackPageview']);

(function() {
	var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
	ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
	var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

// Embed swf object for use with SWFAddress //
swfobject.embedSWF('website.swf', 'website', '100%', '100%', '9',
        'expressInstall.swf', {}, {menu: 'false'}, {id: 'website'});
