/*jQuery Tooltip plugin 1.3
* http://bassistance.de/jquery-plugins/jquery-plugin-tooltip/
*/
;(function($){var helper={},current,title,tID,IE=$.browser.msie&&/MSIE\s(5\.5|6\.)/.test(navigator.userAgent),track=false;$.tooltip={blocked:false,defaults:{delay:200,fade:false,showURL:true,extraClass:"",top:15,left:15,id:"tooltip"},block:function(){$.tooltip.blocked=!$.tooltip.blocked;}};$.fn.extend({tooltip:function(settings){settings=$.extend({},$.tooltip.defaults,settings);createHelper(settings);return this.each(function(){$.data(this,"tooltip",settings);this.tOpacity=helper.parent.css("opacity");this.tooltipText=this.title;$(this).removeAttr("title");this.alt="";}).mouseover(save).mouseout(hide).click(hide);},fixPNG:IE?function(){return this.each(function(){var image=$(this).css('backgroundImage');if(image.match(/^url\(["']?(.*\.png)["']?\)$/i)){image=RegExp.$1;$(this).css({'backgroundImage':'none','filter':"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=crop, src='"+image+"')"}).each(function(){var position=$(this).css('position');if(position!='absolute'&&position!='relative')$(this).css('position','relative');});}});}:function(){return this;},unfixPNG:IE?function(){return this.each(function(){$(this).css({'filter':'',backgroundImage:''});});}:function(){return this;},hideWhenEmpty:function(){return this.each(function(){$(this)[$(this).html()?"show":"hide"]();});},url:function(){return this.attr('href')||this.attr('src');}});function createHelper(settings){if(helper.parent)return;helper.parent=$('<div id="'+settings.id+'"><h3></h3><div class="body"></div><div class="url"></div></div>').appendTo(document.body).hide();if($.fn.bgiframe)helper.parent.bgiframe();helper.title=$('h3',helper.parent);helper.body=$('div.body',helper.parent);helper.url=$('div.url',helper.parent);}function settings(element){return $.data(element,"tooltip");}function handle(event){if(settings(this).delay)tID=setTimeout(show,settings(this).delay);else
show();track=!!settings(this).track;$(document.body).bind('mousemove',update);update(event);}function save(){if($.tooltip.blocked||this==current||(!this.tooltipText&&!settings(this).bodyHandler))return;current=this;title=this.tooltipText;if(settings(this).bodyHandler){helper.title.hide();var bodyContent=settings(this).bodyHandler.call(this);if(bodyContent.nodeType||bodyContent.jquery){helper.body.empty().append(bodyContent)}else{helper.body.html(bodyContent);}helper.body.show();}else if(settings(this).showBody){var parts=title.split(settings(this).showBody);helper.title.html(parts.shift()).show();helper.body.empty();for(var i=0,part;(part=parts[i]);i++){if(i>0)helper.body.append("<br/>");helper.body.append(part);}helper.body.hideWhenEmpty();}else{helper.title.html(title).show();helper.body.hide();}if(settings(this).showURL&&$(this).url())helper.url.html($(this).url().replace('http://','')).show();else
helper.url.hide();helper.parent.addClass(settings(this).extraClass);if(settings(this).fixPNG)helper.parent.fixPNG();handle.apply(this,arguments);}function show(){tID=null;if((!IE||!$.fn.bgiframe)&&settings(current).fade){if(helper.parent.is(":animated"))helper.parent.stop().show().fadeTo(settings(current).fade,current.tOpacity);else
helper.parent.is(':visible')?helper.parent.fadeTo(settings(current).fade,current.tOpacity):helper.parent.fadeIn(settings(current).fade);}else{helper.parent.show();}update();}function update(event){if($.tooltip.blocked)return;if(event&&event.target.tagName=="OPTION"){return;}if(!track&&helper.parent.is(":visible")){$(document.body).unbind('mousemove',update)}if(current==null){$(document.body).unbind('mousemove',update);return;}helper.parent.removeClass("viewport-right").removeClass("viewport-bottom");var left=helper.parent[0].offsetLeft;var top=helper.parent[0].offsetTop;if(event){left=event.pageX+settings(current).left;top=event.pageY+settings(current).top;var right='auto';if(settings(current).positionLeft){right=$(window).width()-left;left='auto';}helper.parent.css({left:left,right:right,top:top});}var v=viewport(),h=helper.parent[0];if(v.x+v.cx<h.offsetLeft+h.offsetWidth){left-=h.offsetWidth+20+settings(current).left;helper.parent.css({left:left+'px'}).addClass("viewport-right");}if(v.y+v.cy<h.offsetTop+h.offsetHeight){top-=h.offsetHeight+20+settings(current).top;helper.parent.css({top:top+'px'}).addClass("viewport-bottom");}}function viewport(){return{x:$(window).scrollLeft(),y:$(window).scrollTop(),cx:$(window).width(),cy:$(window).height()};}function hide(event){if($.tooltip.blocked)return;if(tID)clearTimeout(tID);current=null;var tsettings=settings(this);function complete(){helper.parent.removeClass(tsettings.extraClass).hide().css("opacity","");}if((!IE||!$.fn.bgiframe)&&tsettings.fade){if(helper.parent.is(':animated'))helper.parent.stop().fadeTo(tsettings.fade,0,complete);else
helper.parent.stop().fadeOut(tsettings.fade,complete);}else
complete();if(settings(this).fixPNG)helper.parent.unfixPNG();}})(jQuery);

//Shop JS
$(document).ready(function(){
	//Hide a Couple Elements
	$('.none,#prod-error').hide();
	
	var infoTitle = '';
	var infoStyle = '';
	var infoLgPhoto = '';
	var infoPhoto = '';
	var infoPrice = '';
	var infoSalePrice = '';
	var infoStatus = '';
	var infoSize = '';
	
	var selID = '';
	var formID = '';
	
	var errorStock = 'Sorry for the inconvenience. Please check back soon!';
	var errorBelow = 'See message below.';
	var errorSubmit = 'Choose an item first.';
	
	formID = $('form.foxycart').attr('id');
	
	//Shop Disable Form Button
	if ( $('#prod-style').length > 0 ){
		$('#prod-submit').attr("disabled", "disabled").addClass('disabled');
	}
	
	//Remind User to choose a product!
	$( '#step-3' ).hover( function() {
		if ($(this).find('input').hasClass('disabled') == true){
			$('#step-3 label').hide().html(errorSubmit).fadeIn();
		}
	});
	
	// swap the item image, append to the price or description	
	$( '#prod-style' ).change( function() {
		
		selID = $('#prod-style option:selected').attr('id');
		
		if($(this).val() != '')
		{
			$('#prod-submit').removeAttr('disabled').removeClass('disabled');
		}
		else
		{
			$('#prod-submit').attr("disabled", "enabled").addClass('disabled');

		}
		
		switchProd();
		//Adjust Hidden Form Values for FoxyCart
		$('#prod-size').val(infoSize);
	});
	
	//Thumbnail Switcher
	$( '#prod-thumbs a' ).click( function() {
		selID = $(this).attr('id');
		$('#prod-submit').attr("disabled", "disabled").addClass('disabled');
		$("#prod-style option[value='']").attr('selected', 'selected');
		switchProd();
		return false;
	});
	
	//Grab Item Variation Array Info
	function switchProd(){
		infoTitle = $('#prod-info h3').text();
		infoStyle = (itemV[ formID ][ selID ]['info_style']);
		infoLgPhoto = (itemV[ formID ][ selID ]['info_lg_photo']);
		infoPhoto = (itemV[ formID ][ selID ]['info_photo']);
		infoPrice = (itemV[ formID ][ selID ]['info_price']);
		infoSalePrice = (itemV[ formID ][ selID ]['info_sale_price']);
		infoStatus = (itemV[ formID ][ selID ]['info_status']);
		infoSize = (itemV[ formID ][ selID ]['info_size']);

		$('#prod-photo img').removeAttr('height').attr('src', infoPhoto);
		$('#prod-preview').attr('href', infoLgPhoto).attr('title', infoTitle + ' - ' + infoStyle);

		updateStatus();
		
		//What's up with the status
		if (infoStatus == "New")
		{	
			clearError();
		}
		else if (infoStatus == "Out of Stock")
		{
			$('#prod-error').hide().html(infoStyle + " is currently <strong>" + infoStatus + "</strong>. " + errorStock).fadeIn();
			$('#prod-submit').attr("disabled", "disabled").addClass('disabled');
		}
		else
		{
			clearError();
		}
		
		//Adjust Price if it's on Sale
		if (infoSalePrice != "")
		{
			$('#prod-display-price').html('<strike>$' + infoPrice + '</strike> <strong>SALE $' + infoSalePrice + '</strong>');
			$('#prod-price').val(infoSalePrice);
		}
		else
		{
			$('#prod-display-price').text('$' + infoPrice);
			$('#prod-price').val(infoPrice);
		}
		$('#prod-display-style').text(infoStyle);
	}
	
	//Clear Error Message & Hide Status
	function clearError(){
		$('#prod-error, #step-3 label').fadeOut();
		$('#prod-submit').removeAttr('disabled').removeClass('disabled');
	}
	
	function updateStatus(){
		if (infoSalePrice != "")
		{
			$('#prod-status').removeClass().addClass('sale').show();
		}
		else if (infoStatus == "New")
		{
			$('#prod-status').removeClass().addClass('new').show();	
		}
		else
		{
			$('#prod-status').removeClass().hide();
		}
	}
	
	//Show a large photo preview
	$('#prod-preview').fancybox();
	$('#prod-preview').append('<span class="zoom">View Larger</span>');
	
	//Display Tooltips
	$('#prod-thumbs a').tooltip({
		track: true,
		delay: 0,
		showURL: false
	});
});
