function pdp(){
	var itemInfo = $ES('.itemDetails');
	itemInfo.each(addMiniPdpEvents);
}Onload.add(pdp);


function addMiniPdpEvents(el,index,group){
	
	var quickButton = $E('.quickLookBtn',el);
	if(quickButton){
		quickButton.addEvent('click',showMiniPdp.bindWithEvent([el,el.getParent().getParent()]));
	}
	el.addEvent('mouseenter',function(){
		el.setStyle('position','relative');
		if(quickButton)quickButton.setStyle('display','block');
	});
	
	el.addEvent('mouseleave',function(){
		el.setStyle('position','static');
		quickButton.setStyle('display','none');
	});
	//el.getParent().getParent().addEvent('mouseleave',hideMiniPdp.bindWithEvent([el,el.getParent().getParent()]));
	el.addEvent('click',productDetailsPage.bindWithEvent([el,el.getParent().getParent()]));
}


function showMiniPdp(event){
	urchinTracker('product wall/knife overlay/id:'+this[1].id);
	new Event(event).stop();
	
	var windowHeight = window.getHeight().toInt();
	var windowTop = window.getScrollTop().toInt();
	var topValue = (windowHeight - 436)/2 + windowTop;

	var leftValue = $('pwContent').getLeft().toInt() + 161;
	
	//if($('.pagination'))$E('.pagination').setStyle('visibility','hidden');
	var el = this[1];
	var target = this[1].getFirst();
	var id = this[1].id.split('_')[1];
	if(!$('miniPdp_'+id)){
		var positionTarget = this[0].getParent().getParent(); 
		
	
		if($E('.zoomOverlay',this[1])){
			var miniPdp = $E('.zoomOverlay',this[1]);
			if(miniPdp) miniPdp.remove();
		}
		var elementTop = el.getTop();
		var windowTop = window.getScrollTop();		
		var difference = elementTop - windowTop;
		var bgImg = "";
		if(window.ie6){
			bgImg = 'prod_bottom.gif'
		} else {
			bgImg = 'prod_bottom.png'
		}
		if(difference < 368){
			ypos = positionTarget.offsetTop + 75;
			if(window.ie6){
				bgImg = 'prod_top.gif'
			} else {
				bgImg = 'prod_top.png'
			}
		}
		var miniPdp = new Element('div',{
			'class':'zoomOverlay',
			'id':'miniPdp_'+id,
			'styles':{
				'position':'absolute',
				'opacity': 1,
				'display':'block',
				'z-index':'10000',
				'top':topValue,
				'left':leftValue,
				'background':'url(resources/images/backgrounds/'+bgImg+') top left no-repeat'
			}
		});
		createWallOverlay(miniPdp);
		
		miniPdp.injectInside($E('body'));
		var url = '/index.cfm?event=product.detail.to.json&ProductID=' + id;
		var request = new Json.Remote(url, {
			onRequest: function(){
					miniPdp.setHTML('<img src="resources/images/embed/loading.gif" align="center" valign="middle" style="margin:50px 0 0 50px;" />');
					//fireTransition(miniPdp)
			},
			onComplete: function(jsonObj){
				addData(jsonObj, miniPdp); 
			}
		});
		if(miniPdp && !miniPdp.getFirst()){
			request.send();
		}
	}
	
}

function createWallOverlay(miniPdp){
	var overlay = new Element('div');
	if(window.ie){
		overlay.setStyles({
			'position':'absolute',
			'background':'#000000',
			'width': window.getScrollWidth().toInt(),
			'height':window.getScrollHeight().toInt(),
			'z-index': 1010,
			'opacity':.4,
			'top':0,
			'left':0
		});		
	}
	else{
		overlay.setStyles({
			'position':'absolute',
			'background':'url(/resources/images/backgrounds/overlayBg.gif)',
			'width': window.getScrollWidth().toInt(),
			'height':window.getScrollHeight().toInt(),
			'z-index': 1010,
			'opacity':1,
			'top':0,
			'left':0
		});
	}
	overlay.id="pwOverlay";
	overlay.addEvent('click',removeOverlay.bindWithEvent([overlay,miniPdp]));
	overlay.injectInside($E('body'));
	
}

function hideMiniPdp(event){
	//if($E('.pagination'))$E('.pagination').setStyle('visibility','visible');
	var id = this[1].id.split('_')[1];
	var miniPdp = $E('.zoomOverlay',this[1]);
	if(miniPdp) miniPdp.remove();
	
	
}


function productDetailsPage(event){
	new Event(event).stop();
	var id = this[1].id.split('_')[1];
	window.location ='/index.cfm?event=product.detail&productID='+id;
}



function fireTransition(target){
	var fx = new Fx.Styles(target, {duration:500, wait:true, transition: Fx.Transitions.Quad.easeOut,
		onComplete:function(prod){
		}
	});
	fx.start({
		'opacity':[1]
	})
}



