/*----------------------------------------------------------------------
[Global Javascript]

Copyright:		Great Fridays 2010
Client:			Fashion Rocks
Project:		E-Commerce
Created by:		Adam Foster
Date created:	25-11-2010			
-----------------------------------------------------------------------*/

/* Global > replace fonts ---------------------------------------------*/


Cufon.replace('.cufon-helv-ul > li > a', { hover: true, fontFamily: 'HelveticaNeueLT Com 75 Bd' });
Cufon.replace('.cufon-alt-ul > li > a', { hover: true, fontFamily:'AlternateGothic2 BT' });

Cufon.replace('.cufon-helv, .cart #shopping-cart-totals-table .a-right, .checkout #checkout-review-table .a-right', { fontFamily: 'HelveticaNeueLT Com 75 Bd' });
Cufon.replace('.cufon-helv-h, #shopping-cart-table .shopping-header-text h2', { hover: true, fontFamily: 'HelveticaNeueLT Com 75 Bd' });

Cufon.replace('.cufon-casl', { fontFamily: 'Adobe Caslon Pro' });
Cufon.replace('.cufon-casl-uls > li', { hover: true, hoverables: { li: true }, fontFamily: 'Adobe Caslon Pro' });
Cufon.replace('.cufon-casl-h, .cufon-casl-ul > li > a:not(.brandsLink)', { hover: true, fontFamily: 'Adobe Caslon Pro' });
Cufon.replace('.cufon-alt', { fontFamily:'AlternateGothic2 BT' });


/* When the dom is ready... -------------------------------------------*/

var browser = null;
if(jQuery.browser.msie && jQuery.browser.version < 9) { browser = "ie"; };

jQuery(document).ready(function() {
	
	/* Add body classes */
	
	jQuery('body').addClass('js');
	var isiPad = navigator.userAgent.match(/iPad/i) != null;
	if (isiPad == true) {
		jQuery('html').addClass('ipad');
	};
	
	/* Open external links in a new tab */
	
	jQuery('a[rel="external"]').attr("target", "_blank");
	
	/* Run some functions*/
	addBodyClass();
	inputValueReplace();
	initializeTracking();
	setCustomSelects();
	hideShare();	
	jQuery("input[type=checkbox]:not('.checkout .checkbox')").custCheckBox();
	
	/* Frame break out */
	
	if (jQuery('body').hasClass('cms-size-guides')) {
		return false;
	} else if (top.location != location) {
		top.location.href = document.location.href ;
	};
	
	/* Nav rollout cufon fix */
	
	jQuery('#navigation > li').hover(function(){
		jQuery(this).addClass('selected');
	},function(){
		jQuery(this).removeClass('selected');
		setTimeout(function () {
			Cufon.refresh('.cufon-helv-ul > li > a');
		}, 10);
	});
	
});

/* Global > Custom select menus --------------------------------------------*/

function setCustomSelects(){

 jQuery('.custom-select :selected').each(function() { var o = new customSelect(jQuery(this)); });
	 function customSelect(e) {
		 var o = {
		 init : function() {
		 o.sel = e.parent();
		 o.value = e.text();
		 o.monitor();
	 	},
	 	monitor : function() {
		 o.sel.css({"opacity":0}).wrap("<span class='selectHolder' id='" + o.sel.attr('id') + "'></span>");
		 o.sel.before("<label class='selectMenu'>"+o.value+"</label>");
			 o.sel.change(function() {
			 	o.sel.prev().text(o.sel.children(':selected').text());
			});
	 	}
	 }
	 o.init();
	 return o;
	 }
};

/* Global > add body classes -----------------------------------------*/

function addBodyClass() {
	
	// detect user agent
	var browser = "unknown";
	var version = navigator.userAgent.toLowerCase();

	// Internet Explorer
	if(jQuery.browser.msie) {
		thisVersion = jQuery.browser.version.substring(0,1);
		browser = "ie" + thisVersion;
	};
	
	// Webkit
    if(jQuery.browser.safari) browser = "webkit";
	
	// Mozilla
    if(jQuery.browser.mozilla) browser = "mozilla";
	
	// Opera
    if(jQuery.browser.opera) browser = "opera";
	
	// mobile safari - iPhone/iPod touch/iPad
	
	//to add
	
	// Add classes to body
	jQuery('body').addClass('js ' + browser);
};

/* Landing page carousels > storing session for drag icon ---------------------------------------*/

function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}


function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name,"",-1);
}

/* Global > sharing ----------------------------------------------------------------------------*/

var sharingVisible = false;
var sharingAnimating = false;
var shareOpt = null;

function toggleShare(e) {
	if(sharingAnimating) return;
	sharingAnimating = true;
	var share = jQuery(e);
	if(sharingVisible)
	{
		sharingVisible = false;
		jQuery('.vsOptions').delay(300).animate({left: '861px'},200,'easeInQuad');
		jQuery('.shareNetworks',shareOpt).show().animate({left: '-87px'},300,'easeInQuad', function(){
			jQuery('.shareNetworks',shareOpt).hide();
			jQuery('.sharebutton',shareOpt).removeClass('active');
		});
		jQuery('.sharebutton',shareOpt).animate({opacity: '1'},500,'easeInQuad',function(){
			sharingAnimating = false;
		});
	}
	else {
		sharingVisible = true;
		jQuery('.vsOptions').animate({left: '770px'},200,'easeInQuad');
		jQuery('.shareNetworks',shareOpt).show().animate({left: '0'},400,'easeInQuad',function(){
			jQuery('.sharebutton',shareOpt).addClass('active');
		});
		jQuery('.sharebutton',shareOpt).animate({opacity: '1'},400,'easeInQuad',function(){
			sharingAnimating = false;
		});

	}
}

