var homepage = new function(){
	function init(){
		nvp_parse();
		addEvent(document.getElementsByTagName("body")[0], "resize", resetCart);
		showWrap();
		entryfades();
		$("#toutDiv a").click(showFadeUp);
		$("#gutterField").click(setTxtColor);
	}	
	function openPrivacyPolicy(){
		var url = "/anf/privacy_policy.html";
		if(readCookie('myStore') == '11306'){
			url = "/anf/privacy_policy_ca.html";
		}else if(readCookie('myStore') == '12406') {
			url = "/anf/privacy_policy_uk.html";
		}
		window.open(url,'privacy','scrollbars=yes,width=460,height=460');
	}	
	function entryfades(){
		var exist = false;		
		if(nvp_get('email') != 'noval'){ jEmailLink(); exist = true; }
		if(nvp_get('contact') == 'true'){ contactUsFadeUp(); exist = true; }
		if(nvp_get('privacy') == 'true'){ openPrivacyPolicy(); }
		if(nvp_get('investors') == 'true'){
			window.open('/anf/lifestyles/html/investorrelations.html','investor','toolbar=yes,status=yes,scrollbars=yes,resizable=yes,width=750,height=600');
		}
		if(nvp_get('casting') == 'true'){
			window.open('/anf/lifestyles/html/casting.html','casting', 'toolbar=no,menubar=no,status=no,scrollbars=no,resizable=no,width=860px,height=484px');
		}
		return exist;
	}
	function setTxtColor(){
		if($("#gutterField").attr('value')==CONSTANTS.ML_PLEASE_ENTER_ADDR || $("#gutterField").attr('value')=='Sign Up To A&F'){
			$("#gutterField").attr('value','');
		}
		$("#gutterField").css('color','#EBE9E0');
	}
	addEvent(window, "load", init);
}
function validateGutterMlInput(page){
	var responseDiv = 'response';
	var f = document.forms.MailingListGutter;
	var emailValue = f.email.value;
	if (!IsEmailValid(emailValue)){
		$("#gutterField").attr('value',CONSTANTS.ML_PLEASE_ENTER_ADDR);
		$("#gutterField").css('color','#ad3232');
	}else{
		var params = {
			'aid' : f.aid.value,
			'sub' : f.sub.value,
			'unsub' : f.unsub.value,
			'resub' : f.resub.value,
			'a' : f.a.value,
			'storeId' : f.storeId.value,
			'catalogId' : f.catalogId.value,
			'languageId' : f.languageId.value,
			'URL' : f.URL.value,
			'email' : f.email.value
		}
		
		$.ajax({
			url: "/webapp/wcs/stores/servlet/MailSubscription",
			global: false,
			type: "POST",
			data: params,
			dataType: "xml",
			success: function(xml){
				var status = xml.getElementsByTagName('mail_status')[0].firstChild.nodeValue;
				var msg = $(xml).find('response').text();
				function trimWs(stringToTrim){
					stringToTrim = stringToTrim.replace(/\s+$/,"");
					return stringToTrim.replace(/^\s+/,"");
				}
				$("#gutterField").css('color','#EBE9E0');
				$("#gutterField").attr('value',"Thank you, your email has been added");
			}
		});
	}
}



/**START ANF GLOBAL FUNCTIONS**/
rnd.today=new Date();
rnd.seed=rnd.today.getTime();
function rnd(){
	rnd.seed = (rnd.seed*9301+49297) % 233280;
	return rnd.seed/(233280.0);
}
function rand(number){return Math.ceil(rnd()*number);}
String.prototype.trim = function(){ return this.replace(/^\s+|\s+$/g, ''); };
var navPath = "/anf/images/nav/SUM_09c/";
function rollToggle(el){
	if(el.src){el.src = el.src.indexOf('on') > -1 ? el.src.replace('on','off') : el.src.indexOf('off') > -1 ? el.src.replace('off','on') : el.src;}
}
function nvp_struct(){
		var args = nvp_struct.arguments;
		this.nvp_qvpair = args[0];
		this.nvp_var = args[1];
		this.nvp_value = args[2];
}
var nvp_array = new Array;
function nvp_parse(){
	var querystring = location.search; nvp = querystring.indexOf('&'); searchstring = "true"; prev_nvp = 1; x = 0;
	do {
	if (nvp == -1){nvp = querystring.length; searchstring = "false";}
	var nvp_qvpair = querystring.substring(prev_nvp, nvp); nvp_var = nvp_qvpair.substring(0, nvp_qvpair.indexOf('=')); nvp_value = nvp_qvpair.substring(nvp_qvpair.indexOf('=')+1);
	nvp_array[x] = new nvp_struct(nvp_qvpair,nvp_var,nvp_value); querystring = querystring.substring(nvp + 1,querystring.length);
	if(querystring == null){searchstring = "false"} else {var prev_nvp = 0;		nvp = querystring.indexOf('&');		x++;}
	} while (searchstring == "true")
}
function nvp_get(){
	var args = nvp_get.arguments; nvpsearch = args[0]; nvpvalue = "noval"; nvp_length = nvp_array.length;
	for (var x = 0; x != nvp_length; x++){
		if(nvp_array[x].nvp_var == nvpsearch){nvpvalue = nvp_array[x].nvp_value};
	}
	return nvpvalue;
}
var hostName = location.host;
var serverHostname = 'http://'+hostName;
var globalStoreId = readCookie('myStore');

