/* $Id: login.js,v 1.6 2009/09/10 12:47:02 srinivas Exp $*/
function showHelpCard(cardid,showcard)
{
        document.getElementById(cardid).style.display=""+showcard;
}

function showDomainHelp()
{
		document.getElementById("subdomainhelp").style.display="block";
	
}
function hideDomainHelp()
{
		document.getElementById("subdomainhelp").style.display="none";
	
}
function showcontent(d, fade) 
{
		
	document.getElementById("ErrorMsg").style.display="none";
	if(fade == "rightPanel")
	{
		document.getElementById("rightPanel1").style.display="none";
		document.getElementById("rightPanel2").style.display="none";
		document.getElementById(d).style.display="block";
		return;
	}
	if(fade == "signinPanel")
	{
		document.getElementById("rightPanel1").style.display="block";
		document.getElementById("rightPanel2").style.display="block";
		document.getElementById(d).style.display="none";
		return;
	}
	if(document.getElementById(d, fade).style.display == "none")
	{ 
		document.getElementById(d).style.display = "block";
		document.getElementById(fade).style.display = "none";
	}
	else 
	{ 
		document.getElementById(d).style.display = "none"; 
		document.getElementById(fade).style.display = "block";
	}
}
function submitCredential(userName,password)
{
	document.CustomerSignUpForm.j_username.value=userName;
	document.CustomerSignUpForm.j_password.value=password;
	document.CustomerSignUpForm.submit();
	return true;
}

function validateUser()
{
	var userName = trimAll(document.loginForm.j_username.value);
	var password = trimAll(document.loginForm.j_password.value);
	if(userName == "")
	{
		alert('Please enter User Name');
		document.loginForm.j_username.focus();
		return false;
	}
	if(password == "")
	{
		alert('Please enter password');
		document.loginForm.j_password.focus();
		return false;
	}
	return true;
}

function trimAll(str) {
	//check for all spaces
	var objRegExp =/^(\s*)$/;
	if (objRegExp.test(str)) {
		str = str.replace(objRegExp,'');
		if (str.length == 0)
			return str;
	}
	// check for leading and trailling spaces
	objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;
	if(objRegExp.test(str)) {
		str = str.replace(objRegExp, '$2');
	}
	return str;
}
function isEmailId(str)
{
	str = trimAll(str);
	var objRegExp = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	return objRegExp.test(str); 
}
function signUpSubmit(signUpForm)
{
	if(validateSignup(signUpForm)) {
		document.signUpForm.submit();
		return true;
	}
	else
	{
		return false;
	}
}
function validateSignup(f){
	var loginId = f.loginid.value;
	if(loginId==''){
		alert("Enter valid User Name");
		f.loginid.focus();
		return false;
	}
	if(loginId.indexOf(" ") != -1)
	{
		alert("User Name should not contain space");
		f.loginid.focus();
		return false;
	}
	if(loginId.length < 4)
	{
		alert("User Name must contain minimum of 4 characters");
		f.loginid.focus();
		return false;
	}
	if(f.emailid.value=='' || !isEmailId(f.emailid.value)){
		alert("Enter valid Email Address");
		f.emailid.focus();
		return false;
	}
	/*if(isGenericMailId(f.emailid.value))
	{
		alert("Enter valid company email id");
		f.emailid.focus();
		return false;
	}*/
	if(f.organization.value== ''){
		alert("Enter the name of your organization");
		f.organization.focus();
		return false;
	}
	if(loginId.equalsIgnoreCase(f.organization.value))
	{
		alert("User Name and Organization Name should not be same");
		f.organization.focus();
		return false;
	}
	var domainNameVal = f.domainName.value;
	if(domainNameVal != '' && domainNameVal != 'ondemand')
	{
		if(!(isAlphaNumeric(domainNameVal)))
		{
			alert("Domain Name must contain only alpha numeric");
			f.domainName.focus();
			return false;
		}
		f.domainName.value = new String(domainNameVal).toLowerCase();	
	}
	if(!(f.agreement.checked))
	{
		alert("Please agree the Terms of Service and Privacy Policy");
		return false;
	}
	return canAccountBeCreated(f);
	/*if(f.password.value == ''){
		alert("Enter the password");
		f.password.focus();
		return false;
	}
	if(f.repassword.value == ''){
		alert("Retype the password");
		f.repassword.focus();
		return false;
	}
	if(f.password.value.length > 10 || f.password.value.length < 3){
		alert("Password must contain a minimum of 5 characters and a maximum of 10 characters");
		f.password.value="";
		f.repassword.value="";
		f.password.focus();
		return false;
	}
	if(f.password.value != f.repassword.value){
		alert("Password do not match");
		f.password.value="";
		f.repassword.value="";
		f.password.focus();
		return false;
	}*/
	//return true;
}

function canAccountBeCreated(f)
{
	var newloginname = f.loginid.value;
	var neworgname = f.organization.value;
	var newemail = f.emailid.value;
	var request = getAjaxRequestObj();
	if(!request)
	{
		window.alert("XMLHttpRequest Not supported.");
		return true;
	}
	var url = "/login/valid_signup_values.jsp?LOGINID="+newloginname+"&ORG_NAME="+neworgname+"&EMAILID="+newemail;
	request.open('GET',url,false);
	request.send(null);
	result = request.responseText;
	if(result.indexOf("Not Exists") != -1)
		return true;
	else
	{
		alert(result);
		return false;
	}
}
function getAjaxRequestObj()
{
      var http_request = false;
      if (window.XMLHttpRequest) 
      { 
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) 
	 {
            http_request.overrideMimeType('text/html');
         }
      } 
      else if (window.ActiveXObject) 
      { 
         try 
	 {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         }
	 catch (e) 
	 {
            try 
	    {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } 
	    catch (e) 
	    {
	    }
         }
      }
      return http_request;
}

String.prototype.equalsIgnoreCase = function(value)
{
return (new String(this.toLowerCase())==(new
String(value)).toLowerCase());
}

function isAlphaNumeric(str){
var objRegExp = /^[a-zA-Z0-9]+$/;
if(objRegExp.test(str)){
return true;
}
return false;
}

function isGenericMailId(mailid)
{
	var genericMailIds = new Array("@gmail.com","@yahoo.com","@yahoo.co.","@hotmail.com","@msn.com");
	var len = genericMailIds.length;
	for(var i = 0; i < len;i++)
	{
		if(mailid.indexOf(genericMailIds[i]) != -1)
		{
			return true;	
		}
	}
	return false;
}
