// form validation function //
function validate_select(form) {
  
   var state = form.state.value;
   var group = form.group.value;
 
  if(group == "") {
    inlineMsg('group','You must select Blood Group.',2);
    return false;
  }
    if(state == "") {
    inlineMsg('state','You must Select State.');
    return false;
  }
     return true;
}

function validate_register(){
  
   var username = document.getElementById("username").value;
   var group = document.getElementById("group").value;
   var text212= document.getElementById("text212").value;
   var text213=document.getElementById("text213").value;
   var name=document.getElementById("name").value;
   var contact=document.getElementById("contact").value;
   var jscal_field_Month1=document.getElementById("jscal_field_Month1").value;
   var weight=document.getElementById("weight").value;
   var gender=document.getElementById("gender").value;
   var address=document.getElementById("address").value;
   var state=document.getElementById("state").value;
   var district=document.getElementById("district").value;
   var location=document.getElementById("location").value;
    if(location == "otherplace") {
     var location1=document.getElementById("location1").value;
    }
   var agree=document.getElementById("agree").checked;
   
   var emailRegex = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
 
   
    if(username == "") {
    inlineMsg('username','You must Enter Your Email Id..');
    return false;
    }
	 if(!username.match(emailRegex)) {
    inlineMsg('username','<strong>Error</strong><br />You have entered an invalid email.',2);
    return false;
    }
	if(text212 == "") {
    inlineMsg('text212','Please Enter Password...');
    return false;
    }
	if (text212.length < 6)
	{
	inlineMsg('text212','Password length should be more than 6........');
	return false;
	}
	if(text213 == "") {
    inlineMsg('text213','Retype Your Password again....');
    return false;
    }
	if (text213 != text212){
	inlineMsg('text213','The passwords not match...');
	return false;
	}
    if(group == "") {
    inlineMsg('group','You must Select Blood Group...');
    return false;
    }
	
	if(name == "") {
    inlineMsg('name','Please Enter Your name....');
    return false;
    }
	if(contact == "") {
    inlineMsg('contact','Please enter Your Contact No....');
    return false;
    }
	if(jscal_field_Month1 == "") {
    inlineMsg('jscal_trigger_Month1','Please select DOB...');
    return false;
    }
	if(weight == "") {
    inlineMsg('weight','Please Enter Your weight....');
    return false;
    }
	if(gender == "") {
    inlineMsg('gender','Please Select Gender....');
    return false;
    }
	if(address == "") {
    inlineMsg('address','Fill Your Address...');
    return false;
    }
	if(state == "") {
    inlineMsg('state','Please Select State...');
    return false;
    }
	if(district == "") {
    inlineMsg('district','Please Select District...');
    return false;
    }
	if(location == "") {
    inlineMsg('location','Please Select Location...');
    return false;
    }
   if(location == "otherplace") {
    if(location1 == "") {
    inlineMsg('location1','Please Type Your Location Here ...');
    return false;
	}
    }
   if(agree == 0) {
    inlineMsg('agree','You cannot submit the form until you accept the terms of the licence agreement!....');
    return false;
    }
     return true;
}
function validate_register1(form){
  
   var username = form.username.value;
   var text212= form.text212.value;
   var text213=form.text213.value;
   var group = form.group.value;
   var name=form.name.value;
   var contact=form.contact.value;
   var jscal_field_Month1=form.jscal_field_Month1.value;
   var weight=form.weight.value;
   var gender=form.gender.value;
   var address=form.address.value;
   var state=form.state.value;
   var district=form.district.value;
   var location=form.location.value;
  if(location == "otherplace") {
     var location1=form.location1.value;
    }

   var agree=form.agree.checked;
   
   var emailRegex = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
 
   
    if(username == "") {
    inlineMsg('username','You must Enter Your Email Id..');
    return false;
    }
	 if(!username.match(emailRegex)) {
    inlineMsg('username','<strong>Error</strong><br />You have entered an invalid email.',2);
    return false;
    }
	if(text212 == "") {
    inlineMsg('text212','Please Enter Password...');
    return false;
    }
	if (text212.length < 6)
	{
	inlineMsg('text212','Password length should be more than 6........');
	return false;
	}
	if(text213 == "") {
    inlineMsg('text213','Retype Your Password again....');
    return false;
    }
	if (text213 != text212){
	inlineMsg('text213','The passwords not match...');
	return false;
	}
    if(group == "") {
    inlineMsg('group','You must Select Blood Group....');
    return false;
    }
	if(name == "") {
    inlineMsg('name','Please Enter Your name....');
    return false;
    }
	if(contact == "") {
    inlineMsg('contact','Please enter Your Contact No....');
    return false;
    }
	if(jscal_field_Month1 == "") {
    inlineMsg('jscal_trigger_Month1','Please select DOB...');
    return false;
    }
	if(weight == "") {
    inlineMsg('weight','Please Enter Your weight....');
    return false;
    }
	if(gender == "") {
    inlineMsg('gender','Please Select Gender....');
    return false;
    }
	if(address == "") {
    inlineMsg('address','Fill Your Address...');
    return false;
    }
	if(state == "") {
    inlineMsg('state','Please Select State...');
    return false;
    }
	if(district == "") {
    inlineMsg('district','Please Select District...');
    return false;
    }
  if(location == "") {
    inlineMsg('location','Please Select Location...');
    return false;
    }
   if(location == "otherplace") {
   if(location1 == "") {
    inlineMsg('location1','Please Type Your Location Here ...');
    return false;
		}
	}
	if(agree == 0) {
    inlineMsg('agree','You cannot submit the form until you accept the terms of the licence agreement!....');
    return false;
    }
     return true;
}

