//This script file contains parts of functions created by Eric Krock
//(c) 1997 Netscape Communications Corporation

//Move data to shipping fields
function movetoshipping(form){
	if(form.Same.checked){
	   form.SFirstName.value=form.FirstName.value
	   form.SLastName.value=form.LastName.value
	   form.SMI.value=form.MI.value
	   form.SAddress1.value=form.Address1.value
	   form.SAddress2.value=form.Address2.value
	   form.SCity.value=form.City.value
	   form.SState.value=form.State.value
	   form.SZipCode.value=form.ZipCode.value
	   form.SCountry.value=form.Country.value}
}

//save address data for later use
function saveaddress(form){

	var billaddress=form.FirstName.value + "|" +
		form.LastName.value + "|" +
		form.MI.value + "|" +
		form.Address1.value + "|" +
		form.Address2.value + "|" +
		form.City.value + "|" +
		form.State.value + "|" +
		form.ZipCode.value + "|" +
		form.Country.value + "|" + form.Email.value;

	var shipaddress=form.SFirstName.value + "|" +
		form.SLastName.value + "|" +
		form.SMI.value + "|" +
		form.SAddress1.value + "|" +
		form.SAddress2.value + "|" +
		form.SCity.value + "|" +
		form.SState.value + "|" +
		form.SZipCode.value + "|" +
		form.SCountry.value;

	var addresscookie=billaddress + "!" + shipaddress;

	setCookie("address",addresscookie);
}

//check address data here
function checkaddress(form,document){
	if (isEmail(form.Email.value)==false){
		alert("Invalid email address.");
		form.Email.focus();
		return;}

	saveaddress(form);
	location.href=document;
}

// Check whether string s is empty.
function isEmpty(s)
{   return ((s == null) || (s.length == 0))
}

// Returns true if string s is empty or 
// whitespace characters only.
function isWhitespace (s)
{
    var whitespace = " \t\n\r";
    var i;

    // Is s empty?
    if (isEmpty(s)){return true;}

    // Search through characters one by one
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);

        if (whitespace.indexOf(c) == -1) return false;
    }

    // All characters are whitespace.
    return true;
}


// Email address must be of form a@b.c
function isEmail (s)
{   if (isEmpty(s)){return true;}
   
    // is s whitespace?
    if (isWhitespace(s)){return true;}
    
    // there must be >= 1 character before @, so we
    // start looking at character position 1 
    // (i.e. second character)
    var i = 1;
    var sLength = s.length;

    // look for @
    while ((i < sLength) && (s.charAt(i) != "@"))
    { i++
    }

    if ((i >= sLength) || (s.charAt(i) != "@")) return false;
    else i += 2;

    // look for .
    while ((i < sLength) && (s.charAt(i) != "."))
    { i++
    }

    // there must be at least one character after the .
    if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;
    else return true;
}
