	// ajaxAdd.js
var xColorArray = new Array();
var xSkuArray = new Array;
var xProdImage = new Array;
var copyOverride = "";
function colorObj(seq,name,oprice,lprice,copy,image,skus,price){  
	this.seq = seq;  
	this.name = name; 
	this.oprice = oprice; 
	this.lprice = lprice; 
	this.copy = copy;
	this.image = image;
	this.skus = skus;
	this.price = price;
}

function skuObj(sku,catentry,size,seq,backdate,backordered){  
	this.sku = sku;  
	this.catentry = catentry; 
	this.size = size; 
	this.seq = seq;
	this.backdate = backdate;
	this.backordered = backordered;
}

function customSort(a,b){
   return(a.seq-b.seq);
}

function closeAddItem(){
	myEffects.fade('editMode');
	changeObjectProperty('editCtn', 'display', 'none');
	changeObjectVisibility('sizeBox','visible');
	changeObjectVisibility('size','visible');
	changeObjectVisibility('sizelist','visible');
}

var xml = null;
var currOrderItemId = null;
function editItem(product, cseq, page, orderItemId, category, slot, mainCategory, ovrCopy){
	currOrderItemId = orderItemId;
	copyOverride = ovrCopy || "";
	makeXRequest('/webapp/wcs/stores/servlet/EditItemDisplay',product,cseq,page, category,slot, mainCategory);
}

function makeXRequest(url, product,cseq,page,category,slot, mainCategory) {
    var http_request = false;
	var getstr = "?";
	getstr += "storeId="+globalStoreId+"&";
	getstr += "langId="+langId+"&";
	getstr += "catalogId="+globalCatalogId+"&";
	getstr += "productId="+product;
	if(category != undefined){
		getstr += "&categoryId="+category;
	}
    if (window.XMLHttpRequest) { // Mozilla, Safari,...
        http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType) {
            http_request.overrideMimeType('text/xml');
        }
    } else if (window.ActiveXObject) { // IE
        try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
        }
    }

    if (!http_request) {
       // alert('Giving up :( Cannot create an XMLHTTP instance');
        return false;
    }
    getstr = url + getstr;
    http_request.onreadystatechange = function() { getXContents(http_request, cseq, page, category, slot, mainCategory, product); };
    http_request.open('Get', getstr, true);
    http_request.send('');
}