function getTopNavLink(){
	var args = getTopNavLink.arguments;
	if(typeof(args[0]) == 'string') window.location = args[0];
	else if (typeof(args[0]) == 'function')args[0]()
}

var xmlDoc = null;
var addItem = false;
function getContents(http_request, type){
    if (http_request.readyState == 4) {
        if (http_request.status == 200) {
        	xmlDoc = http_request.responseXML;
        	makeCart(type);
        } else {
        }
    } else {
    }
}
function hideAdd(){
	if (addItem){addItem = false;}
}
function limitChars(fe, num){fe.value = fe.value.slice(0, num);}
function IsEmailValid(eml){
    var test = eml;
    var lAt = test.indexOf("@")
    var lDot = test.lastIndexOf(".")
    //Checks over 5: x@x.x
    if ( test.length <5 || lAt <= 0 || lAt >= lDot - 1 || lDot >= test.length) {                
        return false;
    }else{
    	if(filter(test)){
    		return true;
        }else{
        	return false;
        }
    }
}
function filter(address){		
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	return filter.test(address);
}
function jEmailLink(){
	setupGenFade("mailingListTopNavContent");
	if(nvp_get('email') != 'noval') document.forms.MailingList.email.value = nvp_get('email');
}
function ajaxCall(url, params, cb, m, rt, as) {
	this.url = url;
	this.parameters = params;
	this.callback = cb;
	this.method = m ? m : 'get';
	this.responseType = rt ? rt : 'text/xml';
	this.async = as ? as : true;
	this.response = null;
}
ajaxCall.prototype.parseForm = function(form){
	var formObj = null;
	if(typeof(form) == 'string'){
		if(document.forms[form]) formObj = document.forms[form]
		else if(document.getElementById(form)) formObj = document.getElementById(form)
	}else if (typeof(form) == 'object') formObj = form

	if(!formObj) return
}
ajaxCall.prototype.makeRequest = function(){
	var urlString = this.url;
	if(this.parameters){
		urlString += '?'
		for(p in this.parameters) urlString += p + '=' + this.parameters[p] + '&';
	}
	if (window.XMLHttpRequest) { 
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) 
			http_request.overrideMimeType(this.responseType);
	} 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) return false;
	var ajaxObj = this;
	http_request.onreadystatechange = function() {ajaxObj.getContents(http_request)};
	http_request.open(this.method, urlString, this.async);
	http_request.send('');
}
ajaxCall.prototype.getContents = function(http_request){
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
        	this.response = http_request.responseText;
        	this.callback(http_request)       	
        } else {
        }
    } else {
    }
}
function addEvent(elm, evType, fn, useCapture){
	if(elm.addEventListener){
		elm.addEventListener(evType, fn, useCapture);
		return true;
	}else if(elm.attachEvent){
			var r = elm.attachEvent('on' + evType, fn);
			//EventCache.add(elm, evType, fn);
			return r;
	}else{
			elm['on' + evType] = fn;
	}
}
	//=======FADING TOUTS=======================================
   (function ($) {
        $.fn.cross = function (options) {
            return this.each(function (i) { 
                var $$ = $(this);
                var target = $$.css('backgroundImage').replace(/^url|[\(\)'"]/g, '');
                $$.wrap('<span style="position: relative;"></span>')
                    .parent()                    
                    .prepend('<img>')
                    .find(':first-child')
                    .attr('src', target);
                if ($.browser.msie && $.browser.version < 8) {
                    $$.css({
                        'position' : 'absolute', 
                        'left' : 0,
                        'background' : '',
                        'top' : '0'
                    });
                } else if ($.browser.msie && $.browser.version == 8) {
                    $$.css({
                        'position' : 'absolute', 
                        'left' : 0,
                        'background' : '',
                        'top' : '-111px'
                    });
                } else if ($.browser.mozilla || $.browser.msie) {
                    $$.css({
                        'position' : 'absolute', 
                        'left' : 0,
                        'background' : '',
                        'top' : this.offsetTop
                    });
                } else { // Safari
                    $$.css({
                        'position' : 'absolute', 
                        'left' : 0,
                        'background' : ''
                    });
                }
                $$.hover(function () {
                    $$.stop().animate({
                        opacity: 0
                    }, 250);
                }, function () {
                    $$.stop().animate({
                        opacity: 1
                    }, 250);
                });
            });
        };        
    })(jQuery);
    $(window).bind('load', function () {
        $('img.fade').cross();
    });
   