function validate_myaccount(form){
	
   var text212= form.text212.value;
   var text213=form.text213.value;
   var group = form.group.value;
   var name=form.name.value;
   var contact=form.contact.value;
   var jscal_field_Month1=form.jscal_field_Month1.value;
   var weight=form.weight.value;
   var gender=form.gender.value;
   var address=form.address.value;
   var state=form.state.value;
   var district=form.district.value;
   var location=form.location.value;
 if(location == "otherplace") {
     var location1=form.location1.value;
    }
   
	if(text212 == "") {
    inlineMsg('text212','Please Enter Password...');
    return false;
    }
	if (text212.length < 6)
	{
	inlineMsg('text212','Password length should be more than 6........');
	return false;
	}
	if(text213 == "") {
    inlineMsg('text213','Retype Your Password again....');
    return false;
    }
	if (text213 != text212){
	inlineMsg('text213','The passwords not match...');
	return false;
	}
    if(group == "") {
    inlineMsg('group','You must Select Blood Group....');
    return false;
    }
	if(name == "") {
    inlineMsg('name','Please Enter Your name....');
    return false;
    }
	if(contact == "") {
    inlineMsg('contact','Please enter Your Contact No....');
    return false;
    }
	if(jscal_field_Month1 == "") {
    inlineMsg('jscal_trigger_Month1','Please select DOB...');
    return false;
    }
	if(weight == "") {
    inlineMsg('weight','Please Enter Your weight....');
    return false;
    }
	if(gender == "") {
    inlineMsg('gender','Please Select Gender....');
    return false;
    }
	if(address == "") {
    inlineMsg('address','Fill Your Address...');
    return false;
    }
	if(state == "") {
    inlineMsg('state','Please Select State...');
    return false;
    }
	if(district == "") {
    inlineMsg('district','Please Select District...');
    return false;
    }
	if(location == "") {
    inlineMsg('location','Please Select District...');
    return false;
    }
  if(location == "otherplace") {
   if(location1 == "") {
    inlineMsg('location1','Please Type Your Location Here ...');
    return false;
		}
 }
	return true;
}



