﻿function ValidateExpertForm()
{ 
    var HasError =false;
    var strErrorMsg='';
    
    var Name=document.getElementById("txtName").value;
    var Email=document.getElementById("txtEmail").value;
    var Phone=document.getElementById("txtPhone").value;
    var Call=document.getElementById("ddlCall").value;
    var Project=document.getElementById("ddlProject").value;
    
    var nlblName=document.getElementById("lblName");
    var nlblEmail=document.getElementById("lblEmail");
    var nlblPhone=document.getElementById("lblPhone");
    var nlblCall=document.getElementById("lblCall");
    var nlblProject=document.getElementById("lblProject");
    
        
    nlblName.style.color="";
    nlblEmail.style.color="";
    nlblPhone.style.color="";
    nlblCall.style.color="";
    nlblProject.style.color="";
    
    
    if(Name.replace(/\s+/g,'')=="")
    {
      nlblName.style.color="Red";
      HasError =true;
    }
    
    
    if(Email.replace(/\s+/g,'')=="")
    {
      nlblEmail.style.color="Red";
      HasError =true;
    }
    else if(isValidEMailEntry(Email)==false)
    {
      nlblEmail.style.color="Red";
      HasError =true;
    }
    
    if(Phone.replace(/\s+/g,'')=="")
    {
      nlblPhone.style.color="Red";
      HasError =true;
    }
    
    if(Call.replace(/\s+/g,'')=="")
    {
      nlblCall.style.color="Red";
      HasError =true;
    }
    
    if(Project.replace(/\s+/g,'')=="")
    {
      nlblProject.style.color="Red";
      HasError =true;
    }
    
    if(HasError ==true)
    {
      alert("Please correct the input(s) highlighted in red.");
      return false;
    }
  

    var url = "/library/TalkToAnExpert.aspx?Name="+Name +"&Email="+Email+"&Phone="+Phone+"&Call="+Call+"&Project="+Project;
    makeTalkToAnExpertHttpRequest(url,undefined);
}

function isValidEMailEntry(strEmail)
{
  var regEmail = new RegExp("\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");
  if (strEmail.match(regEmail)==null) 
  {
   return false;
  }
  else if(strEmail.charAt(strEmail.length-1)==".")
  {
   return false;
  }
  return true;
}

function makeTalkToAnExpertHttpRequest(url, element)
{
  var http_request = false;
  if (window.XMLHttpRequest)
   { // Mozilla, Safari,...
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType)
     {
      http_request.overrideMimeType('text/xml');
    }
  }
  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)
  {
    alert('Browser doesn\'t support Ajax. Site will NOT FULLY function properly.');
    return false;
  }
  http_request.onreadystatechange = function()
   {
    if (http_request.readyState == 4)
    {
      if (http_request.status == 200) 
      {  
        LoadTalkToAnExpertXML(http_request.responseText);

      } 
      else
      {
        alert('There was a problem with the request. (Code: ' + http_request.status + ')');
      }
    }
  }
  http_request.open('GET', url, true);
  http_request.send(null);
}



function LoadTalkToAnExpertXML(xml)
{
	// Fill ResultMessage
    	if(xml.search('InvalidInput')!=-1)
	    {
	      alert("Please make sure that all the required fields are filled.");
	    }
	    else if (xml.search('ErrorOnSave')!=-1)
	    {
	        alert("Error is being occured while saving the information. Please try later.");
	    }
	    else if (xml.search('Sucessful')!=-1)
	    {
	        var ndivForm = document.getElementById('divForm');	    
            var ndivMessage = document.getElementById('divMessage');
	        ndivForm.style.display="none";
	        ndivMessage.style.display="inline";
	    }

}