function hideShare() {
	shareOpt = jQuery('.shareOptions').addClass('js');
	sharingVisible = false;
	sharingAnimating = false;	
	jQuery('.vsOptions').animate({left: '861px'},300,'easeInQuad');
	jQuery('.shareNetworks',shareOpt).css('position','absolute').css('left','-87px').hide();
	jQuery('.sharebutton',shareOpt).css('position','absolute').removeClass('active');
	jQuery('.shareNetworksContainer',shareOpt).css('position','absolute')
}

/* Global > facebook connect -------------------------------------------------------------------*/

function loginFacebook(){
	FB.login(function(response) {
		if(response.session) {
			onLoginSuccess(FB.getSession(),response.perms);
		} else {
			//onLoginFailure();
		}
	},{perms:'publish_stream, email, user_location'} );
};

function onLoginSuccess(session, response){
	GetDetails();
};
		
function GetDetails(){
	FB.api('/me', function(response) {
		var firstname = response.first_name;
		var lastname = response.last_name;
		var gender = response.gender;
		var email = response.email;
		var location = '';
		
		if(response.location != null && response.location != 'undefined'){
			location = response.location.name;
		}
		
		submitForm(firstname, lastname, email, location, gender, true, 'facebook');
		
		FB.ui(
			   {
				   message: ' ',
				   width: '400px',
				   height: '200px',
				   method:'stream.publish',
				   user_message_prompt: 'Share Fashion Rocks coming soon message',
				   attachment: {
					   name: 'Fashion Rocks',
					   caption: 'A unique combination of live music and fashion. Register online to be kept up to date with all the latest news, events and exclusives.',
					   media: [
					   {type: 'image', src: "http://www.fashionrocks.com/skin/frontend/enterprise/default/images/frocks/facebook-img.jpg", href: 'http://www.facebook.com/home.php?#!/pages/Fashion-Rocks/106034779417593'}
					   ],
					   href: 'http://www.facebook.com/home.php?#!/pages/Fashion-Rocks/106034779417593'
				   }
		
				},
			   function(response) {
				 if (response && response.post_id) {
					 showRegisterConfirmation();
				 }
			   }
			 );
	});
	
};

function shareVideo(){
	FB.login(function(response) {
		if(response.session) {
			shareVideoReady(FB.getSession(),response.perms);
		} else {
			//onLoginFailure();
		}
	},{perms:'publish_stream, email, user_location'} );
};

function sharePhoto(){
	FB.login(function(response) {
		if(response.session) {
			sharePhotoReady(FB.getSession(),response.perms);
		} else {
			//onLoginFailure();
		}
	},{perms:'publish_stream, email, user_location'} );
};


var fb_share_video_url;
var fb_share_video_title;
var fb_share_video_desc;
var fb_share_video_link;

function setShareProperties(videoURL, videoTitle, videoDesc, videoLink)
{
	fb_share_video_url = videoURL;
	fb_share_video_title = videoTitle;
	fb_share_video_desc = videoDesc;
	fb_share_video_link = videoLink;
				
	jQuery('.fbbutton, .sharebutton').bind('click', function() {
        return false;
    });
	
	hideShare();
	setupTweetAndDigg();
}

function shareVideoReady(){
	var config = "{'clip':{'url':'" + fb_share_video_url + "'},'plugins':{'controls':{'url':'http://jellymediagroup.com/playerapi/player/flowplayer.controls-fr.swf','width':'90%','fullscreen':false}},'key':'#$bb44f07af4d01eb5981'}";
	
	config = encodeURI(config);
	
	FB.ui(
	   {
		   message: '',
		   width: '400px',
		   height: '200px',
		   method:'stream.publish',
		   attachment: {
			   name: 'Fashion Rocks - ' + fb_share_video_title,
			   caption: fb_share_video_desc,
			   media: [
			   {type: 'video', video_src: "http://jellymediagroup.com/playerapi/player/flowplayer.commercial-3.2.5.swf?video_height=398&video_width=223&config=" + config, preview_img: "http://www.fashionrocks.com/skin/frontend/enterprise/default/images/frocks/fashion-rocks-logo-facebook.jpg"}
			   ],
			   href: fb_share_video_link
		   },
		   action_links: [{text: 'Fashion Rocks', href: 'http://www.fashionrocks.com'}]
		},
	   function(response) {
		 if (response && response.post_id) {
			 showShareConfirmation('video');
		 }
	   }
	 );
}

function sharePhotoReady(){
	
	FB.ui(
	   {
		   message: '',
		   width: '400px',
		   height: '300px',
		   method:'stream.publish',
		   attachment: {
			   name: 'Fashion Rocks - ' + fb_share_video_title,
			   caption: fb_share_video_desc,
			   media:[{"type":"image","src":fb_share_video_url,"href":fb_share_video_link}],
			   href: fb_share_video_link
		   },
		   action_links: [{text: 'Fashion Rocks', href: 'http://www.fashionrocks.com'}]
		},
	   function(response) {
		 if (response && response.post_id) {
			 showShareConfirmation('on facebook!');
		 }
	   }
	 );
}


