/*
*	data data data data data data data data
*	data data data data data data data data
*	data data data data data data data data
*	data data data data data data data data
*	data data data data data data data data
*/

/*

//**************************************************
//Requires the JS include to specify JavaScript1.2:
//<Script language="JavaScript1.2" Src="/includes/emailValidation.js"></Script>
//**************************************************

/*
*	AQ_10062001.js
*	EDITED FOR FRAME BREAKOUT
*	BY CHRIS DONNAN @ PCH.COM
*	3/18/2002
*
*/
/*
function openFrameFix(sURL,w,h) {
	newwindow=window.open(sURL,"pchwindow","scrollbars=yes,toolbar=yes,directories=no,menubar=no,resizable=yes,status=no,width="+w+",height="+h+"");
	newwindow.window.focus();
}
if (parent.frames.length!=0)	{
	openFrameFix(location.href, 800,600)
}
*/	
function lTrim(x) {
	if (x.length == 0) {
		return "";
	}

	while( x.charAt(0)==" ") {
		x = x.substring( 1, x.length );
	}
	
	return x;
 
} 

function rTrim(x) {
	if (x.length == 0) {
		return "";
	}
	
	while ( x.charAt( x.length-1 ) == " " ){
		 x = x.substring(0, x.length-1 );
	}
	
	return x;
}


function allTrim(x) {
	x = rTrim( lTrim(x) );
	return x;
}

var oEmailField;
//alert("Loaded")
function checkEmail(idx, sMsg)
{

	oEmailField = document.frmOrder.Email;
    	var sVal = allTrim(document.frmOrder.Email.value);
	document.frmOrder.Email.value = sVal;
    	var sOldVal = sVal ;
	var bOK = basicEmailCheck(sVal);
   
   
    if ( ! bOK ) {
		return false;
    }
    else{
		// make sure the login form doesn't pick this up
		//if ( idx.form.name != "frmNewEntry" ){
		//	return true;
		//}
    }    
    
	//*****************
	// DEBUG
	//alert("entering emailHygeine() ...");
	//*****************
    
	sVal = emailHygeine(sVal);
	
	//*****************
	// DEBUG
	//alert("after emailHygeine():\n" + "orig='" + sOldVal + "'\n" + " new='" + sVal + "'");
	//*****************
	
	// if it was changed, run the popup
	if (sVal.toLowerCase() != sOldVal.toLowerCase()) {
	
		var sURL;
		sURL = "http://sb.pch.com/aq/invalidemail.html?rec=" + sVal;
		sURL = sURL + "&ent=" + sOldVal ;
		
		var w = "510";
		var h = "320";
		var expdateLong = new Date();
		mynewwin = window.open(sURL,'newwindow'+expdateLong.getTime(), 'width=' + w + ',height=' + h + ',status=yes,menubar=no,scrollable=no,resizable=yes,scrollbars=no,screenX=0,screenY=0,top=0,left=0');
		return false;
	}
	else {    
		idx.value = sVal.toLowerCase();
		return true;
	}
}

function doUnload()	{
  if (window.mynewwin && window.mynewwin.open && !window.mynewwin.closed)
  window.mynewwin.opener = null;
}

function basicEmailCheck(sVal) {
	//*****************
	// DEBUG
	//alert("in  basicemailcheck() ...");
	//*****************
	
	// There is a some kludging here for NS
	var oReg = /[^@\s][^@\s]+@[^@\s][^@\s]+\.[a-z]{2,4}/i  

	var bOK = oReg.test(sVal);
    var sErr = "Please enter a valid email address\n(e.g. username@pch.com).";
   
    if ( ! bOK ) {
		alert( sErr );
		document.frmOrder.Email.focus();
		return false;
    }    
	return true;
	//return false;
}
/**/
	function callbackRec(sVal) {
		document.frmOrder.Email.value = sVal;

		var bOK = basicEmailCheck(sVal)
		if ( ! bOK ) {
			return false;
		}

		document.frmOrder.submit();
	}

	function callbackEnt(sVal) {
		document.frmOrder.Email.value = sVal;
		var bOK = basicEmailCheck(sVal)
		if ( ! bOK ) {
			return false;
		}
		document.frmOrder.submit();
	}

	function callbackNew(sVal) {
		document.frmOrder.Email.value = sVal;

		if ( checkEmail(document.frmOrder.Email,"Email") ) {
			document.frmOrder.submit();
		}
	}

