var h_d = document;



function hs_gEv(string,item){	
	string = string.replace(/D\&G(.+)(DOLCE)(.+)\&(.+)(GABBANA)/gi,"D%26G$1$2$3%26$4$5");
	string = string.replace(/\+\&\+/g,"+%26+");
	string = string.replace(/ \& /g," %26 ");
	string +="&";
	retVal = string.match(new RegExp(item+"=(.*?)&"));
	try{
		retVal=retVal[1]
	} catch(e) {
		retVal = "";
	}
	return retVal;
};


function format_vars(str,sku){

	all_vars = str.match(/##(.*?)##/g,1);	
	if(sku){		
		var c=SC_Sku.getCookie();		
		c = c.split("|");
		var c_str
		// grab the URL variables from the last field in the cookie.		
		for(i in c){
			if(c[i].split("^")[0] == sku){
				c_str = c[i].split("^")[1];
			}
		}
	}else{				
		c_str = document.URL
	}
	if(all_vars){
		for(i in all_vars){
			try{
				str = str.replace(all_vars[i],hs_gEv(c_str,all_vars[i].replace(/#/g,"")));
			} catch(e){}
					
		}
	}
	return str;
}



function hs_gtCk (hs_cn)
{ var hs_tcne=hs_cn+"=";
var hs_ca=h_d.cookie.split(';');
for(var i=0;i < hs_ca.length;i++)
{ var hs_tcn=hs_ca[i];
while (hs_tcn.charAt(0)==' ') hs_tcn=hs_tcn.substring(1,hs_tcn.length);
if (hs_tcn.indexOf(hs_tcne) == 0) return hs_tcn.substring(hs_tcne.length,hs_tcn.length);}
return 0;}

var hs_sku='';
var hs_bitm=format_vars(item_identifier_format);

try{
hs_bitm += "^" +document.location.toString().match(/^.*?\?(.*)/,0)[1];
} catch(e){}


// if there isn't at least one part of the item_identifier, do not store the data.
if(format_vars(item_identifier_format) == item_identifier_format.replace(/##(.*?)##/g,"")) {
	hs_bitm = "";
}

hs_bitm=hs_bitm.replace(/~/g,'').replace(/%2C/g,'');
if(hs_bitm == "^")
hs_bitm="";
var hs_exist=hs_gtCk('hs_basket');


if(hs_bitm) {

        if(hs_exist!='' && hs_exist.indexOf(hs_bitm)<0) {
            if(hs_sku!='' && hs_sku.indexOf(hs_bitm)<0)
                hs_sku=hs_bitm+'~'+hs_sku;
            else if(hs_sku=='')
                hs_sku=hs_bitm;
        } else if(hs_exist=='') {
            if(hs_sku!='' && hs_sku.indexOf(hs_bitm)<0)
                hs_sku=hs_bitm+'~'+hs_sku;
            else if(hs_sku=='')
                hs_sku=hs_bitm;
        }
   
}
/**
 * SiteClarity Shopping Cart Sku Helper
 * Copyright (c) 2000-2006 CheetahMail, an Experian Company All rights reserved.
 */

/* Global variables */
// Cookie expire 30 days from now
this.__A=7776000000;
// Get sku string
this.__B=(window.hs_sku)?window.hs_sku:'';
// Cookie name
this.__C='hs_basket=';
// Cookie path
this.__D='path=/;';

this.lastSku='';


/**
 * SiteClarity Sku holder
 */


SC_Sku=function() {}
/**
 * Retrieve Sku cookie
 * @returns Sku value from cookie
 */
SC_Sku.getCookie=function() {
    var a=document.cookie.split(';');
    for(var i=0;i<a.length;i++) {
        var b=a[i];
        while(b.charAt(0)==' ')
            b=b.substring(1,b.length);
        if(b.indexOf(__C)==0)
	    return b.substring(__C.length,b.length);
    }
    return "";
}


SC_Sku.imageLocation=function(imageSku) {
	var baseURL = format_vars(img_base_url_format,imageSku);
	var imageDir = format_vars(img_dir_format,imageSku);
	baseURL = baseURL + imageDir;
	return baseURL;
}
SC_Sku.path=function(imageSku) {	
	return format_vars(img_dir_format,imageSku)+"/"+format_vars(img_file_format,imageSku);	
	
}

SC_Sku.productLocation=function(imageSku) {
	var prodURL = format_vars(product_url_format,imageSku);
	if(imageSku ==''){ prodURL = format_vars(default_product_url,imageSku);}
	return prodURL;
}

function clearVars(){
	document.location = document.location.toString().match(/^.*?\?/,0);
}

/**
 * Retrieve Sku cookie and Prints
 */
SC_Sku.printCookie=function() {    
    var a=hs_gtCk('hs_basket');	

    var counter = 0;
	SC_Sku.writeCSS();
	document.write("\n\n\n<div id='item_container'>");
    if(a == 0){
		document.write("<div id='noitems'>No Items Selected</div>");
	}else{
    	a = a.split("|");
		lastSku = false		
    	for(i in a) {
			if(a[i] != ""){
				var b=a[i]; 
				var breakout = b.split("^");
				if (!lastSku){
					lastSku = breakout[0];
				}
				if(breakout[0] != ""){
 					counter=counter+1;
					img = new Image();
					img.src=SC_Sku.imageLocation(breakout[0]);
 					SC_width = lesserOf(img.width,max_img_width);
					document.write("\n\t<div class=\"item\">\n\t\t<div class=\"imgfield\">\n\t\t\t\n\t\t\t\t<img width="+SC_width+" id=\"imglocation\" src=\"" + unescape(SC_Sku.imageLocation(breakout[0])) + "\" border=\"0\">\n\t\t\t\n\t\t</div>");
					document.write("\n\t<div class=\"text_container\">\n\t\t<p class=\"productdescription\">\n\t\t\t" + "<font color=\""+vendor_font_color+"\" ><B>"+ unescape(unescape(format_vars(vendor_description_format,breakout[0]))).replace(/\+/g," ") + "</B></font><br>" + "<font color=\""+prod_font_color+"\" ><B>"+unescape(unescape(format_vars(item_description_format,breakout[0]))).replace(/\+/g," ") +"</B></font>\n\t\t\n\t\t<br><br>\n\t\t\t<font size='-2'><a href=\"javascript:SC_Sku.del(\'" + breakout[0] + "\');clearVars();\"><img src=\"http://f.chtah.com/s/19/1868200941/btn_remove.gif\" border=\"0\"></a></font>\n\t\t</p>\n\t</div></div>");
					
document.write("<input type='hidden' value='"+unescape(format_vars(mailing_vars['SKU'],breakout[0])).replace(/\+/g," ") + "' name='"+"SKU"+counter+"'>");
document.write("<input type='hidden' value='"+unescape(format_vars(mailing_vars['PROD_NAME'],breakout[0])).replace(/\+/g," ") + "' name='"+"PROD_NAME"+counter+"'>");
document.write("<input type='hidden' value='"+unescape(format_vars(mailing_vars['IMG_URL'],breakout[0])).replace(/\+/g," ") + "' name='"+"IMG_URL"+counter+"'>");
document.write("<input type='hidden' value='"+unescape(format_vars(mailing_vars['VENDOR'],breakout[0])).replace(/\+/g," ") + "' name='"+"VENDOR"+counter+"'>");
document.write("<input type='hidden' value='"+unescape(format_vars(mailing_vars['PROD_LINK'],breakout[0])).replace(/\+/g," ") + "' name='"+"PROD_LINK"+counter+"'>");
				}
			}
		}					
	}
	
	document.write("\n</div>");
	return '';
}

/**
 * Get cookie expiration date
 * @returns cookie expiration date string
 */
SC_Sku.getExpiration=function() {
    // set expiration date
    var a=new Date();
    a.setTime(a.getTime()+__A);
    var b='expires='+a.toGMTString();+';';
    return b;
}
/**
 * Add sku in the beginning of the cookie or create new cookie
 * @returns None
 */
SC_Sku.add=function() {
    // set expiration date
    //var b=SC_Sku.getExpiration();
    // get current cookie
    var c=SC_Sku.getCookie(); 
    // no cookie yet
    if(c=='' && __B!='')
        document.cookie=__C+__B+'|; '+__D;
    else if(__B!='') {
		if(c.replace("^^|","").split("|").length > lesserOf(10,total_number_of_items)){
			throw RangeError;
		}
        // if the cookie is too long, clip off the last entry first
        if (c.length>2000) {
            var d=c.indexOf('|');
            var e=c;
            var f=d;
            if(d<c.length-2) {
                var g;
                while(d>=0) {
                    e=e.substring(d+1);
                    d=e.indexOf('|');
                    if(d==(e.length-1) && d>=0)
                        g=e.length;
                }
                f=c.length-g;
                c=c.substring(0,f);
            }
        }
        // look for current sku
        var h=c.indexOf(__B);
        // replace existing cookie
        if(h>=0) {
            var j=c.substring(0,h);
            var k=c.substring(h);
            h=k.indexOf('|')+1;
            k=(h>=k.length)?'':k.substring(h);
            document.cookie=__C+__B+'|'+j+k+'; '+__D;
        }
        // add-on to existing cookie
        else
            document.cookie=__C+__B+'|'+c+'; '+__D;
    }
}
/**
 * Remove sku string from cookie
 * @returns None
 */
SC_Sku.del=function(delSku) {
    // set expiration date
    //var b=SC_Sku.getExpiration();
    // get current cookie
    var c=SC_Sku.getCookie();
    // cookie exists, no cookie... no love :p
    if(c!='') {
        // look for current sku
        var d=c.indexOf(delSku+"^");
        // remove existing cookie
        if(d>=0) {
            var e=c.substring(0,d);
            var f=c.substring(d);
            d=f.indexOf('|')+1;
            f=(d>=f.length)?'':f.substring(d);
            document.cookie=__C+e+f+'; '+__D;
        }
    }
}
/**
 * Destroy sku cookie
 * @returns None
 */
SC_Sku.destroy=function() {
    // set expiration date
    //var b=SC_Sku.getExpiration();
    // get current cookie
    var c=SC_Sku.getCookie();
    // process only when cookie exist, otherwise c-ya!
    if(c!='')
        document.cookie=__C+'; '+__D;
}
SC_Sku.writeCSS = function(){
	document.write("<style>.imgfield{	border: "+img_border_width+"px solid "+img_border_color+";padding: 4px;margin: 1px;float: center; text-align:center;}\n");
	document.write(".productdescription{margin-top: 8px;padding-top: 8px;margin-left:4px; float:center; text-align:center;}\n");
	document.write(".item{float: center; width: "+item_width+";border:"+text_box_border_width+"px solid "+text_box_border_color+";margin: "+text_box_padding+"}\n");	
	container_width=(parseFloat(item_width.replace("px",""))*columns)+((parseFloat(text_box_border_width)+parseFloat(img_border_width)+parseFloat(text_box_padding))*2);
	document.write("#item_container{width:"+container_width+"px;font-family:"+font_type+";font-size:"+font_size+";color:"+font_color+";}\n");
	document.write("#item_container a{color:"+font_color+";}\n");
	document.write("</style>");	
}
function lesserOf(a,b){
	return a < b ? a : b;
}
function default_error_function(){
	alert(out_of_range_error_message);		
}
		
try{
SC_Sku.add();
} catch (e){
	eval(on_error_function);
}