function showShareConfirmation(msg) {
	var confirmationMessage = jQuery('.share-container .shareMessage');
	if(confirmationMessage.length < 1)
	{
		confirmationMessage = jQuery("<span><p class='thanksp1'>Thank you</p><p class='thanksp2'>for sharing this " + msg + "</span>");
		confirmationMessage.addClass('shareMessage');
		jQuery('.share-container .shareOptions').append(confirmationMessage);
	}
	
	confirmationMessage.stop().fadeTo(1,0).fadeTo(300,1, function() {
		jQuery('.share-container .shareMessage').delay(3000).fadeTo(300,0);
	});
}

function showRegisterConfirmation() {
	var confirmationMessage = jQuery('#footer .footer-col.newsletter .successMessage');
	if(confirmationMessage.length < 1)
	{
		confirmationMessage = jQuery("<span><p class='thanksp1'>Thank you</p><p class='thanksp2'>for registering</span>");
		confirmationMessage.addClass('successMessage');
		jQuery('html, body').animate({ scrollTop: jQuery(document).height() }, 500);
		jQuery('#footer .footer-col.newsletter').append(confirmationMessage);
	}
	
	confirmationMessage.stop().fadeTo(1,0).fadeTo(300,1, function() {
		jQuery('#footer .footer-col.newsletter .successMessage').delay(2500).fadeTo(300,0, function(){
			jQuery(this).remove();
		});
	});
}

/* Global > Twitter & Digg share -------------------------------------------------------------------*/

function setupTweetAndDigg(){
	jQuery('.tweetbutton').unbind('click',tweetVideo);
	jQuery('.tweetbutton').bind('click',tweetVideo);
	
	jQuery('.diggbutton').unbind('click',diggVideo);
	jQuery('.diggbutton').bind('click',diggVideo);
}

function tweetVideo(){
	window.open("http://twitter.com/share?via=FashionRocks&text=" + fb_share_video_title +"&url="+fb_share_video_link,'frtweetwindow',"width=600,height=370");
    return false;
}

function diggVideo(){
	window.open("http://digg.com/submit?url=" + fb_share_video_link + "&title=Fashion Rocks - " + fb_share_video_title);
    return false;
}

/* Global > Making sure the email entered is valid -------------------------------------------*/ 
 
function checkEmail(email) { 
	var pattern = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	var emailVal = $("#" + email).val();
	return pattern.test(emailVal);
};
  
/* Global > replace the default value of input fields ----------------------------------------*/

function inputValueReplace() {
  
	jQuery('input.valueReplace').each(function() { var o = new valueReplace(jQuery(this)); });
	function valueReplace(e) {
		
		var o = {
		  init : function() {
				o.field = jQuery(e); 
				o.isSet = false;
				o.defaultValue = o.field.val();
				o.monitor();
			},
			monitor : function() {
				o.field.focus(function(){
					if( jQuery(this)[0].value == o.defaultValue) { jQuery(this)[0].value = ''; }
				});
				o.field.blur(function(){
					if(jQuery(this)[0].value == '') { jQuery(this)[0].value = o.defaultValue;}
				});
			}
		};
		o.init();		
	};

}; 

/* Global > google analytics ------------------------------------------------------------------*/

function initializeTracking() {

    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    jQuery.getScript(gaJsHost + "google-analytics.com/ga.js", function () {

        var pageTracker = _gat._getTracker("UA-13018776-1");

        pageTracker._trackPageview();

        jQuery(document.body).delegate('a', 'click', function () {

            var href = jQuery(this).attr('href');

            // external link.
            if (href && (href.match(/^https?\:/i)) && (!href.match(document.domain))) {
                var extLink = href.replace(new RegExp("^https?\:\/\/", "i"), '');
                pageTracker._trackEvent('External', 'Click', extLink);
            }
            // email link.
            else if (href && href.match(/^mailto\:/i)) {
                var mailLink = href.replace(new RegExp('^mailto\:', 'i'), '');
                pageTracker._trackEvent('Email', 'Click', mailLink);
                if (!agentID) {
                    setTimeout('document.location = "' + href + '"', 100);
                    return false;
                }
            }

        });

    });
}

/* Global > equal height headings  --------------------------------------------*/

function equalHeightHeadings(selector) {

    jQuery(selector).each(function() {
        tThis = jQuery(this);
        fixHeight(tThis, 'h3');
        fixHeight(tThis, 'p');
    });
	
	function fixHeight(e, element) {
		var currentTallest = 0;
		e.find(element).each(function(i) {
			if (jQuery(this).height() > currentTallest) { currentTallest = jQuery(this).height(); }
		}).css({ 'height': currentTallest });

	};
	
};

/* Blog > scrolling feautre ------------------------------------------------------------------------*/