function validate(form) {
   var message = form.message.value;
   var name = form.name.value;
   var email = form.email.value;
   var phone = form.phone.value;
       
  var nameRegex = /^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$/;
  var emailRegex = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
  var messageRegex = new RegExp(/<\/?\w+((\s+\w+(\s*=\s*(?:".*?"|'.*?'|[^'">\s]+))?)+\s*|\s*)\/?>/gim);
  if(name == "") {
    inlineMsg('name','You must enter your name.',2);
    return false;
  }
  if(!name.match(nameRegex)) {
    inlineMsg('name','You have entered an invalid name.',2);
    return false;
  }
  if(email == "") {
    inlineMsg('email','<strong>Error</strong><br />You must enter your email.',2);
    return false;
  }
  if(!email.match(emailRegex)) {
    inlineMsg('email','<strong>Error</strong><br />You have entered an invalid email.',2);
    return false;
  }
  if(phone == "") {
    inlineMsg('phone','You must enter your Phone No.',2);
    return false;
  }
    if(message == "") {
    inlineMsg('message','You must enter a Description.');
    return false;
  }
  if(message.match(messageRegex)) {
    inlineMsg('message','You have entered an invalid Description.');
    return false;
  }
    return true;
}

// START OF MESSAGE SCRIPT //

var MSGTIMER = 20;
var MSGSPEED = 5;
var MSGOFFSET = 3;
var MSGHIDE = 3;

// build out the divs, set attributes and call the fade function //
function inlineMsg(target,string,autohide) {
  var msg;
  var msgcontent;
  if(!document.getElementById('msg')) {
    msg = document.createElement('div');
    msg.id = 'msg';
    msgcontent = document.createElement('div');
    msgcontent.id = 'msgcontent';
    document.body.appendChild(msg);
    msg.appendChild(msgcontent);
    msg.style.filter = 'alpha(opacity=0)';
    msg.style.opacity = 0;
    msg.alpha = 0;
  } else {
    msg = document.getElementById('msg');
    msgcontent = document.getElementById('msgcontent');
  }
  msgcontent.innerHTML = string;
  msg.style.display = 'block';
  var msgheight = msg.offsetHeight;
  var targetdiv = document.getElementById(target);
  targetdiv.focus();
  var targetheight = targetdiv.offsetHeight;
  var targetwidth = targetdiv.offsetWidth;
  var topposition = topPosition(targetdiv) - ((msgheight - targetheight) / 2);
  var leftposition = leftPosition(targetdiv) + targetwidth + MSGOFFSET;
  msg.style.top = topposition + 'px';
  msg.style.left = leftposition + 'px';
  clearInterval(msg.timer);
  msg.timer = setInterval("fadeMsg(1)", MSGTIMER);
  if(!autohide) {
    autohide = MSGHIDE;  
  }
  window.setTimeout("hideMsg()", (autohide * 1000));
}

// hide the form alert //
function hideMsg(msg) {
  var msg = document.getElementById('msg');
  if(!msg.timer) {
    msg.timer = setInterval("fadeMsg(0)", MSGTIMER);
  }
}

// face the message box //
function fadeMsg(flag) {
  if(flag == null) {
    flag = 1;
  }
  var msg = document.getElementById('msg');
  var value;
  if(flag == 1) {
    value = msg.alpha + MSGSPEED;
  } else {
    value = msg.alpha - MSGSPEED;
  }
  msg.alpha = value;
  msg.style.opacity = (value / 100);
  msg.style.filter = 'alpha(opacity=' + value + ')';
  if(value >= 99) {
    clearInterval(msg.timer);
    msg.timer = null;
  } else if(value <= 1) {
    msg.style.display = "none";
    clearInterval(msg.timer);
  }
}

// calculate the position of the element in relation to the left of the browser //
function leftPosition(target) {
  var left = 0;
  if(target.offsetParent) {
    while(1) {
      left += target.offsetLeft;
      if(!target.offsetParent) {
        break;
      }
      target = target.offsetParent;
    }
  } else if(target.x) {
    left += target.x;
  }
  return left;
}

// calculate the position of the element in relation to the top of the browser window //
function topPosition(target) {
  var top = 0;
  if(target.offsetParent) {
    while(1) {
      top += target.offsetTop;
      if(!target.offsetParent) {
        break;
      }
      target = target.offsetParent;
    }
  } else if(target.y) {
    top += target.y;
  }
  return top;
}

// preload the arrow //
if(document.images) {
  arrow = new Image(7,80); 
  arrow.src = "images/msg_arrow.gif"; 
}

