var gallery_loop;
function slideSwitch() {
    var $active = $("div.color-select ul li a.hover");

    if ( $active.length == 0 ) $active = $('div.color-select ul li:last a');

    // use this to pull the images in the order they appear in the markup
    var $element = $active.closest('li').next().find('a');
    var $next =  $element.length ? $element
        : $("div.color-select ul li:first a");

    $("div.color-select a").removeClass('hover');
    $next.addClass('hover');
    $("div.color-select img.sample").removeClass('active');
    $("div.color-select img." + $next.attr('rel') + "").css({opacity: 1.0})
    .addClass('active');
    gallery_loop = setTimeout('slideSwitch();', 5000);
}

$(document).ready(function(){
    gallery_loop = setTimeout('slideSwitch();', 5000);
    $("div.color-select a").click(function() {
        clearTimeout(gallery_loop);
        //switch the background
        $("div.color-select a").removeClass('hover');
        $(this).addClass('hover');
        $("div.color-select img.sample").removeClass('active');
        $("div.color-select img." + $(this).attr('rel') + "").css({opacity: 1.0})
        .addClass('active');
        gallery_loop = setTimeout('slideSwitch();', 10000);
    });
    
    $('.six-up').hover(function(){
    	$(this).attr('src', $(this).attr('src').replace('-off', '-on'));
    }, function(){
    	$(this).attr('src', $(this).attr('src').replace('-on', '-off'));
    });
    
    
    var injectpopup = false;
    $('#more-details, #screen, #more-details-link').click( function(){
    	if(injectpopup === false){
    		injectpopup = true;
    		var leftoffset = ((document.body.clientWidth-820)/2);
    		//document.getElementById("popup").innerHTML = $('#more-details-popup').html();
    		$("#popup").load('/ajax/more-details-popup.html');
        	$("#popup").addClass('more-details-popup');
        	$('#screen').css('height', document.body.clientHeight);
        	$('#popup').css('left', leftoffset);
    	}
    	if($('#popup').css('display') == 'none'){
    		$('#popup').css('display', 'inline-block');
    		$('#screen').css('display', 'inline-block');
    		$('#install-video').css('display', 'none');
    		
    	} else {
    		$('#install-video').css('display', 'inline-block');
    		$('#popup').css('display', 'none');
    		$('#screen').css('display', 'none');
    	}
    });
    $('.gallery img').click( function(){
    	$('.more-details-images .active').attr('src', $(this).attr('src'));
    	$('.more-details-images .active').css('margin-top', (330-$(this).clientHeight)/2)+'px';
    });
});