function blogFeature() {
	
	var scroller = jQuery('#blog-slider'),
		items = jQuery('#blog-slider .slide'),
		itemsCount = jQuery('#blog-slider .slide').length,
		current = 0,
		magicNumber = 671,
		itemsWidth = jQuery('#blog-slider .slide').width(),
		next = jQuery('.blog-right'),
		prev = jQuery('.blog-left'),
		mask = jQuery('#blog-mask'),
		isTouch = 'ontouchend' in document;
	
	if(itemsCount > 1) {
		next.bind('click touchend', function(e){ 
			e.preventDefault(); 
			if (isTouch && e.type === 'click') return;
			stepRight();
		});
		prev.bind('click touchend', function(e){ 
			e.preventDefault(); 
			if (isTouch && e.type === 'click') return;
			stepLeft(); 
		});	
	};
	
	function stepRight(){
		if(next.hasClass('disabled')) return false;
		if(prev.hasClass('disabled')) prev.removeClass('disabled');
		current++;
		update();
		
	};
	
	function stepLeft(){
		if(prev.hasClass('disabled')) return false;
		if(next.hasClass('disabled')) next.removeClass('disabled');
		current--;
		update();
	};
	
	function update(){
		
		var slide = jQuery(items[current]);
		
		var maskHeight = mask.outerHeight(),
			slideHeight = slide.children().filter(':visible').outerHeight(),
			adjustHeight = maskHeight !== slideHeight;
		
		function sliding(cb) {
			scroller.stop().animate({left: -(itemsWidth * current)}, 450, 'easeInOutQuad', cb);
		}
		
		function adjustingHeight(cb) {
			mask.animate({ height: slideHeight }, "slow", cb);
			jQuery('body').animate({ backgroundPosition: '0px -'+(magicNumber - slideHeight)+'px'}, 450, 'easeInOutQuad');
		}
		
		if (!adjustHeight) {
			sliding();	
		} else {
			var down = slideHeight > maskHeight;
			down ? sliding(adjustingHeight) : adjustingHeight(sliding);	
		}
		
		if (jQuery("#jelly_player_container, #videoHolder_api").length > 0){
    		$f().pause();
		};
		
		if(current==0){ 
			prev.addClass('disabled'); 
		}else if(current+1==itemsCount){
			next.addClass('disabled'); 
		};
	};
		
};

/* Global > tabs -----------------*/

function tabs() {
  
	jQuery('.tab-links').each(function() { var o = new tabLinks(jQuery(this)); });
	function tabLinks(e) {
		
		var o = {
		  init : function() {
				o.ul = jQuery(e); 
				o.triggers = jQuery('a',o.ul);
				o.temp = '';
				o.triggers.each(function(e){
					o.temp += jQuery(this).attr('href') + ',';
				}).filter(':first').addClass('selected');
				o.contents = jQuery(o.temp);
				o.contents.hide().filter(':first').show();

				o.triggers.click(function(e){
					e.preventDefault();
					o.triggers.filter('.selected').removeClass('selected');
					jQuery(this).addClass('selected');
					o.contents.filter(':visible').hide()
						.end().filter(jQuery(this).attr('href')).show();
				});
			}
		};
		o.init();		
	};

}; 

/* Event > detail accordian -----------------------------------------------------------------------*/

function eventAccordian(obj) {
		
	var items = jQuery(obj + ' .accordion-row');
		items.filter(':first-child').addClass('selected');
		items.each(function() { var o = new toggle(jQuery(this)); });	
	
	function toggle(e){
				
		var o = {
			init : function() {
				o.row = jQuery(e);
				o.trigger = jQuery('h3 a',o.row);
				o.content = jQuery('.accordion-content',o.row);
				o.monitor();
			}, 
			monitor : function() {
				o.trigger.click(function(e) {
					e.preventDefault();
					if(items.length == 1) { return false; };
					o.content.slideToggle(200, 'easeInOutQuad', function(){
						o.row.toggleClass('selected');
					});							 
				});
			}
		};
		o.init();
		
	};
	
};

jQuery.easing.easeInOutQuad = function (x, t, b, c, d) {
	if ((t/=d/2) < 1) return c/2*t*t + b;
	return -c/2 * ((--t)*(t-2) - 1) + b;
};

/**
 * cust_checkbox_plugin.js
 * Copyright (c) 2010 myPocket technologies (www.mypocket-technologies.com)
 */