function addData(prod, target) {
	if($(target)){
		$(target).empty();
		
		var closeBtn = new Element('a');
		closeBtn.addClass('closeMiniPdpBtn');
		closeBtn.addEvent('click',removeOverlay.bindWithEvent([target,$('pwOverlay')]));
		closeBtn.injectInside(target);
		
		var prodImg = new Element('div',{'id':'prodImg'});
		var miniPdpImage = new Asset.image(SCENE7URL+'/is/image/BuckKnives/miniPDP?$mpdpSharp$&$product=is{BuckKnives/' + prod.model + '_1?scl=1}');
		miniPdpImage.id = prod.model;
		miniPdpImage.setAttribute('alt',prod.name);
		miniPdpImage.injectInside(prodImg);
		prodImg.injectInside(target);
		
		var prodIcons = new Element('div');
		prodIcons.id = 'prodIcons';
		prodIcons.injectInside(target);
		
		var prodInfo = new Element('div');
		prodInfo.id = 'prodInfo';
		
		
		var modelNumber = new Element('span');
		modelNumber.addClass('modleNumber');
		modelNumber.setText(prod.model);
		modelNumber.injectInside(prodInfo);
		
		var itemName = new Element('span');
		itemName.addClass('itemName');
		itemName.setHTML(prod.name);
		itemName.injectInside(prodInfo);
		
		var price = new Element('span');
		price.addClass('price');
		if (prod.discount) {
			price.setStyle('text-decoration', 'line-through');
			price.setText(formatCurrency(prod.price));
		} else {
			price.setText(formatCurrency(prod.price));
		}
		price.injectInside(prodInfo);

		if (prod.discount) {
			var discountprice = new Element('span',{'class':'discountprice','styles':{'color':'#FF0000','margin-left':10}});
			discountprice.addClass('price');
			discountprice.setText(formatCurrency(prod.price*(prod.discount/100)));
			discountprice.injectInside(prodInfo);
		}

		var clear = new Element('div');
		clear.addClass('clear');
		clear.setText(' ');
		clear.injectInside(prodInfo);
		
		var desc;
		
		var attribs = prod.attributes.data;
		var cat = '';
		
		if (attribs.CATEGORY_END_USE){
			cat = attribs.CATEGORY_END_USE;
		}
		
		if (cat == 'H' || cat == 'O' || cat == 'T' || cat == 'E' || cat == 'L') 
		{
			desc = new Element('ul');
			var descHTML = '';
			if (attribs.BLADE_LENGTH && attribs.BLADE_LENGTH != '' && attribs.BLADE_LENGTH != ' ')
				descHTML = descHTML + '<li>Blade Length: ' + attribs.BLADE_LENGTH + '</li>';
				 
			if (attribs.BLADE_MATERIAL && attribs.BLADE_MATERIAL != '' && attribs.BLADE_MATERIAL != ' ')
				descHTML = descHTML + '<li>Blade Material: ' + attribs.BLADE_MATERIAL + '</li>';

			if (attribs.HANDLE_MATERIAL && attribs.HANDLE_MATERIAL != '' && attribs.HANDLE_MATERIAL != ' ')
				descHTML = descHTML + '<li>Handle Material: ' + attribs.HANDLE_MATERIAL + '</li>';

			desc.setHTML(descHTML);
		}		
		else
		{
			desc = new Element('p');
			desc.setHTML(prod.description);
		}
		desc.setAttribute('class','miniPdpDesc');
		desc.injectInside(prodInfo);
		
		prodInfo.injectInside(target);
		
		var prodInfoCart = new Element('div');
		prodInfoCart.id = 'prodInfoCart';
		if(prod.hasvariations == 0){
			if(prod.quantity > MIN_QTY){
				var qtyField = new Element('input');
				qtyField.setAttribute('type','text');
				qtyField.setAttribute('name','quantity');
				qtyField.setAttribute('id','quantity');
				qtyField.setAttribute('value','1');
				qtyField.setAttribute('class','overlayQuantity text');
				qtyField.setStyles({
					'width':'20px',
					'display':'block',
					'margin':'0 0 5px 0'
				});
				
				qtyField.injectInside(prodInfoCart);
			
				var upc = new Element('input');
				upc.setAttribute('type','hidden');
				upc.setAttribute('name','upc');
				upc.setAttribute('value',prod.model);
				
				upc.injectInside(prodInfoCart);
				
				var addToCart = new Element('a');
				addToCart.className = 'overlaySubmit_btn addToCart clear_text';
				addToCart.setAttribute('href','#');
				addToCart.setText('Add To Cart');
				addToCart.setStyle('background','url(/resources/images/buttons/addToCart_btn.gif) no-repeat top left');
				addToCart.addEvent('click',miniPdpAddToCart.bindWithEvent([qtyField,upc,target]));
				addToCart.injectInside(prodInfoCart);
			}else if (prod.canbecustomized == 1){
				/*
				var outOfStock = new Element('a');
				outOfStock.setAttribute('href','/index.cfm?event=company.dealerlocator');//+'&upc='+prod.productid);
				outOfStock.addClass('outOfStock');
				outOfStock.setText('Find a Dealer');
				outOfStock.injectInside(prodInfoCart);
				*/
				var outOfStock = new Element('a');
				outOfStock.addClass('outOfStock');
				outOfStock.setText('Build One');
				outOfStock.injectInside(prodInfoCart);
			}else{
				/*
				var outOfStock = new Element('a');
				outOfStock.setAttribute('href','/index.cfm?event=company.dealerlocator');//+'&upc='+prod.productid);
				outOfStock.addClass('outOfStock');
				outOfStock.setText('Find a Dealer');
				outOfStock.injectInside(prodInfoCart);
				*/
				var outOfStock = new Element('a');
				outOfStock.addClass('outOfStock');
				outOfStock.setText('Out of Stock');
				outOfStock.injectInside(prodInfoCart);
			}
		}
		
		var viewDetails = new Element('a',{
			'href':'/index.cfm?event=product.detail&productid='+prod.productid,
			'events': {
		        'click': function(){
		            urchinTracker('product wall overlay/details/upc:'+prod.productid);
		        }
		    },
		    'class':'viewDetails'
		});
		viewDetails.setText('View Details');
		
		/////////
		
//		var viewDetails = new Element('a');
//		viewDetails.setAttribute('href','/index.cfm?event=product.detail&productID='+prod.productid);
//		viewDetails.addClass('viewDetails');
//		viewDetails.setText('View Details');
		viewDetails.injectInside(prodInfoCart);
		
		var clear = new Element('div');
		clear.addClass('clear');
		clear.injectInside(prodInfoCart);
		prodInfoCart.injectInside(target);		
		
		/*
	 	$(target).setHTML(
	 		'<div id="prodImg">' +
	 			'<img src="http://s7d3.scene7.com/is/image/BuckKnives/mPDP?$mpdpSharp$&$product=is{BuckKnives/' + prod.model + '_1?scl=1}" />' +
	 		'</div>' + 
	 		'<div id="prodIcons">&nbsp;</div>' +
	 		'<div id="prodInfo">' +
	 			'<span class="modleNumber">' + prod.model + '<span>' +
	 			'<span class="itemName">' + prod.name +'</span>' +
	 			'<span class="price">' + prod.price + '</span>' +
	 			'<p>' + prod.description + '<a href="/?event=product.detail&productID=' + prod.productid + '" class="viewMore">View More Details</a></p>' +
			'</div>' +
	 		'<div id="prodInfoCart">' +
				'<form id="addToCartOverlay" action="/index.cfm" method="post"><input type="hidden" name="event" value="cart.additem" />
				* <input type="hidden" name="upc" value="' + prod.model + '" />
				* <input type="text" name="quantity" id="quantity" value="1" class="overlayQuantity text">
				* </input>
				* <input src="resources/images/buttons/addToCart_btn.gif" class="addToCart overlaySubmit_btn clear_text" type="image">
			* </form>' + 		
	 		'</div>');
	 		* 
 		*/
	 		
	}
}
/*
 var item = $ES('.item');
	item.each(function(el){
		el.addEvents({
			'mouseenter': function(e) {
				$ES('.pagination').setStyle('visibility','hidden');
				el.addClass('current');
				var xpos = el.getLeft() - 70;
				var ypos = el.getTop() + 120;
				var absTop = ypos - window.getScrollTop();
				var newEl = new Element('div', {
				    'style': {
				        'display': 'none',
				        'opacity': 0
				    },
				    'class': 'zoomOverlay'
				}).injectTop(el);
				//newEl.injectTop(el);
				target = el.getFirst();
				// should now be center of element, now set offset to get arrow in absolute center			
				if(absTop > 415){
					target.setStyles({
						'opacity':0,
						'display':'block',
						'top':-300,
						'left':-75
					});
				} else {
					if(window.ie6){
						var bgImg = 'prod_top.gif'
					} else {
						var bgImg = 'prod_top.png'
					}
					target.setStyles({
						'opacity':'0',
						'display':'block',
						'top':120,
						'left':-75,
						'background':'url(resources/images/backgrounds/'+bgImg+') top left no-repeat'
					});
				};
				var id = el.id;
				var ids = id.split('_');
				var id = ids[1];
				var url = '/index.cfm?event=product.detail.to.json&ProductID=' + id;
				var request = new Json.Remote(url, {
					onRequest: function(){
						target.setHTML('<img src="/resources/images/embed/loading.gif" align="center" valign="middle" style="margin:50px 0 0 50px;" />');
						fireTransition(target)
					},
					onComplete: function(jsonObj){
						addData(jsonObj, target); 
					}
				}).send(request);
			},
			'mouseleave': function(e) {
				el.getFirst().remove();
				$ES('.zoomOverlay').setStyle('display','none');
				$ES('.pagination').setStyle('visibility','visible');
				el.removeClass('current');
			}
		});
	}); 
 * */