$(function() {

	if ($('#product_content_tabs ul li:first').length>0)
	{
		var classes = $('#product_content_tabs ul li:first').attr('class').split(/\s+/);
		for (var i = 0; i < classes.length; ++i)
		{
			
			if (classes[i] != 'selected')
			{
				//try to load this div class!
				if ($('div#' + classes[i]).length > 0)
				{
					tabClick(classes[i]);
				}
			}
		}
	}
	
	/*$('#fitment_menu li').hover(
			function() {
				$(this).children('ul').show();
				var popup = $(this).children('ul:first');
				var diff = parseInt((popup.offset().top + popup.height())
						- ($(window).height() + $(window).scrollTop()));
				if (diff >= 0) {
					popup.css('top', -diff - 50);
				} else {
					popup.css('top', 0);
				}
			}, function() {
				var popup = $(this).children('ul:first');
				popup.css('top', 0);
				$(this).children('ul').hide();
			});
	
	$('#navigation_menu > li').hover(
			function() {
				$(this)
						.css('background',
								'url("/images/menu_hover.gif") right');
				// $(this).next('li').css('background',
				// 'url("/images/main-nav-bg.gif") right');
				$(this).children('ul').css('left', '0');

			},
			function() {
				$(this).children('ul').css('left', '-999em');
				// $(this).next('li').css('background',
				// 'url("/images/main-nav-bg.gif") right');
				$(this).css('background',
						'url("/images/main-nav-bg.gif") right');
				// $(this).children('ul').children('li').children('a').css('color',
				// '#3a3a3a');
				if ($(this).hasClass('end_menu')) {
					$(this).css('background',
							'url("/images/main-nav-bg-end.gif") right');
				}
			});

	$(
			'#navigation_menu > li > ul > li > a, #navigation_menu > li > ul > li >div ul > li > a')
			.hover(
					function() {
						$(this).css('font-weight', 'normal').css('color',
								'#fff').css('background-color', '#1a89d0');// );
					},
					function() {
						$(this).css('font-weight', 'normal').css('color',
								'#3a3a3a').css('background', 'none');
						;
					});

	$('#fitment_menu li div').hover(function() {
		// toggle parent 'hover'
		$(this).prev('a').addClass('fake_hover');
	}, function() {
		// remove parent hover
		$(this).prev('a').removeClass('fake_hover');
	});
	*/
	
	$('#fitment_menu li').hover(function(){
		$(this).children('div').show();
		var popup = $(this).children('div:first');
		var diff = parseInt((popup.offset().top + popup.height()) - ($(window).height()+$(window).scrollTop()));
		if (diff >= 0)
		{
			popup.css('top', -diff-50);
		}else{
			popup.css('top', 0);
		}
	}, function(){
		var popup = $(this).children('div:first');
		popup.css('top', 0);
		$(this).children('div').hide();
	});
	
	$('#navigation_menu > li > ul > li > a, #navigation_menu > li > ul > li >div ul > li > a').hover(
			function(){
				$(this).css('font-weight', 'normal'). css('color', '#fff').css('background-color', '#1a89d0');// );
			},
			function(){
				$(this).css('font-weight', 'normal'). css('color', '#3a3a3a').css('background', 'none');;
			});

	
	
	$('#fitment_menu li div').hover(function(){
		//toggle parent 'hover'
		$(this).prev('a').addClass('fake_hover');
	}, function(){
		//remove parent hover
		$(this).prev('a').removeClass('fake_hover');
	});
	
	$('.stage_number_fitment').each( function (i) {
		if ($(this).html() == 1)
		{
			$(this).removeClass('stage_number_incomplete').addClass('stage_number_complete');
		}
	});

	$('.application').live(
			'click',
			function() {
				if ($(this).is(':checked')) {
						if (!$(this).next('.color').attr('disabled') && $(this).val() != '') {
							if ($('.ballast').attr('disabled')) {
								$('#step4 p:first').css('color', '#000');
								$('.ballast').removeAttr('disabled');
								$('#circ5').removeClass(
										'stage_number_incomplete')
										.addClass('stage_number_complete');
							}
							flag = true;
						}
					$(this).nextAll('select').removeAttr('disabled').css(
							'border', '1px solid #ff0000');
					if (flag == false) {
						$('.ballast').attr('disabled', 'disabled');
						$('#circ5').addClass('stage_number_incomplete')
								.removeClass('stage_number_complete');
					}
				} else {
					$(this).nextAll('select').attr('disabled', 'disabled').css(
							'border', '1px solid #ccc');
				}
				var flag = false;
				$('.application').each(
						function(i, index) {
							if ($(this).is('[type="radio"]')) {
								if (!$(this).is(':checked')) {
									$(this).nextAll('select').attr('disabled',
											'disabled');
								}
							}

							if ($(this).is(':checked')) {
								flag = true;
							}
						});
				if (flag == false) {
					$('.ballast').attr('disabled', 'disabled');
					$('#circ5').addClass('stage_number_incomplete')
							.removeClass('stage_number_complete');
					$('.warranty').attr('disabled', 'disabled');
					$('#circ6').addClass('stage_number_incomplete')
							.removeClass('stage_number_complete');
				}

			});

	$('.fitment_select').live(
			'change',
			function() {
				var flag = true;
				$(this).next().next().removeClass('stage_number_incomplete').addClass('stage_number_complete');
				$('.fitment_select').each(function(i, index) {
					if ($(this).val() >= 0) {
						flag = false;
					}
				});

				if (flag == true) {
					// enable next lot of options

				} else {
					// disable em all
					$('.hid_options input, .hid_options select').attr(
							'disabled', 'disabled');
				}
			});

	$('.stock').live(
			'click',
			function() {
				var flag = false;
				$('.stock').each(function(i, index) {
					if ($(this).is(':checked')) {
						flag = true;
					}
				});
				if (flag == true) {
					$('#gogo_btn').removeAttr('disabled');
					$('#step6 p:first').css('color', '#000');
					$('#circ6').removeClass('stage_number_incomplete')
							.addClass('stage_number_complete');
				}
			});

	$('.color').live(
			'change',
			function() {
				var flag = false;
				$('.color').each(
						function(i, index) {
							if (!$(this).attr('disabled')
									&& $(this).val() != '') {
								if ($('.ballast').attr('disabled')) {
									$('#step4 p:first').css('color', '#000');
									$('.ballast').removeAttr('disabled');
									$('#circ5').removeClass(
											'stage_number_incomplete')
											.addClass('stage_number_complete');
								}
								flag = true;
							}
						});
				if (flag == false) {
					$('.ballast').attr('disabled', 'disabled');
					$('#circ5').addClass('stage_number_incomplete')
							.removeClass('stage_number_complete');
				}
			});

	$('.ballast').live(
			'change',
			function() {
				if ($(this).val().length > 0) {
					$('.warranty').removeAttr('disabled');
					$('#step5 p:first').css('color', '#000');
					$('#circ6').removeClass('stage_number_incomplete')
							.addClass('stage_number_complete');
				} else {
					$('.warranty').attr('disabled', 'disabled');
					$('#circ6').addClass('stage_number_incomplete')
							.removeClass('stage_number_complete');
				}
			});

	$('.warranty').live(
			'change',
			function() {
				if ($(this).val().length > 0) {
					$('.stock').removeAttr('disabled');
					$('#step6 p:first').css('color', '#000');
					$('#circ7').removeClass('stage_number_incomplete')
							.addClass('stage_number_complete');
				} else {
					$('.stock').attr('disabled', 'disabled');
					$('#circ7').addClass('stage_number_incomplete')
							.removeClass('stage_number_complete');
				}
			});
});