function emailHygeine(sVal) {
//*****************
// debug
//alert("in  emailHygeine() ...");
//*****************

// replace bad characters and known bad patterns with valid stuff
// backslash
sVal = sVal.replace(/\\/g, ".");

// slash
sVal = sVal.replace( /\//g, ".");

// comma
sVal = sVal.replace( /,/g, ".");

// repeating . with just one
sVal = sVal.replace(/\.\.+/g, ".");

// repeating @ with just one
sVal = sVal.replace( /@@+/g, "@");

// repeating - with just one
sVal = sVal.replace( /--+/g, "-");

// repeating ' single quote with just one
sVal = sVal.replace(/''+/g, "'");

// remove @ . - if first char
sVal = sVal.replace(/^[@|\.|\-]+/, "");

// remove @ . - if last char
sVal = sVal.replace(/[@|\.|\-]+$/, "");

// remove accents
sVal = sVal.replace(/`/g, "");

// remove any chars not permitted
sVal = sVal.replace(/[^0-9a-z@\.&\*\+\-_<+>]/gi,"");

// replace .@ or @. with @
sVal = sVal.replace(/(\.@)|(@\.)/gi,"@");

// replace @domain(end) with @domain.com for certain domains
sVal = sVal.replace(/@aol$/i,"@aol.com");
sVal = sVal.replace(/@msn$/i,"@msn.com");
sVal = sVal.replace(/@juno$/i,"@juno.com");
sVal = sVal.replace(/@home$/i,"@home.com");
sVal = sVal.replace(/@yahoo$/i,"@yahoo.com");
sVal = sVal.replace(/@prodigy$/i,"@prodigy.com");
sVal = sVal.replace(/@hotmail$/i,"@hotmail.com");
sVal = sVal.replace(/@email\.msn$/i,"@email.msn.com");

// correct possible misspellings of top-level domains
sVal = sVal.replace(/\.cm$/i,".com");
sVal = sVal.replace(/\.co$/i,".com");
sVal = sVal.replace(/\.ml$/i,".mil");
sVal = sVal.replace(/\.ne$/i,".net");
sVal = sVal.replace(/\.om$/i,".com");

// correct other possible misspellings of .com
sVal = sVal.replace(/\.ocm$/i,".com");
sVal = sVal.replace(/\.cmo$/i,".com");
sVal = sVal.replace(/\.co[0-9a-ln-z]$/i,".com");
sVal = sVal.replace(/\.c[0-9a-np-z]m$/i,".com");
sVal = sVal.replace(/\.[0-9a-bd-z]om$/i,".com");
sVal = sVal.replace(/\.co[0-9a-z][0-9a-z]$/i,".com");
sVal = sVal.replace(/\.[0-9a-z]com$/i,".com");
sVal = sVal.replace(/\.co[0-9a-z]m$/i,".com");
sVal = sVal.replace(/\.c[0-9a-z]om$/i,".com");
// special catch for .com.com
sVal = sVal.replace(/\.com\.com$/i,".com");

// correct other possible domain misspellings
sVal = sVal.replace(/@[a-z0-9]aol\./i,"@aol.");
sVal = sVal.replace(/@aol[a-z0-9]\./i,"@aol.");
sVal = sVal.replace(/@[a-z0-9]ol\./i,"@aol.");
sVal = sVal.replace(/@a[a-z0-9]l\./i,"@aol.");
sVal = sVal.replace(/@ao[a-z0-9]\./i,"@aol.");

sVal = sVal.replace(/@[a-z0-9]msn\./i,"@msn.");
sVal = sVal.replace(/@msn[a-z0-9]\./i,"@msn.");
sVal = sVal.replace(/@[a-z0-9]sn\./i,"@msn.");
sVal = sVal.replace(/@m[a-z0-9]n\./i,"@msn.");
sVal = sVal.replace(/@ms[a-z0-9]\./i,"@msn.");

sVal = sVal.replace(/@[a-z0-9]juno\./i,"@juno.");
sVal = sVal.replace(/@juno[a-z0-9]\./i,"@juno.");

sVal = sVal.replace(/@[a-z0-9]uno\./i,"@juno.");
sVal = sVal.replace(/@j[a-z0-9]uno\./i,"@juno.");
sVal = sVal.replace(/@ju[a-z0-9]o\./i,"@juno.");
sVal = sVal.replace(/@jun[a-z0-9]\./i,"@juno.");

sVal = sVal.replace(/@[a-z0-9]home\./i,"@home.");
sVal = sVal.replace(/@home[a-z0-9]\./i,"@home.");

sVal = sVal.replace(/@[a-z0-9]ome\./i,"@home.");
sVal = sVal.replace(/@h[a-z0-9]me\./i,"@home.");
sVal = sVal.replace(/@ho[a-z0-9]e\./i,"@home.");
sVal = sVal.replace(/@hom[a-z0-9]\./i,"@home.");

sVal = sVal.replace(/@[a-z0-9]yahoo\./i,"@yahoo.");
sVal = sVal.replace(/@yahoo[a-z0-9]\./i,"@yahoo.");
sVal = sVal.replace(/@[a-z0-9]ahoo\./i,"@yahoo.");
sVal = sVal.replace(/@y[a-z0-9]hoo\./i,"@yahoo.");
sVal = sVal.replace(/@ya[a-z0-9]oo\./i,"@yahoo.");
sVal = sVal.replace(/@yah[a-z0-9]o\./i,"@yahoo.");
sVal = sVal.replace(/@yaho[a-z0-9]\./i,"@yahoo.");

sVal = sVal.replace(/@[a-z0-9]prodigy\./i,"@prodigy.");
sVal = sVal.replace(/@prodigy[a-z0-9]\./i,"@prodigy.");
sVal = sVal.replace(/@[a-z0-9]rodigy\./i,"@prodigy.");
sVal = sVal.replace(/@p[a-z0-9]odigy\./i,"@prodigy.");
sVal = sVal.replace(/@pr[a-z0-9]digy\./i,"@prodigy.");
sVal = sVal.replace(/@pro[a-z0-9]igy\./i,"@prodigy.");
sVal = sVal.replace(/@prod[a-z0-9]gy\./i,"@prodigy.");
sVal = sVal.replace(/@prodi[a-z0-9]y\./i,"@prodigy.");
sVal = sVal.replace(/@prodig[a-z0-9]\./i,"@prodigy.");

sVal = sVal.replace(/@[a-z0-9]hotmail\./i,"@hotmail.");
sVal = sVal.replace(/@hotmail[a-z0-9]\./i,"@hotmail.");
sVal = sVal.replace(/@[a-z0-9]otmail\./i,"@hotmail.");
sVal = sVal.replace(/@h[a-z0-9]tmail\./i,"@hotmail.");
sVal = sVal.replace(/@ho[a-z0-9]mail\./i,"@hotmail.");
sVal = sVal.replace(/@hot[a-z0-9]ail\./i,"@hotmail.");
sVal = sVal.replace(/@hotm[a-z0-9]il\./i,"@hotmail.");
sVal = sVal.replace(/@hotma[a-z0-9]l\./i,"@hotmail.");
sVal = sVal.replace(/@hotmai[a-z0-9]\./i,"@hotmail.");

sVal = sVal.replace(/@[a-z0-9]email\.msn\./i,"@email.msn.");
sVal = sVal.replace(/@email\.msn[a-z0-9]\./i,"@email.msn.");
sVal = sVal.replace(/@emailm\.sn\./i,"@email.msn.");
sVal = sVal.replace(/@emai\.lmsn\./i,"@email.msn.");
sVal = sVal.replace(/@[a-z0-9]email\.msn$/i,"@email.msn.com");
sVal = sVal.replace(/@email\.msn[a-z0-9]$/i,"@email.msn.com");
sVal = sVal.replace(/@emailm\.sn$/i,"@email.msn.com");
sVal = sVal.replace(/@emai\.lmsn$/i,"@email.msn.com");
sVal = sVal.replace(/@email\.msn$/i,"@email.msn.com");
sVal = sVal.replace(/@[a-z0-9]mail\.msn\.com$/i,"@email.msn.com");
sVal = sVal.replace(/@e[a-z0-9]ail\.msn\.com$/i,"@email.msn.com");
sVal = sVal.replace(/@em[a-z0-9]il\.msn\.com$/i,"@email.msn.com");
sVal = sVal.replace(/@ema[a-z0-9]l\.msn\.com$/i,"@email.msn.com");
sVal = sVal.replace(/@emai[a-z0-9]\.msn\.com$/i,"@email.msn.com");
sVal = sVal.replace(/@email\.[a-z0-9]sn\.com$/i,"@email.msn.com");
sVal = sVal.replace(/@email\.m[a-z0-9]n\.com$/i,"@email.msn.com");
sVal = sVal.replace(/@email\.ms[a-z0-9]\.com$/i,"@email.msn.com");

// catch missing . for some domains
sVal = sVal.replace(/@aolcom/i,"@aol.com");
sVal = sVal.replace(/@msncom/i,"@msn.com");
sVal = sVal.replace(/@junocom/i,"@juno.com");
sVal = sVal.replace(/@homecom/i,"@home.com");
sVal = sVal.replace(/@yahoocom/i,"@yahoo.com");
sVal = sVal.replace(/@prodigycom/i,"@prodigy.com");
sVal = sVal.replace(/@prodigynet/i,"@prodigy.net");
sVal = sVal.replace(/@hotmailcom/i,"@hotmail.com");
sVal = sVal.replace(/@email\.msncom/i,"@email.msn.com");
sVal = sVal.replace(/@emailmsncom/i,"@email.msn.com");
sVal = sVal.replace(/@emailmsn\.com/i,"@email.msn.com");

return sVal;
}




var gImageServer;
var gAkamaiHTTP = 'a1708.g.akamai.net/f/1708/179/1h/';
var gAkamaiHTTPS = 'a248.e.akamai.net/f/248/179/1h/';
var gAkamaiHTTP_test = 'a1708.g.akamai.net/f/1708/179/1m/';
var gAkamaiHTTPS_test = 'a248.e.akamai.net/f/248/179/1m/';

if (window.location.host.substring(0,2) == 'i3')
{
	if (window.location.protocol == 'http:')
	{
	  gImageServer = 'http://';
	}
	else if (window.location.protocol == 'https:')
	{
	  gImageServer = 'https://';
	}
	gImageServer += window.location.host;
}
else if ((window.location.host.substring(0,6) == 'pchdev') || (window.location.host.substring(0,2) =='38'))
{
	if (window.location.protocol == 'http:')
	{
	  gImageServer = 'http://';
	  gImageServer += gAkamaiHTTP;
	}
	else if (window.location.protocol == 'https:')
	{
	  gImageServer = 'https://';
	  gImageServer += gAkamaiHTTPS;
	}
	gImageServer += '38.203.242.3';
}
else if (window.location.host.indexOf("test") != -1)
{
	//test server
	if (window.location.protocol == 'http:')
	{
	  gImageServer = 'http://';
	  gImageServer += gAkamaiHTTP_test;
	}
	else if (window.location.protocol == 'https:')
	{
	  gImageServer = 'https://';
	  gImageServer += gAkamaiHTTPS_test;
	}
	gImageServer += 'image.pch.com';
	gImageServer += '/testImages2';
}
else
{
	if (window.location.protocol == 'http:')
	{
	  gImageServer = 'http://';
	  gImageServer += gAkamaiHTTP;
	}
	else if (window.location.protocol == 'https:')
	{
	  gImageServer = 'https://';
	  gImageServer += gAkamaiHTTPS;
	}
	gImageServer += 'image.pch.com';
}

function getImageServerPath2(sVal)
{
	var sImageServer;
	sImageServer = '<img src="';
	sImageServer += gImageServer;
	sImageServer += sVal;
	return sImageServer;
}