// JavaScript Document
jQuery(document).ready(function(){

/* jQUERY goes here  */

	// IE7 z-index fix for Ajax cart on detail page
	if (jQuery('#details_right').length > 0) {
		if (jQuery.browser.msie && jQuery.browser.version.substr(0,1)>6) {
			jQuery(function() {
				var zIndexNumber = 1000;
				jQuery('div').each(function() {
					jQuery(this).css('zIndex', zIndexNumber);
					zIndexNumber -= 10;
				});
			});
		}
	}
	
	if (jQuery('#home_middle').length > 0) {
		if (jQuery.browser.msie && jQuery.browser.version.substr(0,1)>5) {
			jQuery(function() {
				var zIndexNumber = 1000;
				jQuery('div.zfix').each(function() {
					jQuery(this).css('zIndex', zIndexNumber);
					zIndexNumber -= 10;
				});
			});
		}
	}


	jQuery('#close_cart').click(function(e){
		e.preventDefault();
		jQuery('#ajax_cart_container').hide();
		jQuery('#zoom_info').show();
		jQuery('#btn_shopping_bag').removeClass('active');
	});

	jQuery('#btn_shopping_bag').click(function(e){
		e.preventDefault();
		jQuery('#ajax_cart_container').show();
		if (jQuery.browser.msie && jQuery.browser.version.substr(0,1)<7) {
			jQuery('#zoom_info').hide();
		}
		jQuery('#btn_shopping_bag').addClass('active');
		var timeout = 'bag_link';
	});

	function open_cat (e){
		e.preventDefault();
		var show = true;
		if (!jQuery(this).parent().hasClass('active'))
			show = false;
		try{
		jQuery('#side_nav a.cat').each(close_cat);
		}catch(e){};
		if (!show)
		{
			jQuery(this).parent().addClass('active');
			jQuery(this).siblings('ul.filter').slideUp('slow');
			jQuery(this).siblings('ul.all').slideDown('slow');
		}
	};
        function close_cat (e){
		try{
		e.preventDefault();
		}catch(e){};
		jQuery(this).parent().removeClass('active');
		jQuery(this).siblings('ul.filter').slideDown('slow');
		jQuery(this).siblings('ul.all').slideUp('slow');
	}
	jQuery('#side_nav a.cat').click(open_cat);

	if (window.location.hash.match(/#change_/)) {
		var filterToOpen = window.location.hash.replace(/#change_/,'');
		jQuery('#side_nav a.cat.filter_'+filterToOpen).trigger('click');
	}


	jQuery('#tabs a').click(function(e){
		e.preventDefault();
		jQuery('#tabs a.active').removeClass('active');
		jQuery(this).addClass('active');
		var tab_id = jQuery(this).get(0).id;
		jQuery('.tab_content').hide();
		jQuery('#content_' +tab_id).show();
	});

	if (jQuery('#carousel').length > 0){
		jQuery('#carousel').jcarousel({
			scroll: 1
		});
		}


	// vertical brand scroll
	if(jQuery("#brand_list").length > 0){
			var startAt = 1;
			var brandPos = parseInt(jQuery.url.param("brand_pos"));
			if (brandPos > 0){
				startAt = brandPos;
			}

			jQuery('#brand_list').jcarousel({
        		vertical: true,
        		scroll: 5,
        		start: startAt
    		});

	}

	jQuery('#brand_list .ranges').click(function(e){
		e.preventDefault();
		jQuery(this).parent().addClass('active');

	});



	//product detail - magnify effect
	if(jQuery("#product_image").length > 0){
	jQuery("#product_image").jqueryzoom({
				xzoom: 372,
				yzoom: 439,
				offset: 0,
				position: "right",
 				preload:1,
				lens:1
			});
	}

	jQuery('#zoom_info').click(function(){
			jQuery('#main_img').trigger("click");
	});

	jQuery('#before_after a').click(function(e){
		e.preventDefault();
		jQuery('#before_after_overlay').show();
		jQuery('#details_right #quantity').hide();
	});

	jQuery('#btn_close_before_after, #before_after_overlay').click(function(e){
		e.preventDefault();
		jQuery('#before_after_overlay').hide();
		jQuery('#details_right #quantity').show();
	});


	jQuery('.thumb_switcher').click(function(e){
			e.preventDefault();
			var new_img = jQuery(this).children('img').attr('src');
			var old_img = jQuery('#main_img').children('img').attr('src');
			jQuery(this).children('img').attr('src', old_img);
			jQuery('#main_img').children('img').attr('src', new_img);


			var new_img_rel = jQuery(this).attr('rel');
			var old_img_rel = jQuery('#main_img').attr('href');
			//console.log(old_img_id);
			jQuery(this).attr('rel', old_img_rel);
			jQuery('#main_img').attr('href', new_img_rel);
			jQuery('.bigimg').attr('src', new_img_rel);
			//jQuery('.btn_art_zoom').attr('href', new_img_rel).attr('id', new_img_id);
		});


	jQuery('.faq_list h2 a').toggle(function(e){
		e.preventDefault();
		jQuery('.faq_list h2 a.active').trigger('click');
		jQuery(this).addClass('active').parent().siblings('.answer').slideDown('fast');
	}, function(e){
		e.preventDefault();
		jQuery(this).removeClass('active').parent().siblings('.answer').slideUp('fast');
	});




	// cycle for beauty landing page
	if(jQuery(".landing_rotator .rotator_items").length > 0){
		jQuery('.landing_rotator .rotator_items').cycle({
				fx: 'fade',
				pager: '.landing_rotator_pager',
				timeout: 2000,
				prev:  '.landing_rotator .cycle_left',
				next:  '.landing_rotator .cycle_right'
			});

		if(jQuery(".landing_rotator_pager").length > 0){
			var pager_width = jQuery('.landing_rotator_pager').width();
			var pager_parent_width = jQuery('.landing_rotator_pager').parent().width();
			var left_pos = (pager_parent_width - pager_width)/2 - 10;
			jQuery('.landing_rotator_pager').css('left', left_pos);
		}
	}

	// equal height product descriptions on product listing page
	jQuery('.row').each(function(){
		var max_height = 16;
		jQuery(this).children('.product').each(function(){
			var desc_height = jQuery(this).children('h3').height();
			if (desc_height > max_height){
				max_height = desc_height;
			}
		});
		jQuery(this).children('.product').children('h3').css('height', max_height);
	});


	// center 'as seen in' badge text vertically
	jQuery('.as_seen_in a').each(function(i){
	  			jQuery(this).css("margin-top", (( 36 - jQuery(this).height() ) / 2));
	});


	// left cycle for home page
	if(jQuery(".home_rotator_1 .rotator_items").length > 0){
		jQuery('.home_rotator_1 .rotator_items').cycle({
				fx: 'scrollLeft',
				pager: '.home_rotator_1_pager',
				timeout: 2000,
				prev:  '.home_rotator_1 .home_cycle_left_1',
				next:  '.home_rotator_1 .home_cycle_right_1'
			});

		if(jQuery(".home_rotator_1_pager").length > 0){
			var pager_width = jQuery('.home_rotator_1_pager').width();
			var max_width = 165;
			if (pager_width > max_width){
				pager_width = max_width;
				jQuery('.home_rotator_1_pager').width(max_width);
			}
			var pager_parent_width = jQuery('.home_rotator_1_pager').parent().width();
			var nav_pos = (pager_parent_width - pager_width)/2 - 10;
			jQuery('.home_rotator_1_pager').css('left', nav_pos);

			var left_btn_pos = nav_pos - 16;
			jQuery('.home_rotator_1 .home_cycle_left_1').css('left', left_btn_pos);

			var right_btn_pos = nav_pos - 10;
			jQuery('.home_rotator_1 .home_cycle_right_1').css('right', right_btn_pos);
		}
	}


	// right cycle for home page
	if(jQuery(".home_rotator_2 .rotator_items").length > 0){
		jQuery('.home_rotator_2 .rotator_items').cycle({
				fx: 'scrollLeft',
				pager: '.home_rotator_2_pager',
				timeout: 3000,
				prev:  '.home_rotator_2 .home_cycle_left_2',
				next:  '.home_rotator_2 .home_cycle_right_2'
			});

		if(jQuery(".home_rotator_2_pager").length > 0){
			var pager_width = jQuery('.home_rotator_2_pager').width();
			var max_width = 240;
			if (pager_width > max_width){
				pager_width = max_width;
				jQuery('.home_rotator_2_pager').width(max_width);
			}
			var pager_parent_width = jQuery('.home_rotator_2_pager').parent().width();
			var nav_pos = (pager_parent_width - pager_width)/2 - 10;
			jQuery('.home_rotator_2_pager').css('left', nav_pos);

			var left_btn_pos = nav_pos - 16;
			jQuery('.home_rotator_2 .home_cycle_left_2').css('left', left_btn_pos);

			var right_btn_pos = nav_pos - 10;
			jQuery('.home_rotator_2 .home_cycle_right_2').css('right', right_btn_pos);
		}
	}

		jQuery('#brand_spotlight .tabs a').click(function(e){
			e.preventDefault();
			jQuery('.tabs li.active').removeClass('active');
			jQuery(this).parent().addClass('active');
			var tab_id = jQuery(this).get(0).id;
			jQuery('.tab_contents.active').slideUp('slow', function(e){
				jQuery(this).removeClass('active');
				jQuery('.' +tab_id).slideDown('slow').addClass('active');
				});
		});

});


// input field text reset functions
function resetField(field, value){
	if (field.value==value){
		field.value="";
		jQuery(field).addClass('highlight');
		return false;
	}
}

function startValue(field, text){
			if (field.value==""){
			field.value=text;
			jQuery(field).removeClass('highlight');
			return false;
			}
}

function validate(myForm) {

if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(myForm.sign_up_email.value)))
{
alert("Please enter a valid email address"); return false;}
else{}

wyrreg=/\d\d-\d\d-\d\d/;
}