function chooseNodeCallBack(year, make, model) {
	if ($('#hid_selector').length > 0) {
		// on option select page
		var data = {};
		$.post('/cart/options/loadOptions/', data, function(data) {
			$('#hid_options').html(data.content);
		}, 'json');

		$('.stage_number_fitment, #circ4').removeClass(
				'stage_number_incomplete').addClass('stage_number_complete');
	}
	// console.log(year);
	// console.log(make);
	// console.log(model);
	// window.location = ''
}

function toggle4() {
	if ($('#step4').hasClass('disabled')) {
		// enable everything
		$('#step4').find('input').removeAttr('disabled');
	} else {
		// disable
		$('#step4').find('input').attr('disabled', 'disabled');
	}
}

function switchImg(url) {
	$('#gallery-big').children('img').attr('src', url);
}

function checkPreCart() {
	// check beams and colours
	var valid = false;
	$('.application').each(function(i, index) {
		if ($(this).is(':checked')) {
			valid = true;
		}
	});
	if (valid == false) {
		$('#step4 p:first').css('color', '#ff0000');
		return false;
	}

	var valid = false;
	$('.ballast').each(function(i, index) {
		if ($(this).is(':checked')) {
			valid = true;
		}
	});
	if (valid == false) {
		$('#step5 p:first').css('color', '#ff0000');
		return false;
	}

	var valid = false;
	$('.warranty').each(function(i, index) {
		if ($(this).is(':checked')) {
			valid = true;
		}
	});
	if (valid == false) {
		$('#step6 p:first').css('color', '#ff0000');
		return false;
	}

	var valid = false;
	$('.stock').each(function(i, index) {
		if ($(this).is(':checked')) {
			valid = true;
		}
	});
	if (valid == false) {
		$('#step7 p:first').css('color', '#ff0000');
		return false;
	}

	return true;
}
/*
function openBallastPopup() {
	$('#ballast-popup').animate({
		"right": "0px"
		},
		"slow");
}
function closeBallastPopup() {
	$('#ballast-popup').animate({
		"right": "-587px"
		},
		"slow");
}
function openKitPopup() {
	$('#kit-popup').animate({
		"right": "0px"
		},
		"slow");
}
function closeKitPopup() {
	$('#kit-popup').animate({
		"right": "-450px"
		},
		"slow");
}
*/
function openBallastPopup() {
    $('#ballast-popup').css('display', 'block');
	$('#ballast-popup').animate({
		marginRight: 0
		},
		"slow");
	if ($('#kit-popup').css('margin-right')!="-450px")
		{
			$('#kit-popup').animate({
				marginRight: -450
				},
				"slow",
				function(){
					$('#kit-popup').css('display', 'none');});
		}
}
function closeBallastPopup() {
	$('#ballast-popup').animate({
		marginRight: -587
		},
		"slow",
		function(){
			$('#ballast-popup').css('display', 'none');});
}
function openKitPopup() {
    $('#kit-popup').css('display', 'block');
	$('#kit-popup').animate({
		marginRight: 0
		},
		"slow");
	if ($('#ballast-popup').css('margin-right')!="-587px")
	{
		$('#ballast-popup').animate({
			marginRight: -587
			},
			"slow",
			function(){
				$('#ballast-popup').css('display', 'none');});
	}
}
function closeKitPopup() {
	$('#kit-popup').animate({
		marginRight: -450
		},
		"slow",
		function(){
			$('#kit-popup').css('display', 'none');});
}
function tabClick(field)
{
	$("#product_content_field").html($('#'+field).html());
	$("li.selected").removeClass('selected');
	$("."+field).addClass('selected');
	
}

