//var qlookURL must be declared outside of quicklook.js file
Event.observe(window, 'load', function(){ready()});
// var declarations
var prev = null;
var qlookJSON;
var qlookCartJSON;
var imgArray = new Array();
var incrementVar = 0; 
var productVariant = {}; productVariant.data = [];
var qlookWin = $j(window);
var qlookDoc = $j(document);
//ready() Window Onload Scripts
function ready(){
  if(enableQlook){
  	jqlookZoom = $j('#qlookZoom');
  	jqlookBox = $j('#qlookBox');
  	jqlookContent = $j('#qlookContent');
  	jqlookX = $j('#qlookX');
  	jqlookZoom.css({display:'none'});
  	intializeqlookTxt = $j('#searchresults div.qlookTxt');
	intializeqlookImg = $j('#searchresults div.image img');
  	intializeqlookTxt.each(function(){$j(this).css({left:'-71px'});}).click(beginQL);
	intializeqlookImg.mouseover(function(){showQlook(this)});
	buildOverlay();
	setqlookBox();
  }
}
//activateEscape()
var activateEscape = function(bool){
	if(bool){
	jqlookX.click(closeOverlay);
	jqlookOverlay.click(closeOverlay);
	}else{
	jqlookX.unbind('click',closeOverlay);
	jqlookOverlay.unbind('click',closeOverlay);
	}
}
//addThis()
var addThis = function() {
	var upc = $('upc').value;
	var listPrice = $('listPrice').value;
	var salePrice = $('salePrice').value;
	var quantity = $('quantity').value;
	prclv_cart_add('clnt_1',customerId,sessionId,cartId,timeStamp,'Add to Cart',upc,'',salePrice,listPrice,quantity,sessionId,'','');
	return false;
}
//addThisSet()
var addThisSet = function(){
	var upc = $A($$('#variationsnippet input.formProductSetUPC'));
	var listPrice = $A($$('#variationsnippet input.formProductSetListPrice'));
	var salePrice = $A($$('#variationsnippet input.formProductSetSalePrice'));
	var quantity = $A($$('#variationsnippet input.formProductSetQuantity'));
	var setNo = upc.length;
	for(i=0;i<setNo;i++){
	prclv_cart_add('clnt_1',customerId,sessionId,cartId,timeStamp,'Add to Cart',upc[i].value,'',salePrice[i].value,listPrice[i].value,quantity[i].value,sessionId,'','');	
	}
}
//ajaxQlookCart() ajaxCall
var ajaxQlookCart=function(qid,el){
	$j.get(qlookCartURL,{pid:encodeURI(qid),'qlook':'true'},function(data){handleCartResponse(data)},'html');
}
//ajaxQlookReq() ajaxCall
var ajaxQlookReq=function(qid,el){
	$j.getJSON(qlookURL,{qid:encodeURI(qid),'currentOptionModel':currentOptionModel},function(json){handleResponse(json,el)});
}
//beginQL()
var beginQL = function(e){
	activateEscape(false);
	$j('#leftnavigation form select').each(function(n){$j(this).css({display:'none'})});
	jqlookOverlay.css({display:'block'}).animate({opacity:'0.8'},'fast','swing',function(){growqlookBox(e.target)});
}
//buildOverlay()
function buildOverlay(){
	jqlookOverlay = $j('<div>').attr({id:'qlookOverlay'}).css({zIndex:'8000',position:'absolute',left:'0px',backgroundColor:'#000000',cursor:'pointer',opacity:'0.0',display:'none'});
	jqlookOverlay.appendTo($j('body'));
	jqlookBox.appendTo($j('body'));
	qlookWin.resize(function(){setOverlay()});
	qlookWin.scroll(function(){setOverlay()});
	setOverlay();
}
//cartImagesOnload()
var cartImagesOnload = function(){
	tracker = 0;
	imgsj = $j('#variationsnippet img');
	imgsj.each(function(n){
		this.onload = function(){
			tracker++;
			if(tracker==imgsj.size()){ 
			growQlookBoxInterval();
			}
		}
	});
}
//closeOverlay(func)
function closeOverlay(){
	jqlookContent.css({display:'none',opacity:'0'});
	jqlookBox.css({display:'none',width:'200px',height:'420px',marginLeft:'-100px'});
	jqlookOverlay.animate({opacity:'0'},'fast','swing',function(){jqlookOverlay.css({display:'none'})});
	$j('#leftnavigation form select').each(function(n){$j(this).css({display:'block'})});
}
//growqlookBox(el)
var growqlookBox=function(el){
	setqlookBox();
	jqlookBox.css({display:'block'});
	jqlookBox.animate({width:'660px',marginLeft:'-330px'},'fast','swing',function(){ajaxQlookReq($j(el).find('div.qlookid').html(),el)});
	jqlookContent.css({opacity:'0'});
}
//growQlookBoxInterval
var growQlookBoxInterval = function(){
	var qheight = (jqlookContent.height()<jqlookBox.height())?jqlookBox.height():jqlookContent.height();
	jqlookBox.animate({height:qheight+20+'px'},'fast','swing',function(){showqlookContent()});
}
//handleCartResponse()
var handleCartResponse=function(data,el){
	$j('#variationsnippet').html(data);
	cartImagesOnload();
}
//handleResponse()
var handleResponse=function(responseText,el){
	var rtp=responseText.product;
	var img=new Image();
	img.onload=function(){
		ajaxQlookCart($j(el).find('div.qlookid').html(),el);
	};
	img.src='http://barneys.richfx.com.edgesuite.net/image/media/PG_'+responseText.product.sku+'_FS.jpg';
	$j('#qlookImg').css({background:'url('+img.src+') no-repeat top left'});
	if(rtp.designer==''){$('qidDesigner').style.display='none'}else{$('qidDesigner').innerHTML=rtp.designer;}
	if(rtp.name==''){$('qidName').style.display='none'}else{$('qidName').innerHTML=rtp.name;}
	if(rtp.color==''){$('qidColor').style.display='none'}else{$('qidColor').innerHTML=rtp.color;}
	if(rtp.salesPriceAvailable=='true'){
	  if(rtp.showStandardPrice=='true'){
	  	$('qidProductprice').style.display='block';$('qidProductprice').innerHTML=rtp.productprice;
	  	$('qidListprice').style.display='none';$('qidListprice').innerHTML='';
	  	$('qidSaleprice').style.display='none';$('qidSaleprice').innerHTML='';
	  }else{
	  	$('qidProductprice').style.display='none';$('qidProductprice').innerHTML='';
	  	$('qidListprice').style.display='block';$('qidListprice').innerHTML=rtp.listprice;
	  	$('qidSaleprice').style.display='block';$('qidSaleprice').innerHTML=rtp.saleprice+' SALE';
	  }
	}
	if(rtp.description==''){$('qidDescription').style.display='none'}else{$('qidDescription').update(rtp.description.unescapeHTML());}
	if(rtp.sku==''){$('qidSku').style.display='none'}else{$('qidSku').innerHTML='Barneys style #: '+responseText.product.sku;}
	if(rtp.url!=''){$('qlookMainHref').href=rtp.url;}
	$('thumbsContainer').update('');
	for(i=1;i<rtp.thumbCount+1;i++){
		var TN = '_TN.jpg';
		var FS = '_FS.jpg';
		var src = (i==1)?'http://barneys.richfx.com.edgesuite.net/image/media/PG_'+rtp.sku:'http://barneys.richfx.com.edgesuite.net/image/media/PG_'+rtp.sku+'__'+i;
		var thumbel = document.createElement('div');
		$('thumbsContainer').appendChild(thumbel);
		thumbel.id='thumbs_'+i;
		$('thumbs_'+i).addClassName('qlookThumb');
		thumbel.style.background='url('+src+TN+') no-repeat top left';
		thumbel.value = src+FS;
		imgArray[i]=new Image();imgArray[i].src=src+FS;
		thumbel.observe('click', setQlookImg);
	}
	$j('<div>').css({clear:'both'}).appendTo($j('#thumbsContainer'));	
}
//handleVariantData
function handleVariantData(upcArg,eskuArg,listPriceArg,salePriceArg,stockArg){
	productVariant.data[incrementVar] = {upc : upcArg, esku : eskuArg, listPrice : listPriceArg, salePrice : salePriceArg, stock: stockArg};
	incrementVar++;
}
//setqlookBox
var setqlookBox=function(){
	jqlookBox.css({top:$j(window).scrollTop()+130+'px',left:'50%',width:'200px',marginLeft:'-100px'});
}
//setQlookImg
var setQlookImg=function(e){
	$j('#qlookImg').css({background:'url('+e.target.value+') no-repeat top left'});
}
//setOverlay() 
var setOverlay=function(){
	jqlookOverlay.css({left:'50%',marginLeft:'-'+Math.round(qlookWin.width()/2)+'px',top:qlookWin.scrollTop()+'px',width:qlookWin.width()+'px',height:qlookWin.height()+'px'});
}
//showQlook()
var showQlook=function(el){
	var s=$j(el).closest('div.image').find('div.qlookTxt');
	if(prev!=null) $j(prev).animate({left:'-71px'},'fast','swing');
	$j(s).animate({left:'0px'},'fast','swing');
	prev=s;
}
//showqlookContent()
var showqlookContent=function(){
	jqlookContent.css({display:'block'}).animate({opacity:'1.0'},'fast','swing',function(){activateEscape(true)});
}
