//proprietary code for http://www.zealneotech.com
//This code cannot be reused without author's prior permission
//Author : Sarika Singh, sarikabtech@yahoo.co.in/sarikabtech@gmail.com
//This file is used for validation of input fileds in contact us page

function clearfield(ele_id, id)
{
  document.getElementById(id).style.background='';
  document.getElementById(ele_id).innerHTML='';
  return;
}
function validate_required(field, id)
{
  var fvalue = field.value;
  fvalue = fvalue.replace(/^\s+|\s+$/g,"");
  if (fvalue==null||fvalue=="") 
  {
    var tmp_id="MMDiv_"+id; 
    var warnText=id.substring(0,1).toUpperCase()+id.substring(1)+" should be provided ";
    setWarnVisible(tmp_id);
    showWarning(tmp_id, warnText);
    setFieldBGColor(field);
    return false;
  }
  else
  {
    return true;
  }
}
function callFieldValidate(inpfield, id)
{
  if ( validate_required(inpfield, id)==false )
  {
    inpfield.focus();
    inpfield.select();
    return false;
  }
  return true;
}
function validate_form()
{ 
  return ( ( callFieldValidate(document.getElementById("name"),"name") &&
             callFieldValidate(document.getElementById("email"), "email") &&
             validate_email(document.getElementById("email"), "email") &&
             callFieldValidate(document.getElementById("subject"), "subject") &&
             callFieldValidate(document.getElementById("message"), "message") ) == true) ? true : false;  
}
// this function is for login page 
function validate_credentials()
{
 return ( ( callFieldValidate(document.getElementById("userid"),"userid") &&
            callFieldValidate(document.getElementById("password"),"password") )==true) ? true : false;
}
// this function is for upload resume page
function validateSubmissionForm()
{ 
 return ( ( callFieldValidate(document.getElementById("file"),"file") &&
            callFieldValidate(document.getElementById("security_code"),"security_code") )==true) ? true : false;
}
// this function is for change password page
function validateChagePasswordForm()
{
 return ( ( callFieldValidate(document.getElementById("oldPassword"),"oldPassword") &&
            callFieldValidate(document.getElementById("newPassword1"),"newPassword1") &&
            callFieldValidate(document.getElementById("newPassword2"),"newPassword2") &&
            isSameString(document.getElementById("newPassword1").value, document.getElementById("newPassword2").value, document.getElementById("newPassword2"), "MMDiv_newPassword2_mismatch"))==true) ? true : false;

}
function isSameString(str1, str2, field, tmp_id)
{
  if( str1 != str2 )
  {    
    var warnText = "Password mismatch. Please enter same passwords in both fields."
    setWarnVisible(tmp_id);
    showWarning(tmp_id, warnText);
    setFieldBGColor(field);        
    return false;
  }
  return true;
}
function validate_email(field, id)
{
  var apos=field.value.indexOf("@");
  var dotpos=field.value.lastIndexOf(".");
  var strLen=field.value.length;
  //condition, if @ is first char or last dot is next to @ or last dot is last char of string
  if ( (apos<1)||(dotpos-apos<2)||(dotpos==(strLen-1)) )
  {
    var text = "Email should be properly formed, e.g., john@gmail.com";
    setWarnVisible("MMDiv_email_inv");
    showWarning("MMDiv_email_inv", text);
    setFieldBGColor(field);    
    field.focus();
    field.select();
    return false;
  }
  else 
  {
    return true;
  }
}
function setWarnVisible(id)
{
  document.getElementById(id).style.visibility='visible';
}

function showWarning(id, text)
{
  document.getElementById(id).innerHTML='<font color=\"red\">'+text+'</font>';
}

function setFieldBGColor(field)
{
  field.style.background='#FFFACD';
}

function isEnterKey(e) 
{
  if(e) { e = e  } 
  else {
    e = window.event
  }  
  
  if(e.which) {
    var keycode = e.which  //FF
  } 
  else {
    var keycode = e.keyCode  //IE
  }
  if(keycode == 13) 
    return true;
  return false;
}      

function handleEnter(e,field)
{
  if(isEnterKey(e))
  {
        var i;
        for (i = 0; i < field.form.elements.length; i++)
  				if (field == field.form.elements[i])
  					break;
        i = (i + 1) % field.form.elements.length;
  			field.form.elements[i].focus();
  			return false;
  }    
}  