function getXContents(http_request, seq, page, category, slot, mainCategory, product) {
    if (http_request.readyState == 4) {
        if (http_request.status == 200) {
        	xml = http_request.responseXML;
        	showProduct(seq, page, category, slot, mainCategory, product);
        } else {
        }
    } else {
    }
}
var xtemplate;
var selectedSize;
var prodCopy;
var xOnesize = false;
var xListObjsize;
var colNumber;
var colName;
var currSlot;
var currCat;
function showProduct(selectedSeq, page, category, slot, mainCategory, product){
	xOnesize = false;
	var colorFound = false;
	var numItems = xml.getElementsByTagName('total')[0];
	
	function togSwatch(e){
		var t = YUE.getTarget(e);
		if(YUD.hasClass(t, "colorSwatch")){
			if(!YUD.hasClass(t,"highlight") && !YUD.hasClass(t,"selected")){
				YUD.addClass(t, "highlight");
			}else if(!YUD.hasClass(t,"selected")){
				YUD.removeClass(t,"highlight");
			}
		}else{
			return true;
		}
	}
	
	if (numItems){
		if (numItems.childNodes[0].nodeValue > 0){
			var html = '';
	    	var htmlL = '';
	    	var ppname = $('prodName') ? $('prodName').innerHTML : '';
	    	currSlot = slot;
	    	currCat = mainCategory;
	    	var name = xml.getElementsByTagName('name')[0];
	    	var collection = xml.getElementsByTagName('collection')[0];
	    	colNumber = collection.childNodes[0].nodeValue;
	    	colName = name.childNodes[0].nodeValue;
	    	var parentCol = collection.childNodes[0].nodeValue;
	    	prodCopy = (xml.getElementsByTagName('prodcopy')[0]).childNodes[0] ? (xml.getElementsByTagName('prodcopy')[0]).childNodes[0].nodeValue : "";
	    	xtemplate = (xml.getElementsByTagName('template')[0]).childNodes[0] ? (xml.getElementsByTagName('template')[0]).childNodes[0].nodeValue : "";
	    	var subtitle = '';
	    	var colors = xml.getElementsByTagName('color');
	    	var egc = colNumber == 'EGIFTCARD' ? true : false;
	    	if(!egc){
	    		if($('egcCtn')){ $('egcCtn').parentNode.removeChild($('egcCtn')); }
	    		$('editProdLft').style.display = 'block';
				$('editProdRgt').style.display = 'block';
		    	if ((xml.getElementsByTagName('sub')[0]).childNodes[0] != null){
		    		subtitle = (xml.getElementsByTagName('sub')[0]).childNodes[0].nodeValue;
		    	}
		    	if(page != 'cart' && page != 'cartPromo' && page != 'wishEdit'){
		    		if(page != 'theNewLook'){
						//CM product view
						cmCreateProductviewTag(collection.childNodes[0].nodeValue, 'CTL: SLOT'+slot+': '+mainCategory+': ' + ppname + ':' + name.childNodes[0].nodeValue, eval(mainCategory.toString()+slot));
			    	}else{
			    		//CM product view for The New Look dept page
			    		cmCreateProductviewTag(collection.childNodes[0].nodeValue, name.childNodes[0].nodeValue, 'Category '+ category);
			    	}
		    	}
		    	
		    	if (xtemplate == 'v'){
		    		var prodImageName = parentCol+'_01_400_x.jpg';
		    	}else{
		    		var prodImageName = parentCol+'_'+selectedSeq+'_400_x.jpg';
		    	}
		    	
		    	
		    	htmlL += '<img src="' + collPath + prodImageName + '" id="xProductImage" name="xProductImage" \/>';
		    	
		    	html += '<h3 class="xProdName">'+name.childNodes[0].nodeValue+'<\/h3>';
		    	html += '<p id="xProdColor"><\/p>';
		    	html += '<p id="xProdPrice"><span id="xProdOff">&nbsp;<\/span><\/p>';
				html += '<p id="xProdCopy"><\/p>';
				
				//html += '<div id="xProdSwatch">'
				if(xtemplate == 'v'){
					html += '<br \/><select name="xSizelist" class="product hcoSelect" onchange="setXColor(this.value, true);">';
					var initOption = 'Select One';
					if(product == 100451){ initOption = 'Select Amount';}
					html += '<option value="">' + initOption + '<\/option>';
					for(var u = 0; u != colors.length; u++){
						var currSeq = (xml.getElementsByTagName('cseq')[u]).childNodes[0].nodeValue;
						var currColor = (xml.getElementsByTagName('colorname')[u]).childNodes[0].nodeValue;
						
						if (selectedSeq == currSeq){
							html += '<option value="'+currSeq+'" selected>'+currColor+'<\/option>';
						} else {
						 	html += '<option value="'+currSeq+'">'+currColor+'<\/option>';
						}
						if (selectedSeq == currSeq){
							colorFound = true;
						}
					}
					html += '<\/select><br \/>';
					
				}else if((xtemplate != 1) && (colors.length > 1)){
					for(var u = 0; u != colors.length; u++){
						var currSeq = (xml.getElementsByTagName('cseq')[u]).childNodes[0].nodeValue;
						var currColor = (xml.getElementsByTagName('colorname')[u]).childNodes[0].nodeValue;
						
						html += '<img class="colorSwatch" src="' + collPath + parentCol + '_' + currSeq + '_sw.gif" id="fdSwatch_' + currSeq + '" height="20" width="20" />';
						if (((u + 1) == 9) || ((u + 1) == 18) || ((u + 1) == 27) || ((u + 1) == 36) || ((u + 1) == 45)){
							html += '<br\/>';
						} 
						if (selectedSeq == currSeq){
							colorFound = true;
						}
					}
				} 	
				html += '<div id="xSizeBox"><\/div>';	
				//html +='<\/div>';
				if(page == 'wishEdit'){
					html += '<textarea name="field3" id="field3" onkeypress="limitChars(this, 150);" cols="30" rows="3">' + document.getElementById(currOrderItemId+'CommentCell').innerHTML + '<\/textarea><br\/><br\/>';
				}
				if(page == 'cart'){
					html += '<a href="javascript:submitAdd(\'cart\');" id="updatebtn" class="xUpdateBag updateBagBtn rolloverButton"><\/a><a href="javascript:HTB.closeFadeUp(null, $(\'editCtn\'));" id="xCancelBtn" class="cancelBtn rolloverButton"><\/a>';
				} else if( page == 'cartPromo'){
					html += '<a href="javascript:submitAdd(\'cartPromo\');" id="updatebtn" class="xAddToBag addToBagBtn rolloverButton"><\/a>   <a href="javascript:HTB.closeFadeUp(null, $(\'editCtn\'));" id="xCancelBtn"class=" cancelBtn rolloverButton"><\/a>';
				}else if(page == 'wishEdit'){
					html += '<a href="javascript:submitAdd(\'wishEdit\');" id="updatebtn" class="xAddToWish addToWishListBtn rolloverButton"><\/a>   <a href="javascript:HTB.closeFadeUp(null, $(\'editCtn\'));" id="xCancelBtn" class="cancelBtn rolloverButton"><\/a>';
				} else {
					if(page != 'theNewLook'){
						html += '<a href="javascript:submitAdd();" id="updatebtn" class="addToBagBtn rolloverButton"><\/a>   <a href="javascript:HTB.closeFadeUp(null, $(\'editCtn\'))" id="xCancelBtn" class="cancelBtn rolloverButton"><\/a>';
					} else {
						html += '<a href="javascript:submitAdd(\'newlook\');" id="updatebtn" class="addToBagBtn rolloverButton"><\/a>   <a href="javascript:HTB.closeFadeUp(null, $(\'editCtn\'))" id="xCancelBtn" class="cancelBtn rolloverButton"><\/a>';
					}
				}
				xListObjsize = document.forms.editForm.size;
				xColorArray.length = 0;
				xProdImage.length = 0;
				for (var i=0;i<colors.length;i++){
					var colorSeq = (xml.getElementsByTagName('cseq')[i]).childNodes[0].nodeValue;
					var name = (xml.getElementsByTagName('colorname')[i]).childNodes[0] ? (xml.getElementsByTagName('colorname')[i]).childNodes[0].nodeValue : "";
					var fmtPrice = (xml.getElementsByTagName('offer')[i]).childNodes[0].nodeValue;
					var listPrice = (xml.getElementsByTagName('list')[i]).childNodes[0].nodeValue;
					var unfmtPrice = (xml.getElementsByTagName('price')[i]).childNodes[0].nodeValue;
					var copy = (xml.getElementsByTagName('colorcopy')[i]).childNodes[0] ? (xml.getElementsByTagName('colorcopy')[i]).childNodes[0].nodeValue : "";
					var items = colors[i].getElementsByTagName("item");
		    		//format color sequence
		    		
		    		
		    		var imgColorSeq = parseInt(colorSeq, 10);
		    		
		    		if(imgColorSeq < 10){
		    			imgColorSeq = "0" + imgColorSeq;
		    		}
		    		if(parentCol == 'GIFTCARD'){
		    			imgColorSeq = "01";
		    		}
		    		
		    		xSkuArray[i] = new Array();
		    		xProdImage[i] = new Image();
		    		xProdImage[i].src = collPath +parentCol+'_' + imgColorSeq + '_400_x.jpg';
		    		
		    		for (var x=0;x<items.length;x++){
		    			var sku = (items[x].getElementsByTagName("sku")[0]).childNodes[0].nodeValue;
		    			var cat = (items[x].getElementsByTagName("catentry")[0]).childNodes[0].nodeValue;
		    			var size = (items[x].getElementsByTagName("size")[0]).childNodes[0].nodeValue;
		    			var sizeSeq = (items[x].getElementsByTagName("seq")[0]).childNodes[0].nodeValue;
		    			var back = (items[x].getElementsByTagName("backordered")[0]).childNodes[0].nodeValue;
		    			var backdate = (items[x].getElementsByTagName("backdate")[0]).childNodes[0].nodeValue;
		    			
		    			xSkuArray[i][x] = new skuObj(sku, cat, size, sizeSeq, backdate, back);
					}
					xSkuArray[i].sort(customSort);
		    		xColorArray[i] = new colorObj(colorSeq, name, fmtPrice, listPrice, copy, xProdImage[i], xSkuArray[i], unfmtPrice);
		    	}
		    	
		    	$('editProdLft').innerHTML = htmlL; 
				$('editProdRgt').innerHTML = html; 
				
				
				
				var setPrice = true;
				if(product == 100451 && page == 'cartPromo') setPrice = false;
				
				if (colorFound){
					setXColor(selectedSeq, setPrice);
				} else {
					var defaultSeq = (xml.getElementsByTagName('init')[0]).childNodes[0].nodeValue;
					setXColor(defaultSeq, setPrice);
				}
			}else{
				var mm = {
					0:{name:"January",value:"01"},
					1:{name:"February",value:"02"},
					2:{name:"March",value:"03"},
					3:{name:"April",value:"04"},
					4:{name:"May",value:"05"},
					5:{name:"June",value:"06"},
					6:{name:"July",value:"07"},
					7:{name:"August",value:"08"},
					8:{name:"September",value:"09"},
					9:{name:"October",value:"10"},
					10:{name:"November",value:"11"},
					11:{name:"December",value:"12"}
				}
				function buildMonths(){
					var go = true, mo = to.getMonth(), yr = to.getFullYear(), count = numDays(mo,yr);
					
					sm.options.length = 0;
					while(go){
						sm.options[sm.options.length] = new Option(mm[mo].name, mm[mo].value);
						sm.options[sm.options.length - 1].year = yr;
						sm.options[sm.options.length - 1].toshow = count > 60 ? 60 - (count - numDays(mo,yr)) : numDays(mo,yr);
						go = count < 60 ? true : false;
						
						if(mo + 1 <= 11){mo++;}
						else{mo = 0;yr++;}
						
						count += numDays(mo,yr);
					}
					buildDays();
				}
				function buildDays(e){
					sd.options.length = 0;
					var m = sm.options[sm.selectedIndex].value, mi, d, s;
					for(x in mm){
						if(mm[x].value == m){
							mi = x;
						}
					}
					s = to.getMonth() == mi ? to.getDate() : 1;
					e = sm.options[sm.selectedIndex].toshow;
					for(var x=0; x < e; x++){
						sd.options[sd.options.length] = new Option(s, s);
						s++;
					}
				}
				function buildSkus(){
					for (var i=0;i<colors.length;i++){
						//get colorname for text
						var txt = colors[i].getElementsByTagName('colorname')[0].childNodes[0].nodeValue.replace(/\u00a3/g,'£').replace(/&nbsp;/g, ' ');
						var val = colors[i].getElementsByTagName('items')[0].getElementsByTagName('item')[0].getElementsByTagName('sku')[0].childNodes[0].nodeValue;
						var ce = colors[i].getElementsByTagName('items')[0].getElementsByTagName('item')[0].getElementsByTagName('catentry')[0].childNodes[0].nodeValue;
						//var o = new Option(ce, val);
						var o = new Option(txt, val);
						pn.options[pn.options.length] = o;
						o.catentry = ce;
					}
					
					
					
				}
				function numDays(iMonth, iYear){
					var n = 32 - new Date(iYear, iMonth, 32).getDate();
					if(iMonth != to.getMonth()){
						return n;
					}else{
						return n - to.getDate() + 1;
					}
				}
				function submitEGCAdd(){
					var f = document.forms.editForm;
					
					f.recipEmail.value = f.recipEmail.value.toLowerCase();
					f.checkRecipEmail.value = f.checkRecipEmail.value.toLowerCase();
										
					var fields = {
						receiver:{
							or:f.receiver,
							val:function (r){
								var filter = /^[a-zA-Z\d]+(([\'\,\.\- #][a-zA-Z\d ])?[a-zA-Z\d]*[\.]*)*$/;
								return filter.test(r.value);
							},
							msg:'Recipient\'s Name is required, please re-enter.'
						},
						buyer:{
							or:f.buyer,
							val:function (r){
								var filter = /^[a-zA-Z\d]+(([\'\,\.\- #][a-zA-Z\d ])?[a-zA-Z\d]*[\.]*)*$/;
								return filter.test(r.value);
							},
							msg:'Sender\'s Name is required, please re-enter.'
						},
						recipEmail:{
							or:f.recipEmail,
							val: function(el){
								var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
								return filter.test(el.value);
							},
							msg:'Please enter a valid email address.'
						},
						checkRecipEmail:{
							or:f.checkRecipEmail,
							val: function(el){
								return el.value.length > 0 && el.value == f.recipEmail.value;
							},
							msg:'The recipient\'s e-mail address does not match, please re-enter.'
						},
						orderComment:{
							or:f.orderComment,
							val:function(el){
								return el.value.length < 1 || el.value.length < 201;
							},
							msg:'Comments are limited to 200 characters.'
						},
						partNum:{
							or:f.partNum,
							val:function(el){
								return el.selectedIndex > 0;
							},
							msg:'Please select a Gift Card amount.'
						}
					}
					var validates = true, errCnt = 0, errsPresent=false, o=f.val, lf;
					for(x in fields){
						var cf = fields[x];
						if(!cf.val(cf.or)){
							YUD.addClass(cf.or,'fieldError');
							lf = x;
							errCnt++;
						}else{
							YUD.removeClass(cf.or,'fieldError')
						}
					}
					if(errCnt > 0){
						if(errCnt > 1){
							$('errSpan').innerHTML = 'Please correct the highlighted fields.';
						}else{
							$('errSpan').innerHTML = fields[lf].msg;
						}
						YUD.addClass($('errSpan'),'errMode');
					}else{
						$('errSpan').innerHTML = 'Required*';
						YUD.removeClass($('errSpan'),'errMode');
						
						f.requestedShipDate.value = (sm.options[sm.selectedIndex].year) + '-' + sm.options[sm.selectedIndex].value +'-'+ sd.options[sd.selectedIndex].value +' 00:00:00';
						f.field2.value = (f.receiver.value + '||' + f.buyer.value + '||' + f.recipEmail.value).replace(/[",']/g, '').replace(/\&/g, 'and');
						var comm = f.orderComment.value.replace(/\#/g,'').replace(/[\n\f\r]/g, ' ').replace(/[",']/g,'');
						if(comm.length > 0){
							f.comment_0.value = f.comment_0.value.concat(comm.slice(0,40),'|',
								comm.slice(40,80),'|',
								comm.slice(80,120),'|',
								comm.slice(120,160),'|',
								comm.slice(160,200));
						}
						
						var qty = f.quantity.value, prc = f.partNum.value - 88889000, sku = f.partNum.value;
						
						f.catEntryId.value = f.partNum.options[f.partNum.selectedIndex].catentry;
						f.URL.value = 'OrderItemDelete?orderItemId=' + currOrderItemId + '&URL=OrderItemDisplay?orderId=.';
						f.submit(); 
						HTB.closeFadeUp(null, $('editCtn'));
						$('egcCtn').parentNode.removeChild($('egcCtn'));
					}
				}
				
				$('editProdLft').style.display = 'none';
				$('editProdRgt').style.display = 'none';
				var html = '<div id="egcCtn">' +
				'		<img src="\/hol\/images\/I-giftingEGC2.jpg" id="egcFDCMktg" \/>' +
				'		<input type="hidden" name="field2" value="" \/>' +
				'		<input type="hidden" name="requestedShipDate" value="" \/>' +
				'		<input type="hidden" name="comment_0" value="" \/>' +
				'		<table width="380" cellpadding="0" cellspacing="0" border="0">' +
				'			<tr class="singleRow">' +
				'				<td width="180">' +
				'					<label for="receiver">To:*<\/label>' +
				'					<br \/>' +
				'					<input class="egcInput" type="text" name="receiver" maxlength="40" size="30" value="' + $(currOrderItemId + '_recipientName').firstChild.nodeValue + '" \/>' +
				'				<\/td>' +
				'				<td width="200">' +
				'					<span class="egc-alignRight">' +
				'					<label for="buyer">From:*<\/label>' +
				'					<br \/>' +
				'					<input class="egcInput" type="text" name="buyer" maxlength="40" size="30" value="' + $(currOrderItemId + '_from').firstChild.nodeValue + '" \/>' +
				'					<\/span>' +
				'				<\/td>' +
				'			<\/tr>' +
				'			<tr class="singleRow">' +
				'				<td>' +
				'					<label for="partNum">Amount*<\/label>' +
				'					<br \/>' +
				'					<select name="partNum" id="partNum" class="egcInput">' +
				'						<option>Select An Amount<\/option>' +
				'					<\/select>' +
				'				<\/td>' +
				'				<td>' +
				'					<span class="egc-alignRight">' +
				'					<label for="sendMonth">Date to Deliver:<\/label>' +
				'					<br/>' +
				'					<select name="sendMonth" style="width:100px;" class="egcInput">' +
				'					<\/select>' +
				'					<select name="sendDay" style="width:40px" class="egcInput">' +
				'					<\/select>' +
				'					<\/span>' +
				'				<\/td>' +
				'			<\/tr>' +
				'			<tr class="singleRow">' +
				'				<td>' +
				'					<label for="recipEmail">Recipient\'s email address*<\/label><br \/>' +
				'					<input class="egcInput" type="text" name="recipEmail" maxlength="50" size="30" value="' + $(currOrderItemId + '_recipient').firstChild.nodeValue + '" \/><br \/>' +
				'				<\/td>' +
				'				<td>' +
				'					<span class="egc-alignRight">' +
				'					<label for="checkRecipEmail">Confirm recipient\'s email address:*<\/label> ' +
				'					<br/>' +
				'					<input class="egcInput" type="text" name="checkRecipEmail" maxlength="50" size="30" value="' + $(currOrderItemId + '_recipient').firstChild.nodeValue + '" \/><br \/>' +
				'					<\/span>' +
				'				<\/td>' +
				'			<\/tr>' +
				'			<tr>' +
				'				<td colspan="2">' +
				'					<label for="orderComment">Gift message - 200 characters (optional)<\/label>' +
				'					<br/>' +
				'					<textarea cols="40" rows="2" name="orderComment" style="font-size:12px;">' + $(currOrderItemId + '_comment').firstChild.nodeValue.replace(/\|/g,'') + '<\/textarea>' +
				'					<br/>' +
				'				<\/td>' +
				'			<\/tr>' +
				'			<tr>' +
				'				<td colspan="2">' +
				'					<span id="errSpan">Required*<\/span>' +
				'				<\/td>' +
				'			<\/tr>' +
				'		<\/table>' +
				'	<a id="updateEGC" class="updateBagBtn rolloverButton"><\/a>' +
				'	<a id="cancelEGC" class="cancelBtn rolloverButton"><\/a>' +
				'<\/div>' +
				'<div style="clear:both;"><\/div>';
				var f = document.forms.editForm;
				if(!$('egcCtn')){ 
					f.innerHTML += html; 
				}
				var sm = f.sendMonth, sd = f.sendDay, to = new Date(), currDay = to.getDate(), pn = f.partNum;
				
				buildMonths();
				HTB.selectOption(sm,$(currOrderItemId + '_senddate').innerHTML.substring(0,2));
				
				buildDays();
				var dayToSend = $(currOrderItemId + '_senddate').innerHTML.substring(3,5);
				if(dayToSend.indexOf('0') == 0){
					dayToSend = dayToSend.substring(1);
				}
				HTB.selectOption(sd,dayToSend);
				
				buildSkus();
				HTB.selectOption(f.partNum, $(currOrderItemId + '_egSku').innerHTML);	
			}
			if(page != 'fragrance'){
				HTB.getFadeUp('editCtn', true);
				
				//product events
				YUE.on($("editProdRgt"),"mouseover",togSwatch);
				YUE.on($("editProdRgt"),"mouseout",togSwatch);
				
				YUD.getElementsByClassName("colorSwatch", "img", "editProdRgt", function(el){
					var seq = el.id.split("_")[1];
					YUE.on(el, "click", function(e){ setXColor( seq, true); } );
				});
				
				
				if(egc){//egc events
					YUE.on(sm,'change', buildDays);
					YUE.on($('updateEGC'), 'click', submitEGCAdd, f);
					YUE.on(f.orderComment, 'keyup', function(el){ return function(e){ HTB.limitChars(el,200); }; }(f.orderComment));
					YUE.on($('cancelEGC'), 'click', function(e){ 
						HTB.closeFadeUp(null, $('editCtn'));
						$('egcCtn').parentNode.removeChild($('egcCtn')); });
				}
			}else{
				HTB.getFadeUp('fragEditCtn', true)
			}
		}
	}
}

function setXColor(seq, setPrice){
	xOnesize = false;
	
	function highlightSwatch(sw){
		if(!sw){ return false; }
		var sibs = YUD.getElementsByClassName("colorSwatch", "img", sw.parentNode);
		for(var i=0; i < sibs.length; i++){
			YUD.removeClass(sibs[i],"selected");
		}
		YUD.addClass(sw, "selected");
		YUD.removeClass(sw, "highlight");
	}
	highlightSwatch($('fdSwatch_' + seq));
	
	for(var y = 0; y != xColorArray.length; y++){
		if(xColorArray[y].seq == seq){
			//Set Image
			if (xtemplate != 'v'){
				document.images['xProductImage'].src = xColorArray[y].image.src;
			}
			//Set Color
			color = xColorArray[y].name;
			xColorStyle.value = color;
			if ((color.indexOf("$") != -1) || (color.indexOf("\u00a3") != -1)){
				color = "";
			}
			//Set Price
			price = xColorArray[y].oprice;
			//Set Copy
			if (xColorArray[y].copy != 'null' && xColorArray[y].copy != ''){
				copy = xColorArray[y].copy;
			} else {
				copy = prodCopy;
			}
			//Set Sizes
			//var html = '<br\/><select name="xsize" id="xsize" class="product hcoSelect"><option value="Select Size">Select Size<\/option>';
			
			$('xSizeBox').innerHTML = "";
			var xsizeSelect = document.createElement("select");
			xsizeSelect.options[0] = new Option("Select Size", "Select Size", true, true);
			xsizeSelect.className = "xsize";
			xsizeSelect.id = "xsize";
			xsizeSelect.name = "xsize";
			
			var htmlOne = "";
			var oneSizeInput = document.createElement("input");
			oneSizeInput.name = "xsize";
			oneSizeInput.id = "xsize";
			oneSizeInput.type = "hidden";
			
			today = new Date();
			month = today.getMonth() +1;
			day = today.getDate();
			if(month <10){ month = "0"+month; }
			if(day<10){ day = "0"+day; }
			now = today.getFullYear() +""+ month +""+ day;
			
			for(var t = 0; t != xColorArray[y].skus.length; t++){
				if (xColorArray[y].skus[t].size == 'ONE SIZE'){
					xOnesize = true;
					//var htmlOne = '<input type="hidden" name="xsize" value="' + xColorArray[y].skus[t].catentry + '" />';
					oneSizeInput.value = xColorArray[y].skus[t].catentry;
					if(xColorArray[y].skus[t].backordered == 'true'){
						shipDate = xColorArray[y].skus[t].backdate;
			        	if(shipDate <= now){
							htmlOne += '<font class="backorder">This item is Backordered<\/font><br/>';
						}else{
							shipStr = shipDate.substring(4,6) + "/" + shipDate.substring(6,8) + "/" + shipDate.substring(2,4)
							htmlOne += '<font class="backorder">This item will ship ' + shipStr + '<\/font><br/>';
						}
					}
					break;
				} else {
					if (xColorArray[y].skus[t].backordered == 'true'){
						shipDate = xColorArray[y].skus[t].backdate;
						var newOptText;
						if(shipDate <= now){
							//html += '<option value="'+xColorArray[y].skus[t].catentry+'">' + xColorArray[y].skus[t].size + ' - Backordered<\/option>';
							newOptText = xColorArray[y].skus[t].size + " - Backordered";
						}else{
							shipStr = shipDate.substring(4,6) + "/" + shipDate.substring(6,8) + "/" + shipDate.substring(2,4);
							//html += '<option value="'+xColorArray[y].skus[t].catentry+'">' + xColorArray[y].skus[t].size + ' - Will Ship ' + shipStr + '<\/option>';
							newOptText = xColorArray[y].skus[t].size + " - Will Ship " + shipStr;
						}
					} else {
						//html += '<option value="'+xColorArray[y].skus[t].catentry+'">' + xColorArray[y].skus[t].size + '<\/option>';
						newOptText = xColorArray[y].skus[t].size;
					}
					xsizeSelect.options[xsizeSelect.options.length] = new Option(newOptText, xColorArray[y].skus[t].catentry, false, false);
				}
			}
			//html += '<\/select>';
			var sizeHtml = '';
			if (xOnesize){
				//sizeHtml = htmlOne;
				$('xSizeBox').appendChild(oneSizeInput);
				$('xSizeBox').innerHTML += htmlOne;
			} else {
				//sizeHtml = html;
				$('xSizeBox').appendChild(xsizeSelect);
			}
			if($('xProdColor')){
				if(color == '' || color == null || color == "undefined"){
					YUD.setStyle($('xProdColor'), "display", "none");
				}else{
					$('xProdColor').innerHTML = color;
				}
			}
			if (setPrice){
				$('xProdOff').innerHTML = price;
			}
			if($('xProdCopy')){
				$('xProdCopy').innerHTML = copyOverride || copy;
			}
			//$('xSizeBox').innerHTML = sizeHtml;
		}	
	}
}			
var xCurrItemBackordered = false;
function submitAdd(page){
	xCurrItemBackordered = false;
	if((!xOnesize) && (document.forms.editForm.xsize.selectedIndex == 0)) {
		alert('Please select a size.');
		return;
	} else if((xtemplate == 'v') && (document.forms.editForm.xsize.value == '')){
		alert("Please select a style.");
		return;
	} else {
       catentry = document.forms.editForm.xsize.value;
       for(var y = 0; y != xColorArray.length; y++){
			if(xColorArray[y].name == xColorStyle.value){
				for(var t = 0; t != xColorArray[y].skus.length; t++){
					if (xColorArray[y].skus[t].catentry == catentry){
						document.forms.editForm.partnumber.value = xColorArray[y].skus[t].sku;
						var size = xColorArray[y].skus[t].size
						var price = xColorArray[y].price;
						xCurrItemBackordered = xColorArray[y].skus[t].backordered;
						break;
					}
				}
			}
		}
		if(page != 'wishEdit'){
			document.forms.editForm.catEntryId.value = catentry;
		}else{
			document.forms.editForm.catEntryId.value = currOrderItemId;
		}
		if(page == 'cart'){
			document.forms.editForm.URL.value = 'OrderItemDelete?orderItemId=' + currOrderItemId + '&URL=OrderItemDisplay?orderId=.';
		} else if(page == 'cartPromo'){
			document.forms.editForm.URL.value = 'OrderItemDisplay?orderId=.';
		}else if(page == 'wishEdit'){
			document.forms.editForm.action = 'InterestItemDelete';
			document.forms.editForm.URL.value = 'InterestItemAdd?catEntryId=' + catentry + '&URL=InterestItemDisplay';
		}else {
			//Unique to product page only
	        document.forms.editForm.URL.value = '/hol/blank1.html';
	        //addDivToHiddenFrame(); /* write div element  */
	        //timeid = setTimeout("updateTimer()",200);/* start the time to check for frame load (dancing around for MAC IE, otherwise use onload event) */
	      	//document.forms.editForm.target = 'HIDDENPOST';
	      	//cm add to bag
	      	if (page == 'newlook'){
	      		cmCreateAddToBagShop5Tag(colNumber, colName, 1, price, currCat, size, xColorStyle.value, document.forms.editForm.partnumber.value);
	    	} else if (page != 'cart'){
	    		cmCreateAddToBagShop5Tag(colNumber, 'CTL: SLOT ' + currSlot + ': ' + colName, 1, price, eval(currCat.toString()+ currSlot), size, xColorStyle.value, document.forms.editForm.partnumber.value);
	    	}
	    }
	    
	    var cb = {
	    	success:function(o){
	    		HOL.miniCart.getCart('add');
	    	},
	    	failure:function(o){
	    	}
	    }
	    
	    var wlcb = {
	    	success:function(o){
	    		window.location.reload();
	    	},
	    	failure:function(o){
	    	}
	    }
	    
	    if(page != 'cart' && page != 'cartPromo' && page != 'wishEdit'){
			YUC.setForm(document.forms.editForm);
			YUC.asyncRequest("POST", document.forms.editForm.action, cb);
		} else if(page === 'wishEdit'){
			YUC.setForm(document.forms.editForm);
			YUC.asyncRequest("POST", document.forms.editForm.action, wlcb);
		} else {
			document.forms.editForm.submit();
		}
	}
}

function resetEditMode(){
	var nLeft = document.getElementById('pageContainer').offsetLeft+"px";
	var nLeft2 = (document.getElementById('pageContainer').offsetLeft + 125)+"px";
	changeObjectProperty('editCtn', 'left', nLeft2);
}