//Javascript for bulb selection page

$('.bulb-color').live('change',function() {
				var flag = false;
				if (!$(this).attr('disabled') && $(this).val() != '') {
					if ($('.bulb-ballast').attr('disabled')) {
						$('#step3 p:first').css('color', '#000');
						$('.bulb-ballast').removeAttr('disabled');
						$('#circ3').removeClass('stage_number_incomplete').addClass('stage_number_complete');
					}
					flag = true;
				}
				
			  if (flag == false || $(this).val() == '') {
					$('.bulb-ballast').attr('disabled', 'disabled');
					$('#step3 p:first').css('color', '#555');
					$('#circ3').addClass('stage_number_incomplete').removeClass('stage_number_complete');
					
					$('#step4 p:first').css('color', '#555');
					$('#circ4').addClass('stage_number_incomplete').removeClass('stage_number_complete');
				}
			});

$('.bulb-ballast').live(
			'change',
			function() {
				if ($(this).val().length > 0) {
					$('.bulb-warranty').removeAttr('disabled');
					$('#step4 p:first').css('color', '#000');
					$('#circ4').removeClass('stage_number_incomplete').addClass('stage_number_complete');
				} else {
					$('.bulb-warranty').attr('disabled', 'disabled');
					$('#circ4').addClass('stage_number_incomplete').removeClass('stage_number_complete');
				}
			});

function checkBulbSelect() {
	var valid = false;
	if($('.bulb-color').val() != ""){ //check color
		valid = true;
	}else {
		$('#step2 p:first').css('color', '#ff0000');
		$('.stage_number_fitment').removeClass('stage_number_error');
		$('#circ2').addClass('stage_number_error');
		return false;
	}
	
	//checks ballast
	var valid = false;
	$('.bulb-ballast').each(function(i, index) {
		if ($(this).is(':checked')) {
			valid = true;
		}
	});
	if (valid == false) {
		$('#step3 p:first').css('color', '#ff0000');
		$('.stage_number_fitment').removeClass('stage_number_error');
		$('#circ3').addClass('stage_number_error');
		return false;
	}
	
	//check warranty
	var valid = false;
	$('.bulb-warranty').each(function(i, index) {
		if ($(this).is(':checked')) {
			valid = true;
		}
	});
	if (valid == false) {
		$('#step4 p:first').css('color', '#ff0000');
		$('.stage_number_fitment').removeClass('stage_number_error');
		$('#circ4').addClass('stage_number_error');
		return false;
	}
	return true;
}

function colorSelect(color)
{
	$("select option[selected]").removeAttr("selected");
	$("select option[value="+color+"]").attr("selected", "selected"); 
}

//SkyJax
$(document).ready(function(){
	if(typeof skyJax != 'undefined'){ //checks to see if skyJax has been instanciated
		$('#description').skyJax({
			triggers: '#hidsize|change',
			source: '@bulb_ajax',
			params: { size: $('#hidsize option:selected').liveVal() }
		}).replaceEvent('complete', function(response){
      this.loader.hide();
      this.target.html(response);
			$('#bulb-size-header').html($(response).find('h1').html().replace(/HID Bulbs/i, ""));
		});
	}
});