/* ====== Ajax cart functions ====== */


function ajaxCartAddProduct () {

		var form = jQuery('#product_addtocart_form');
		var container = jQuery('#ajax_cart_container');
		var loader = jQuery('#ajax_cart_loading');
		var content = jQuery('#ajax_cart_content')
		var inputs = jQuery(':input', form).serialize();

		jQuery('#btn_shopping_bag').addClass('active');

		if (jQuery.browser.msie && jQuery.browser.version.substr(0,1)<7) {
			jQuery('#zoom_info').hide();
		}

		jQuery('html,body').animate({scrollTop: 0}, 200);



		container.show(1, function () {
			content.hide();
			loader.fadeIn('slow');
		});

		jQuery.post(form.get(0).action+"?isAjax=1", inputs, function (data, textStatus) {
			content.html(data);
			loader.fadeOut('slow', function () {
				content.fadeIn('slow', function() {
					var timeout;
					if(timeout != 'bag_link'){
						ajaxCartSetTimeout(5000);
						timeout = '';
					}
					var body_id = jQuery('body').get(0).id;
					if(body_id == "my_shopping_bag"){
						location.reload(true);
					}

					// udpdate no of items
					// jQuery('#btn_shopping_bag span').text('(' + cartItemsCount + ')');

				});
			});
		}, "html");

		return false;


}