(function($){$.fn.custCheckBox=function(options){var defaults={disable_all:false,hover:true,wrapperclass:"group",callback:function(){}};var opts=$.extend(defaults,options);return this.each(function(){var obj=$(this);$.fn.buildbox=function(thisElm){$(thisElm).css({opacity:"0",position:"absolute",zIndex:"-1", left: "125px"}).before("<span class=\"cust_checkbox\">&nbsp;&nbsp;&nbsp;&nbsp;</span>");var isChecked=$(thisElm).attr("checked");var boxtype=$(thisElm).attr("type");var disabled=$(thisElm).attr("disabled");if(boxtype==="checkbox"){$(thisElm).prev("span").addClass("checkbox");if(disabled||opts.disable_all){boxtype="checkbox_disabled"}}else{$(thisElm).prev("span").addClass("radio");if(disabled||opts.disable_all){boxtype="radio_disabled"}}if(isChecked)$(thisElm).prev("span").addClass("cust_"+boxtype+"_on");else $(thisElm).prev("span").addClass("cust_"+boxtype+"_off");if(opts.disable_all)$(thisElm).attr("disabled","disabled");$(thisElm).parent().find("label").unbind().click(function(e){e.preventDefault();if(!opts.disable_all){var custbox=$(this).parent().find("span");var boxtype=$(custbox).parent().find("input").attr("type");var disabled=$(custbox).parent().find("input").attr("disabled");if($(custbox).hasClass("checkbox")){if($(custbox).hasClass("cust_"+boxtype+"_off")&&!disabled){$(custbox).removeClass("cust_"+boxtype+"_off").addClass("cust_"+boxtype+"_on").parent().find("input").attr("checked","checked")}else if(!disabled){$(custbox).removeClass("cust_"+boxtype+"_on").addClass("cust_"+boxtype+"_off").parent().find("input").removeAttr("checked");$(custbox).removeClass("cust_"+boxtype+"_hvr")}}else if(!disabled){$(custbox).parent().find(".cust_checkbox").removeClass("cust_"+boxtype+"_on").addClass("cust_"+boxtype+"_off").next("input").removeAttr("checked");$(custbox).removeClass("cust_"+boxtype+"_off").addClass("cust_"+boxtype+"_on").next("input").attr("checked","checked");$(custbox).removeClass("cust_"+boxtype+"_hvr")}opts.callback.call(this)}}).hover(function(){var custbox=$(this).next("span");if($(custbox).hasClass("cust_checkbox_on")&&opts.hover)$(custbox).addClass("cust_checkbox_hvr");else if($(custbox).hasClass("cust_radio_on")&&opts.hover)$(custbox).addClass("cust_radio_hvr")},function(){var custbox=$(this).next("span");if($(custbox).hasClass("cust_checkbox_on")&&opts.hover)$(custbox).removeClass("cust_checkbox_hvr");else if($(custbox).hasClass("cust_radio_on")&&opts.hover)$(custbox).removeClass("cust_radio_hvr")});$(thisElm).prev("span").unbind().click(function(){if(!opts.disable_all){var boxtype=$(this).next("input").attr("type");var disabled=$(this).next("input").attr("disabled");if($(this).hasClass("checkbox")){if($(this).hasClass("cust_"+boxtype+"_off")&&!disabled)$(this).removeClass("cust_"+boxtype+"_off").addClass("cust_"+boxtype+"_on").next("input").attr("checked","checked");else if(!disabled){$(this).removeClass("cust_"+boxtype+"_on").addClass("cust_"+boxtype+"_off").next("input").removeAttr("checked");$(this).removeClass("cust_"+boxtype+"_hvr")}}else if(!disabled){$(this).parent().find(".cust_checkbox").removeClass("cust_"+boxtype+"_on").addClass("cust_"+boxtype+"_off").next("input").removeAttr("checked");$(this).removeClass("cust_"+boxtype+"_off").addClass("cust_"+boxtype+"_on").next("input").attr("checked","checked")}opts.callback.call(this)}}).hover(function(){if($(this).hasClass("cust_checkbox_on")&&opts.hover)$(this).addClass("cust_checkbox_hvr");else if($(this).hasClass("cust_radio_on")&&opts.hover)$(this).addClass("cust_radio_hvr")},function(){if($(this).hasClass("cust_checkbox_on")&&opts.hover)$(this).removeClass("cust_checkbox_hvr");else if($(this).hasClass("cust_radio_on")&&opts.hover)$(this).removeClass("cust_radio_hvr")})};$.fn.buildbox($(obj))})}})(jQuery);

/**
* hoverIntent r5 // 2007.03.27 // jQuery 1.1.2+
* <http://cherne.net/brian/resources/jquery.hoverIntent.html>
* 
* @param  f  onMouseOver function || An object with configuration options
* @param  g  onMouseOut function  || Nothing (use configuration options object)
* @author    Brian Cherne <brian@cherne.net>
*/
(function($){$.fn.hoverIntent=function(f,g){var cfg={sensitivity:1,interval:30,timeout:0};cfg=$.extend(cfg,g?{over:f,out:g}:f);var cX,cY,pX,pY;var track=function(ev){cX=ev.pageX;cY=ev.pageY;};var compare=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);if((Math.abs(pX-cX)+Math.abs(pY-cY))<cfg.sensitivity){$(ob).unbind("mousemove",track);ob.hoverIntent_s=1;return cfg.over.apply(ob,[ev]);}else{pX=cX;pY=cY;ob.hoverIntent_t=setTimeout(function(){compare(ev,ob);},cfg.interval);}};var delay=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);ob.hoverIntent_s=0;return cfg.out.apply(ob,[ev]);};var handleHover=function(e){var p=(e.type=="mouseover"?e.fromElement:e.toElement)||e.relatedTarget;while(p&&p!=this){try{p=p.parentNode;}catch(e){p=this;}}if(p==this){return false;}var ev=jQuery.extend({},e);var ob=this;if(ob.hoverIntent_t){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);}if(e.type=="mouseover"){pX=ev.pageX;pY=ev.pageY;$(ob).bind("mousemove",track);if(ob.hoverIntent_s!=1){ob.hoverIntent_t=setTimeout(function(){compare(ev,ob);},cfg.interval);}}else{$(ob).unbind("mousemove",track);if(ob.hoverIntent_s==1){ob.hoverIntent_t=setTimeout(function(){delay(ev,ob);},cfg.timeout);}}};return this.mouseover(handleHover).mouseout(handleHover);};})(jQuery);

eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(3(b){b.11=b.11||{};b.11.P={L:"1.1.2",1j:{C:5,28:E,33:4q,1Y:U,1I:D,14:"4p",24:D,25:U,1h:"4o",2b:"4m",2f:E,2n:".2n",1M:D,1c:".1c",X:".X",1k:".1k",1l:".1l",1o:E}};z c;3 a(o,m){z r=B,p=b(B),d=!m.28,e=o.1Z(),k=0,i;y(!c){c=r}b.T(m,3(s,t){y(b.2g(t)){p.1g(s,t)}});y(e.H>1){e=b(m.2n,o)}3 l(t){z s=b(t);8 m.4l?s:o.4i().3T(t)}o.1x("3N",l);z f=l(m.1c),h=l(m.X),g=l(m.1k),n=l(m.1l);b.1a(r,{2P:3(){8 k},3I:3(){z s=r.I();8 s.3H(s.3B("."+m.1h))},2m:3(){8 m},J:3(){8 r.I().C()},1L:3(){8 Q.1O(B.J()/m.C)},2N:3(){8 Q.1O(k/m.C)},2M:3(){8 f.1f(h).1f(g).1f(n)},3x:3(){8 o},2K:3(){8 e},I:3(){8 e.1Z(m.1M)},2J:3(){8 r.I().1w(k,k+m.C)},K:3(s,w,t){y(s<0){s=0}y(k===s){8 r}y(b.2g(w)){t=w}y(s>r.J()-m.C){8 m.2f?r.20():B.22()}z u=r.I().1r(s);y(!u.H){8 r}z v=b.2G("2F");p.1y(v,[s]);y(v.2C()){8 r}y(w===1n||b.2g(w)){w=m.33}3 x(){y(t){t.2h(r,s)}p.1y("2B",[s])}y(d){e.2A({1v:-u.1K().1v},w,m.2b,x)}O{e.2A({1F:-u.1K().1F},w,m.2b,x)}c=r;k=s;v=b.2G("1N");p.1y(v,[s]);y(v.2C()){8 r}f.1f(g).2z(m.14,s===0);h.1f(n).2z(m.14,s>=r.J()-m.C);8 r},Z:3(u,t,s){i=u>0;8 B.K(k+u,t,s)},X:3(t,s){8 B.Z(1,t,s)},1c:3(t,s){8 B.Z(-1,t,s)},1Q:3(w,v,u){i=w>0;z s=m.C*w;z t=k%m.C;y(t>0){s+=(w>0?-t:m.C-t)}8 B.Z(s,v,u)},1k:3(t,s){8 B.1Q(-1,t,s)},1l:3(t,s){8 B.1Q(1,t,s)},2y:3(t,u,s){8 B.K(t*m.C,u,s)},20:3(t,s){i=E;8 B.K(0,t,s)},22:3(t,s){i=U;z u=B.J()-m.C;8 u>0?B.K(u,t,s):r},2x:3(){p.1y("1T");8 r},48:3(){c=r;8 r},F:3(u){z v=r.I().1r(u),s=m.1h,t=m.C;y(u<0||u>=r.J()){8 r}y(t==1){y(m.2f){8 r.X()}y(u===0||u==r.J()-1){i=(i===1n)?U:!i}8 i===E?r.1c():r.X()}y(t==2){y(u==k){u--}r.I().18(s);v.M(s);8 r.K(u,46,1t)}y(!v.45(s)){r.I().18(s);v.M(s);z x=Q.21(t/2);z w=u-x;y(w>r.J()-t){w=r.J()-t}y(w!==u){8 r.K(w)}}8 r},1g:3(s,t){p.1g(s,t);8 r},1i:3(s){p.1i(s);8 r}});b.T("2F,1N,2B,1T".2w(","),3(s,t){r[t]=3(u){8 r.1g(t,u)}});f.M(m.14).F(3(){r.1c()});h.F(3(){r.X()});n.F(3(){r.1l()});y(r.J()<m.C){h.1f(n).M(m.14)}g.M(m.14).F(3(){r.1k()});z j=m.24,q="3J."+Q.27().3z().29(10);r.1T(3(){y(j){r.I().2v(3(){b(B).M(j)},3(){b(B).18(j)})}y(m.25){r.I().T(3(s){b(B).1i("F.P").1g("F.P",3(t){y(b(t.3i).2d("a")){8}8 r.F(s)})})}y(m.1Y){b(W).1i(q).1g(q,3(t){y(t.3h||t.3d){8}y(m.1Y!="4j"&&c!=r){8}z u=m.1I;y(d&&(t.1d==37||t.1d==39)){r.Z(t.1d==37?-u:u);8 t.2o()}y(!d&&(t.1d==38||t.1d==40)){r.Z(t.1d==38?-u:u);8 t.2o()}8 U})}O{b(W).1i(q)}});r.2x()}b.1t.P=3(d){z e=B.1r(G d=="3Q"?d:0).1x("P");y(e){8 e}z f=b.1a({},b.11.P.1j);d=b.1a(f,d);d.1I=d.1I||d.C;B.T(3(){e=1e a(b(B),d);b(B).1x("P",e)});8 d.1o?e:B}})(Y);(3(b){z a=b.11.P;a.12=a.12||{};a.12.2j={L:"0.5.1",1j:{1o:E,2i:"4e"}};b.1t.2j=3(e){z d=b.1a({},a.12.2j.1j),c;b.1a(d,e);B.T(3(){z i=b(B).P(),n=i.I(),k=i.2m(),f=i.2K(),j=0;y(i){c=i}y(n.H<k.C){8 E}n.1w(0,k.C).T(3(o){b(B).2p().36(f).F(3(){i.F(n.H+o)}).M(d.2i)});z l=b.3k(n.1w(-k.C)).3p();b(l).T(3(o){b(B).2p().3X(f).F(3(){i.F(-o-1)}).M(d.2i)});z m=f.1Z(k.1M);z h=k.24;y(h){m.2v(3(){b(B).M(h)},3(){b(B).18(h)})}3 g(o){z p=m.1r(o);y(k.28){f.2q({1F:-p.1K().1F})}O{f.2q({1v:-p.1K().1v})}}g(k.C);b.1a(i,{Z:3(s,r,p,q){z u=j+s+k.C;z t=u>i.J()-k.C;y(u<=0||t){z o=j+k.C+(t?-n.H:n.H);g(o);u=o+s}y(q){m.18(k.1h).1r(u+Q.21(k.C/2)).M(k.1h)}y(u===j+k.C){8 2r}8 i.K(u,r,p)},20:3(p,o){8 B.K(k.C,p,o)},22:3(p,o){8 B.K(n.H,p,o)},F:3(p,r,q){y(!k.25){8 2r}y(k.C==1){8 B.X()}z s=p-j,o=k.1h;s-=Q.21(k.C/2);8 B.Z(s,r,q,U)},2P:3(){8 j},2y:3(p,q,o){8 B.K(p*k.C+k.C,q,o)},1L:3(){8 Q.1O(n.H/k.C)},2N:3(){y(j<0){8 B.1L()-1}y(j>=n.H){8 0}z o=(j+k.C)/k.C-1;8 o},2J:3(){z o=j+k.C;8 m.1w(o,o+k.C)}});i.1N(3(p,o){j=o-k.C;8 E});i.2M().18(k.14)});8 d.1o?c:B}})(Y);(3(){z e=G Y=="3";z i={1D:"2s%",1C:"2s%",4r:U,35:"2t",3a:"3c",L:D,1B:D,2c:D,1z:E,2u:E};y(e){Y.11=Y.11||{};Y.11.N={L:"1.0.4",1j:i}}3 j(){y(c.26){8 E}z l=W;y(l&&l.3G&&l.23&&l.3M){3S(c.1u);c.1u=D;1b(z k=0;k<c.1p.H;k++){c.1p[k].2h()}c.1p=D;c.26=U}}z c=e?Y:3(k){y(c.26){8 k()}y(c.1u){c.1p.2a(k)}O{c.1p=[k];c.1u=4b(j,13)}};3 f(l,k){y(k){1b(1E 1m k){y(k.2l(1E)){l[1E]=k[1E]}}}8 l}3 g(k){4f(h(k)){1J"1A":k=k.R(1e 4w(\'(["\\\\\\\\])\',"g"),"\\\\$1");k=k.R(/^\\s?(\\d+)%/,"$34");8\'"\'+k+\'"\';1J"2D":8"["+b(k,3(n){8 g(n)}).2E(",")+"]";1J"3":8\'"3()"\';1J"16":z l=[];1b(z m 1m k){y(k.2l(m)){l.2a(\'"\'+m+\'":\'+g(k[m]))}}8"{"+l.2E(",")+"}"}8 3b(k).R(/\\s/g," ").R(/\\\'/g,\'"\')}3 h(l){y(l===D||l===1n){8 E}z k=G l;8(k=="16"&&l.2a)?"2D":k}y(17.2H){17.2H("3e",3(){3f=3(){};3g=3(){}})}3 b(k,n){z m=[];1b(z l 1m k){y(k.2l(l)){m[l]=n(k[l])}}8 m}3 a(r,t){z q=f({},r);z s=W.2I;z n=\'<16 1D="\'+q.1D+\'" 1C="\'+q.1C+\'"\';y(s&&!q.V){q.V="3j"+(""+Q.27()).29(9)}y(q.V){n+=\' V="\'+q.V+\'"\'}y(q.2u){q.15+=((q.15.3l("?")!=-1?"&":"?")+Q.27())}y(q.1z||!s){n+=\' 1x="\'+q.15+\'" 3m="3n/x-3o-2L"\'}O{n+=\' 3q="3r:3s-3t-3u-3v-3w"\'}n+=">";y(q.1z||s){n+=\'<1R 1P="3y" 2k="\'+q.15+\'" />\'}q.1D=q.1C=q.V=q.1z=q.15=D;1b(z l 1m q){y(q[l]!==D){n+=\'<1R 1P="\'+l+\'" 2k="\'+q[l]+\'" />\'}}z o="";y(t){1b(z m 1m t){y(t[m]!==D){o+=m+"="+(G t[m]=="16"?g(t[m]):t[m])+"&"}}o=o.29(0,o.H-1);n+=\'<1R 1P="3A" 2k=\\\'\'+o+"\' />"}n+="</16>";8 n}3 d(m,p,l){z k=N.1s();f(B,{3C:3(){8 m},2m:3(){8 p},1s:3(){8 k},3D:3(){8 l},3E:3(){8 m.3F},2O:3(){8 a(p,l)}});z q=p.L;z r=p.2c;z o=!q||N.2e(q);y(o){p.1B=p.L=p.2c=D;m.1q=a(p,l)}O{y(q&&r&&N.2e([6,3K])){f(p,{15:r});l={3L:2Q.1X,3O:"3P",4g:W.3R};m.1q=a(p,l)}O{y(m.1q.R(/\\s/g,"")!==""){}O{m.1q="<2R>1W L "+q+" 3U 3V 2d 3W</2R><2S>"+(k[0]>0?"3Y L 2d "+k:"3Z 41 42 2L 43 44")+"</2S>"+(m.2T=="A"?"<p>47 2U 49 4a 2V L</p>":"<p>4c 2V L 4d <a 1X=\'2W://2X.2Y.2Z/30/31\'>2U</a></p>");y(m.2T=="A"){m.4h=3(){2Q.1X="2W://2X.2Y.2Z/30/31"}}}}}y(!o&&p.1B){z n=p.1B.2h(B);y(G n=="1A"){m.1q=n}}y(W.2I){17[p.V]=W.23(p.V)}}17.N=3(l,m,k){y(G l=="1A"){z n=W.23(l);y(n){l=n}O{c(3(){N(l,m,k)});8}}y(!l){8}y(G m=="1A"){m={15:m}}z o=f({},i);f(o,m);8 1e d(l,o,k)};f(17.N,{1s:3(){z m=[0,0];y(1V.12&&G 1V.12["32 1W"]=="16"){z l=1V.12["32 1W"].4k;y(G l!="1n"){l=l.R(/^.*\\s+(\\S+\\s+\\S+$)/,"$1");z n=1G(l.R(/^(.*)\\..*$/,"$1"),10);z r=/r/.4n(l)?1G(l.R(/^.*r(.*)$/,"$1"),10):0;m=[n,r]}}O{y(17.1H){1U{z p=1e 1H("19.19.7")}1S(q){1U{p=1e 1H("19.19.6");m=[6,0];p.4s="2t"}1S(k){y(m[0]==6){8 m}}1U{p=1e 1H("19.19")}1S(o){}}y(G p=="16"){l=p.4t("$L");y(G l!="1n"){l=l.R(/^\\S+\\s+(.*)$/,"$1").2w(",");m=[1G(l[0],10),1G(l[2],10)]}}}}8 m},2e:3(k){z m=N.1s();z l=(m[0]>k[0])||(m[0]==k[0]&&m[1]>=k[1]);8 l},4u:c,4v:g,2O:a});y(e){Y.1t.N=3(l,k){z m=D;B.T(3(){m=N(B,l,k)});8 l.1o===E?B:m}}})();',62,281,'|||function|||||return||||||||||||||||||||||||||if|var||this|size|null|false|click|typeof|length|getItems|getSize|seekTo|version|addClass|flashembed|else|scrollable|Math|replace||each|true|id|document|next|jQuery|move||tools|plugins||disabledClass|src|object|window|removeClass|ShockwaveFlash|extend|for|prev|keyCode|new|add|bind|activeClass|unbind|conf|prevPage|nextPage|in|undefined|api|ready|innerHTML|eq|getVersion|fn|timer|left|slice|data|trigger|w3c|string|onFail|height|width|key|top|parseInt|ActiveXObject|keyboardSteps|case|position|getPageAmount|item|onStart|ceil|name|movePage|param|catch|onReload|try|navigator|Flash|href|keyboard|children|begin|floor|end|getElementById|hoverClass|clickable|done|random|vertical|substring|push|easing|expressInstall|is|isSupported|loop|isFunction|call|clonedClass|circular|value|hasOwnProperty|getConf|items|preventDefault|clone|css|self|100|always|cachebusting|hover|split|reload|setPage|toggleClass|animate|onSeek|isDefaultPrevented|array|join|onBeforeSeek|Event|attachEvent|all|getVisibleItems|getItemWrap|flash|getNaviButtons|getPageIndex|getHTML|getIndex|location|h2|h3|tagName|here|latest|http|www|adobe|com|go|getflashplayer|Shockwave|speed|1pct|allowscriptaccess|appendTo||||quality|String|high|ctrlKey|onbeforeunload|__flash_unloadHandler|__flash_savedUnloadHandler|altKey|target|_|makeArray|indexOf|type|application|shockwave|reverse|classid|clsid|D27CDB6E|AE6D|11cf|96B8|444553540000|getRoot|movie|toString|flashvars|filter|getContainer|getFlashvars|getApi|firstChild|getElementsByTagName|index|getClickIndex|keydown|65|MMredirectURL|body|finder|MMplayerType|PlugIn|number|title|clearInterval|find|or|greater|required|prependTo|Your|You||have|no|plugin|installed|hasClass|time|Click|focus|to|download|setInterval|Download|from|cloned|switch|MMdoctitle|onclick|parent|static|description|globalNav|swing|test|active|disabled|400|allowfullscreen|AllowScriptAccess|GetVariable|domReady|asString|RegExp'.split('|'),0,{}))

jQuery(document).ready(function() {
    /*
     * Remove size options if product has only "ONE" option
     */
    if(jQuery('body').hasClass('catalog-product-view'))
    {
        if(jQuery('form#product_addtocart_form'))
        {
            var productForm = jQuery('form#product_addtocart_form');
            var sizeSelect = jQuery('ul.selectSize');
            var sizeSelectText = jQuery('li#selectSizeText');
            
            if(sizeSelect.length == 1)
                {
                    var sizeOptions = jQuery(sizeSelect).find('select#attribute145');
                    if(jQuery('select#attribute145').children('option').length == 2)
                    {
                        var sizeOptionHasOne = jQuery(sizeOptions).find('option[value="130"]').html().toLowerCase() == "one" ? true : false;

                        if(sizeOptionHasOne)
                        {
                            // Click size option ONE
                            jQuery(sizeOptions).find('option[value="130"]').attr('selected', 'selected');

                            // Remove text and input field
                            jQuery(sizeSelect).css('display', 'none');
                            jQuery(sizeSelectText).css('display', 'none');
                            jQuery(productForm).find('input#qty').css('marginLeft', '0px');
                        }
                    }
                }
        }
    }
});
