function isEmail(obj)
{
	var result = false;
  	var theStr = new String(obj.value);
  	var index = theStr.indexOf("@");
  	
	if (index > 0)
  	{
    	var pindex = theStr.indexOf(".",index);
    	if ((pindex > index+1) && (theStr.length > pindex+1))
  			result = true;
  	}
  
  return result;
}
	
function stripCharsNotInBag(s, bag)
{  
	var i;
    var returnString = "";

    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) != -1) returnString += c;
    }

    return returnString;
}

function reformat (s)
{   
	var arg;
    var sPos = 0;
    var resultString = "";

    for (var i = 1; i < reformat.arguments.length; i++) {
       arg = reformat.arguments[i];
       if (i % 2 == 1) resultString += arg;
       else 
	   {
           resultString += s.substring(sPos, sPos + arg);
           sPos += arg;
       }
    }
    return resultString;
}

function doPhone(obj)	
{
	s = stripCharsNotInBag (obj.value, '1234567890');
	if (s.length != 10)
	{
		return false;
	}
	else
	{
		obj.value = reformat(stripCharsNotInBag (obj.value, '1234567890'), '', 3, '-', 3, '-', 4);
	
		return true;
	}
}

function doSubmit(frm)
{	
		
	if (frm.name.value.length == 0)
	{
		alert('You must enter your name.');
		frm.name.focus();
		return false;			
	}						
	else if (frm.company.value.length == 0)
	{
		alert('You must enter your company.');
		frm.company.focus();
		return false;
	}
	/**else if (frm.address1.value.length == 0)
	{
		alert('You must enter your address.');
		frm.address1.focus();
		return false;			
	}		
	else if (frm.city.value.length == 0)
	{
		alert('You must enter your city.');
		frm.city.focus();
		return false;			
	}	
	else if (frm.state.selectedIndex == 0)
	{
		alert('You must select your state.');
		frm.state.focus();
		return false;			
	}	
	else if (frm.zip.value.length < 5)
	{
		alert('You must enter a valid zip.');
		frm.zip.focus();
		return false;			
	}**/				
	else if (!isEmail(frm.email))
	{
		alert('You must enter a valid email address.');
		frm.email.select();
		frm.email.focus();
		return false;
	}	
	else if (!doPhone(frm.phone))
	{
		alert('You must enter a valid phone number. Ex: XXX-XXX-XXXX.');
		frm.phone.focus();
		frm.phone.select();
		return false;	
	}			
				
	AIM.submit(frm, {'onStart' : startCallback, 'onComplete' : completeCallback});
}

/**--------------------------Submission-less POST-----------------------**/
function showWaitMessage()
{
	null;
}

function startCallback() 
{		
	displayStaticMessage('<p align=center><b>Processing...</b></p><p align=center><img src=roller.gif></p>');
	//document.getElementById('btnSubmit').disabled = true;	
	return true;
}

function completeCallback() 
{
	//closeMessage();
	//alert();
	displayStaticMessage('<p align=center><b>' + 'Thank you!' + '</b></p><p align=center><input type=button value=Close onClick=closeMessage();></p>');
	//document.getElementById('r').innerHTML = response;
	//document.getElementById('btnSubmit').disabled = false;	
	return true;
}		