function ajaxCartAddProductByForm (form) {

		var form = jQuery(form);
		var container = jQuery('#ajax_cart_container');
		var loader = jQuery('#ajax_cart_loading');
		var content = jQuery('#ajax_cart_content')
		var inputs = jQuery(':input', form).serialize();

		jQuery('#btn_shopping_bag').addClass('active');

		if (jQuery.browser.msie && jQuery.browser.version.substr(0,1)<7) {
			jQuery('#zoom_info').hide();
		}

		jQuery('html,body').animate({scrollTop: 0}, 200);



		container.show(1, function () {
			content.hide();
			loader.fadeIn('slow');
		});

		jQuery.post(form.get(0).action+"?isAjax=1", inputs, function (data, textStatus) {
			content.html(data);
			loader.fadeOut('slow', function () {
				content.fadeIn('slow', function() {
					var timeout;
					if(timeout != 'bag_link'){
						ajaxCartSetTimeout(5000);
						timeout = '';
					}
					var body_id = jQuery('body').get(0).id;
					if(body_id == "my_shopping_bag"){
						location.reload(true);
					}

					// udpdate no of items
					// jQuery('#btn_shopping_bag span').text('(' + cartItemsCount + ')');

				});
			});
		}, "html");

		return false;


}

function ajaxCartRemoveProduct(a, removeUrl,cartQtyUrl) {
  var message = jQuery('.ajax_cart_message');
  var prodName = jQuery(a).parent().siblings('.name').text();

	jQuery(a).parents('.product_row').fadeOut('slow', function () {
    message.removeClass('bad');
    message.text('Removed ' + prodName);
	});
	jQuery('#ajaxcart_subtotal span').hide();
	jQuery.post(removeUrl+'?isAjax=1', {}, function() {
		jQuery.post(cartQtyUrl, {}, function(response) {
			jQuery('#btn_shopping_bag').html(response);
		});
	});

	return false;
}

function ajaxCartSetTimeout(t) {
   window.ajaxCartTimeout=setTimeout("jQuery('#ajax_cart_container').fadeOut('slow'); jQuery('#btn_shopping_bag').removeClass('active'); jQuery('#zoom_info').show();", t);
}

function ajaxCartClearTimeout() {
  if(typeof(window.ajaxCartTimeout)!='undefined'){
    clearTimeout(window.ajaxCartTimeout);
    window.ajaxCartTimeout=null;
  }
}

