// JavaScript Document

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


function abrir(URL,width,height) {

  var left = 100;

  var top = 100;

  window.open(URL,'janela', 'width='+width+', height='+height+', top='+top+', left='+left+', scrollbars=no, status=no, toolbar=no, location=no, directories=no, menubar=no, resizable=no, fullscreen=no');

}



////// CONTATOS      /////////////
function habilita ()
{
	if(document.getElementById('opcional').style.height == '1px')
	{
		document.getElementById('opcional').style.height = 'auto';
	}
	else
	{
		document.getElementById('opcional').style.height = '1px';
	}
}

function habilita2 ()
{
	if(document.getElementById('opcional2').style.height == '1px')
	{
		document.getElementById('opcional2').style.height = 'auto';
	}
	else
	{
		document.getElementById('opcional2').style.height = '1px';
	}
}



////////////////////////////////////
//////// ABAS //////////////////////
///////////////////////////////////
function mudaTamanho(variavel) {

//	var i == 0;
//	var teste == 0;
//	var abas = new Array('aba_esbocos','aba_guia','aba_videos','aba_papel','aba_culto','aba_atividades');
	
	if (document.getElementById(variavel).style.height != 'auto')
	{
		
		document.getElementById('aba_home').style.height = 0;
		document.getElementById('aba_atitude').style.height = 0;
		document.getElementById('aba_retiro').style.height = 0;
		document.getElementById(variavel).style.height = 'auto';
	}
		
};

////////////////////////////////////
//////// Inscrição /////////////////
////////////////////////////////////
function chMd()
 {
  // initialize form with empty field
 		// document.forms[0].sTextBox.disabled=false;
  		// document.forms[0].sTextBox.value="";

  		// document.forms[0].eTextBox.disabled=false;
  		// document.forms[0].eTextBox.value="";

  		//document.forms[0].goServer.disabled=false;

  for(var i=0;i<document.forms[0].elements.length;i++)
  {
    if(document.forms[0].elements[i].name=="dOption")
    {
     if(document.forms[0].elements[i].value=="A")
     {
       if(document.forms[0].elements[i].checked==true){
        
		document.forms[0].pRadio[0].disabled=true;
        document.forms[0].pRadio[1].disabled=true;
        document.forms[0].pRadio[2].disabled=true;
		document.forms[0].pRadio[3].disabled=true;
		document.forms[0].pRadio[4].disabled=true;
		document.forms[0].pRadio[5].disabled=true;
		document.forms[0].pRadio[6].disabled=true;
		document.forms[0].pRadio[7].disabled=true;
		document.forms[0].pRadio[8].disabled=true;
		
		document.forms[0].tRadio[0].disabled=true;
		document.forms[0].tRadio[1].disabled=true;
		document.forms[0].tRadio[2].disabled=true;
		document.forms[0].tRadio[3].disabled=true;
		document.forms[0].tRadio[4].disabled=true;
		document.forms[0].tRadio[5].disabled=true;
		document.forms[0].tRadio[6].disabled=true;
		document.forms[0].tRadio[7].disabled=true;
		document.forms[0].tRadio[8].disabled=true;

       }
     }
	  else if(document.forms[0].elements[i].value=="B")
     {
       if(document.forms[0].elements[i].checked==true){
        
		       
        document.forms[0].pRadio[0].disabled=false;
        document.forms[0].pRadio[1].disabled=false;
        document.forms[0].pRadio[2].disabled=false;
		document.forms[0].pRadio[3].disabled=false;
		document.forms[0].pRadio[4].disabled=false;
		document.forms[0].pRadio[5].disabled=false;
		document.forms[0].pRadio[6].disabled=false;
		document.forms[0].pRadio[7].disabled=false;
		document.forms[0].pRadio[8].disabled=false;
		
		document.forms[0].tRadio[0].disabled=false;
		document.forms[0].tRadio[1].disabled=false;
		document.forms[0].tRadio[2].disabled=false;
		document.forms[0].tRadio[3].disabled=false;
		document.forms[0].tRadio[4].disabled=false;
		document.forms[0].tRadio[5].disabled=false;
		document.forms[0].tRadio[6].disabled=false;
		document.forms[0].tRadio[7].disabled=false;
		document.forms[0].tRadio[8].disabled=false;

        	
       }
     }
	 
    }
//////////////////////////////////////////////
///////// Compos /////////////////////////////


////////////////////// opções de seminarios
////////////////////// A
				    if(document.forms[0].elements[i].name=="pRadio")
					{
						 if(document.forms[0].elements[i].value=="M1")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].tRadio[0].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="M1")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].tRadio[0].disabled=false;
				
							   }
						 }
					 }
					 if(document.forms[0].elements[i].name=="pRadio")
					{
						 if(document.forms[0].elements[i].value=="M2")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].tRadio[1].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="M2")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].tRadio[1].disabled=false;
				
							   }
						 }
					 }
					
					 if(document.forms[0].elements[i].name=="pRadio")
					{
						 if(document.forms[0].elements[i].value=="M4")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].tRadio[3].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="M4")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].tRadio[3].disabled=false;
				
							   }
						 }
					 }
					 
					
										 
					
///////////////////// B
					if(document.forms[0].elements[i].name=="tRadio")
					{
						 if(document.forms[0].elements[i].value=="T1")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].pRadio[0].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="T1")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].pRadio[0].disabled=false;
				
							   }
						 }
					 }
					 if(document.forms[0].elements[i].name=="tRadio")
					{
						 if(document.forms[0].elements[i].value=="T2")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].pRadio[1].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="T2")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].pRadio[1].disabled=false;
				
							   }
						 }
					 }
					 
					 if(document.forms[0].elements[i].name=="tRadio")
					{
						 if(document.forms[0].elements[i].value=="T4")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].pRadio[3].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="T4")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].pRadio[3].disabled=false;
				
							   }
						 }
					 }
					 
					
					
					 
					 
					
					
					
					
//////////////////////sessão em grupo
					
					 if(document.forms[0].elements[i].name=="sradio")
					{
						 if(document.forms[0].elements[i].value=="S3")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].gradio[2].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="S3")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].gradio[2].disabled=false;
				
							   }
						 }
					 }
					 if(document.forms[0].elements[i].name=="sradio")
					{
						 if(document.forms[0].elements[i].value=="S4")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].gradio[3].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="S4")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].gradio[3].disabled=false;
				
							   }
						 }
					 }
					 if(document.forms[0].elements[i].name=="sradio")
					{
						 if(document.forms[0].elements[i].value=="S5")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].gradio[4].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="S5")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].gradio[4].disabled=false;
				
							   }
						 }
					 }
					 
					 if(document.forms[0].elements[i].name=="sradio")
					{
						 if(document.forms[0].elements[i].value=="S6")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].gradio[5].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="S6")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].gradio[5].disabled=false;
				
							   }
						 }
					 }
					 
					
					 if(document.forms[0].elements[i].name=="gradio")
					{
						 if(document.forms[0].elements[i].value=="G3")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].sradio[2].disabled=true;
				
							   }
						 }
						else if(document.forms[0].elements[i].value!="G3")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].sradio[2].disabled=false;
				
							   }
						 }
					 }
					 if(document.forms[0].elements[i].name=="gradio")
					{
						 if(document.forms[0].elements[i].value=="G4")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].sradio[3].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="G4")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].sradio[3].disabled=false;
				
							   }
						 }
					 }
					 if(document.forms[0].elements[i].name=="gradio")
					{
						 if(document.forms[0].elements[i].value=="G5")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].sradio[4].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="G5")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].sradio[4].disabled=false;
				
							   }
						 }
					 }
					 if(document.forms[0].elements[i].name=="gradio")
					{
						 if(document.forms[0].elements[i].value=="G6")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].sradio[5].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="G6")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].sradio[5].disabled=false;
				
							   }
						 }
					 }
					 
					 
/******** Retiro ou Atitude 4343 ************////					 
					 if(document.forms[0].elements[i].name=="retiro")
					{
						 if(document.forms[0].elements[i].value=="Retiro")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].atitude[0].disabled=true;
								document.forms[0].atitude[1].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="Retiro")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].atitude[0].disabled=false;
								document.forms[0].atitude[1].disabled=false;
				
							   }
						 }
					 }
					 if(document.forms[0].elements[i].name=="atitude")
					{
						 if(document.forms[0].elements[i].value=="Atitude")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].retiro[0].disabled=true;
								document.forms[0].retiro[1].disabled=true;
				
							   }
						 }
						 else if(document.forms[0].elements[i].value!="Atitude")
						 {
							   if(document.forms[0].elements[i].checked==true){
						
								document.forms[0].retiro[0].disabled=false;
								document.forms[0].retiro[1].disabled=false;
				
							   }
						 }
					 }
					
				
  }
  

var form = document.forms['fRadio'];
var valorinscricao1="0";
var retirovalor="0";
var atitudevalor="0";
var alimentacao="0";
var hospedagem="0";
			

if (form.retiro[0].checked)
{
retirovalor="90";
}
if (form.retiro[1].checked)
{
retirovalor="0";
}

if (form.atitude[0].checked)
{
atitudevalor="40";
}
if (form.atitude[1].checked)
{
atitudevalor="0";
}

if (form.forradio[0].checked)
{
valorinscricao1="80";
}
if (form.forradio[1].checked)
{
valorinscricao1="57";
}
if (form.forradio[2].checked)
{
valorinscricao1="90";
}
if (form.forradio[3].checked)
{
valorinscricao1="64";
}

if (form.alim.checked)
{
alimentacao="100";
}

if (form.hosp[0].checked)
{
hospedagem="344";
}
if (form.hosp[1].checked)
{
hospedagem="252";
}
if (form.hosp[2].checked)
{
hospedagem="222";
}
if (form.hosp[3].checked)
{
hospedagem="404";
}
if (form.hosp[4].checked)
{
hospedagem="282";
}
if (form.hosp[5].checked)
{
hospedagem="242";
}
if (form.hosp[6].checked)
{
hospedagem="524";
}
if (form.hosp[7].checked)
{
hospedagem="322";
}
if (form.hosp[8].checked)
{
hospedagem="282";
}

form.campo4.value = parseFloat(valorinscricao1)+parseFloat(retirovalor)+parseFloat(atitudevalor)+parseFloat(alimentacao)+parseFloat(hospedagem);
}


///////////* FUNÇÃO MASCARA NO FORMULAIOS //////////*
function mascara(o,f){
    v_obj=o
    v_fun=f
    setTimeout("execmascara()",1)
}

function execmascara(){
    v_obj.value=v_fun(v_obj.value)
}

function leech(v){
    v=v.replace(/o/gi,"0")
    v=v.replace(/i/gi,"1")
    v=v.replace(/z/gi,"2")
    v=v.replace(/e/gi,"3")
    v=v.replace(/a/gi,"4")
    v=v.replace(/s/gi,"5")
    v=v.replace(/t/gi,"7")
    return v
}

function soNumeros(v){
    return v.replace(/\D/g,"")
}

function telefone(v){
    v=v.replace(/\D/g,"")                 //Remove tudo o que não é dígito
    v=v.replace(/^(\d\d)(\d)/g,"($1) $2") //Coloca parênteses em volta dos dois primeiros dígitos
    v=v.replace(/(\d{4})(\d)/,"$1-$2")    //Coloca hífen entre o quarto e o quinto dígitos
    return v
}

function cpf(v){
    v=v.replace(/\D/g,"")                    //Remove tudo o que não é dígito
    v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
    v=v.replace(/(\d{3})(\d)/,"$1.$2")       //Coloca um ponto entre o terceiro e o quarto dígitos
                                             //de novo (para o segundo bloco de números)
    v=v.replace(/(\d{3})(\d{1,2})$/,"$1-$2") //Coloca um hífen entre o terceiro e o quarto dígitos
    return v
}

function cep(v){
    v=v.replace(/D/g,"")                //Remove tudo o que não é dígito
    v=v.replace(/^(\d{5})(\d)/,"$1-$2") //Esse é tão fácil que não merece explicações
    return v
}

function cnpj(v){
    v=v.replace(/\D/g,"")                           //Remove tudo o que não é dígito
    v=v.replace(/^(\d{2})(\d)/,"$1.$2")             //Coloca ponto entre o segundo e o terceiro dígitos
    v=v.replace(/^(\d{2})\.(\d{3})(\d)/,"$1.$2.$3") //Coloca ponto entre o quinto e o sexto dígitos
    v=v.replace(/\.(\d{3})(\d)/,".$1/$2")           //Coloca uma barra entre o oitavo e o nono dígitos
    v=v.replace(/(\d{4})(\d)/,"$1-$2")              //Coloca um hífen depois do bloco de quatro dígitos
    return v
}

function romanos(v){
    v=v.toUpperCase()             //Maiúsculas
    v=v.replace(/[^IVXLCDM]/g,"") //Remove tudo o que não for I, V, X, L, C, D ou M
    //Essa é complicada! Copiei daqui: http://www.diveintopython.org/refactoring/refactoring.html
    while(v.replace(/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/,"")!="")
        v=v.replace(/.$/,"")
    return v
}

function site(v){
    //Esse sem comentarios para que você entenda sozinho ;-)
    v=v.replace(/^http:\/\/?/,"")
    dominio=v
    caminho=""
    if(v.indexOf("/")>-1)
        dominio=v.split("/")[0]
        caminho=v.replace(/[^\/]*/,"")
    dominio=dominio.replace(/[^\w\.\+-:@]/g,"")
    caminho=caminho.replace(/[^\w\d\+-@:\?&=%\(\)\.]/g,"")
    caminho=caminho.replace(/([\?&])=/,"$1")
    if(caminho!="")dominio=dominio.replace(/\.+$/,"")
    v="http://"+dominio+caminho
    return v
}



//FORM para DATA
<!-- Original:  Richard Gorremans (RichardG@spiritwolfx.com) -->
<!-- Web Site:  http://www.spiritwolfx.com -->

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
// Check browser version
var isNav4 = false, isNav5 = false, isIE4 = false
var strSeperator = "/"; 
// If you are using any Java validation on the back side you will want to use the / because 
// Java date validations do not recognize the dash as a valid date separator.
var vDateType = 3; // Global value for type of date format
//                1 = mm/dd/yyyy
//                2 = yyyy/dd/mm  (Unable to do date check at this time)
//                3 = dd/mm/yyyy
var vYearType = 4; //Set to 2 or 4 for number of digits in the year for Netscape
var vYearLength = 2; // Set to 4 if you want to force the user to enter 4 digits for the year before validating.
var err = 0; // Set the error code to a default of zero
if(navigator.appName == "Netscape") {
if (navigator.appVersion < "5") {
isNav4 = true;
isNav5 = false;
}
else
if (navigator.appVersion > "4") {
isNav4 = false;
isNav5 = true;
   }
}
else {
isIE4 = true;
}
function DateFormat(vDateName, vDateValue, e, dateCheck, dateType) {
vDateType = dateType;
// vDateName = object name
// vDateValue = value in the field being checked
// e = event
// dateCheck 
// True  = Verify that the vDateValue is a valid date
// False = Format values being entered into vDateValue only
// vDateType
// 1 = mm/dd/yyyy
// 2 = yyyy/mm/dd
// 3 = dd/mm/yyyy
//Enter a tilde sign for the first number and you can check the variable information.
if (vDateValue == "~") {
alert("AppVersion = "+navigator.appVersion+" \nNav. 4 Version = "+isNav4+" \nNav. 5 Version = "+isNav5+" \nIE Version = "+isIE4+" \nYear Type = "+vYearType+" \nDate Type = "+vDateType+" \nSeparator = "+strSeperator);
vDateName.value = "";
vDateName.focus();
return true;
}
var whichCode = (window.Event) ? e.which : e.keyCode;
// Check to see if a seperator is already present.
// bypass the date if a seperator is present and the length greater than 8
if (vDateValue.length > 8 && isNav4) {
if ((vDateValue.indexOf("-") >= 1) || (vDateValue.indexOf("/") >= 1))
return true;
}
//Eliminate all the ASCII codes that are not valid
var alphaCheck = " abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/-";
if (alphaCheck.indexOf(vDateValue) >= 1) {
if (isNav4) {
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
else {
vDateName.value = vDateName.value.substr(0, (vDateValue.length-1));
return false;
   }
}
if (whichCode == 8) //Ignore the Netscape value for backspace. IE has no value
return false;
else {
//Create numeric string values for 0123456789/
//The codes provided include both keyboard and keypad values
var strCheck = '47,48,49,50,51,52,53,54,55,56,57,58,59,95,96,97,98,99,100,101,102,103,104,105';
if (strCheck.indexOf(whichCode) != -1) {
if (isNav4) {
if (((vDateValue.length < 6 && dateCheck) || (vDateValue.length == 7 && dateCheck)) && (vDateValue.length >=1)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
if (vDateValue.length == 6 && dateCheck) {
var mDay = vDateName.value.substr(2,2);
var mMonth = vDateName.value.substr(0,2);
var mYear = vDateName.value.substr(4,4)
//Turn a two digit year into a 4 digit year
if (mYear.length == 2 && vYearType == 4) {
var mToday = new Date();
//If the year is greater than 30 years from now use 19, otherwise use 20
var checkYear = mToday.getFullYear() + 30; 
var mCheckYear = '20' + mYear;
if (mCheckYear >= checkYear)
mYear = '19' + mYear;
else
mYear = '20' + mYear;
}
var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
if (!dateValid(vDateValueCheck)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
return true;
}
else {
// Reformat the date for validation and set date type to a 1
if (vDateValue.length >= 8  && dateCheck) {
if (vDateType == 1) // mmddyyyy
{
var mDay = vDateName.value.substr(2,2);
var mMonth = vDateName.value.substr(0,2);
var mYear = vDateName.value.substr(4,4)
vDateName.value = mMonth+strSeperator+mDay+strSeperator+mYear;
}
if (vDateType == 2) // yyyymmdd
{
var mYear = vDateName.value.substr(0,4)
var mMonth = vDateName.value.substr(4,2);
var mDay = vDateName.value.substr(6,2);
vDateName.value = mYear+strSeperator+mMonth+strSeperator+mDay;
}
if (vDateType == 3) // ddmmyyyy
{
var mMonth = vDateName.value.substr(2,2);
var mDay = vDateName.value.substr(0,2);
var mYear = vDateName.value.substr(4,4)
vDateName.value = mDay+strSeperator+mMonth+strSeperator+mYear;
}
//Create a temporary variable for storing the DateType and change
//the DateType to a 1 for validation.
var vDateTypeTemp = vDateType;
vDateType = 1;
var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
if (!dateValid(vDateValueCheck)) {
alert("Invalid Date\nPlease Re-Enter");
vDateType = vDateTypeTemp;
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
vDateType = vDateTypeTemp;
return true;
}
else {
if (((vDateValue.length < 8 && dateCheck) || (vDateValue.length == 9 && dateCheck)) && (vDateValue.length >=1)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
         }
      }
   }
}
else {
// Non isNav Check
if (((vDateValue.length < 8 && dateCheck) || (vDateValue.length == 9 && dateCheck)) && (vDateValue.length >=1)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
return true;
}
// Reformat date to format that can be validated. mm/dd/yyyy
if (vDateValue.length >= 8 && dateCheck) {
// Additional date formats can be entered here and parsed out to
// a valid date format that the validation routine will recognize.
if (vDateType == 1) // mm/dd/yyyy
{
var mMonth = vDateName.value.substr(0,2);
var mDay = vDateName.value.substr(3,2);
var mYear = vDateName.value.substr(6,4)
}
if (vDateType == 2) // yyyy/mm/dd
{
var mYear = vDateName.value.substr(0,4)
var mMonth = vDateName.value.substr(5,2);
var mDay = vDateName.value.substr(8,2);
}
if (vDateType == 3) // dd/mm/yyyy
{
var mDay = vDateName.value.substr(0,2);
var mMonth = vDateName.value.substr(3,2);
var mYear = vDateName.value.substr(6,4)
}
if (vYearLength == 4) {
if (mYear.length < 4) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
return true;
   }
}
// Create temp. variable for storing the current vDateType
var vDateTypeTemp = vDateType;
// Change vDateType to a 1 for standard date format for validation
// Type will be changed back when validation is completed.
vDateType = 1;
// Store reformatted date to new variable for validation.
var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
if (mYear.length == 2 && vYearType == 4 && dateCheck) {
//Turn a two digit year into a 4 digit year
var mToday = new Date();
//If the year is greater than 30 years from now use 19, otherwise use 20
var checkYear = mToday.getFullYear() + 30; 
var mCheckYear = '20' + mYear;
if (mCheckYear >= checkYear)
mYear = '19' + mYear;
else
mYear = '20' + mYear;
vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
// Store the new value back to the field.  This function will
// not work with date type of 2 since the year is entered first.
if (vDateTypeTemp == 1) // mm/dd/yyyy
vDateName.value = mMonth+strSeperator+mDay+strSeperator+mYear;
if (vDateTypeTemp == 3) // dd/mm/yyyy
vDateName.value = mDay+strSeperator+mMonth+strSeperator+mYear;
} 
if (!dateValid(vDateValueCheck)) {
alert("Invalid Date\nPlease Re-Enter");
vDateType = vDateTypeTemp;
vDateName.value = "";
vDateName.focus();
return true;
}
vDateType = vDateTypeTemp;
return true;
}
else {
if (vDateType == 1) {
if (vDateValue.length == 2) {
vDateName.value = vDateValue+strSeperator;
}
if (vDateValue.length == 5) {
vDateName.value = vDateValue+strSeperator;
   }
}
if (vDateType == 2) {
if (vDateValue.length == 4) {
vDateName.value = vDateValue+strSeperator;
}
if (vDateValue.length == 7) {
vDateName.value = vDateValue+strSeperator;
   }
} 
if (vDateType == 3) {
if (vDateValue.length == 2) {
vDateName.value = vDateValue+strSeperator;
}
if (vDateValue.length == 5) {
vDateName.value = vDateValue+strSeperator;
   }
}
return true;
   }
}
if (vDateValue.length == 10&& dateCheck) {
if (!dateValid(vDateName)) {
// Un-comment the next line of code for debugging the dateValid() function error messages
//alert(err);  
alert("Invalid Date\nPlease Re-Enter");
vDateName.focus();
vDateName.select();
   }
}
return false;
}
else {
// If the value is not in the string return the string minus the last
// key entered.
if (isNav4) {
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
else
{
vDateName.value = vDateName.value.substr(0, (vDateValue.length-1));
return false;
         }
      }
   }
}
function dateValid(objName) {
var strDate;
var strDateArray;
var strDay;
var strMonth;
var strYear;
var intday;
var intMonth;
var intYear;
var booFound = false;
var datefield = objName;
var strSeparatorArray = new Array("-"," ","/",".");
var intElementNr;
// var err = 0;
var strMonthArray = new Array(12);
strMonthArray[0] = "Jan";
strMonthArray[1] = "Feb";
strMonthArray[2] = "Mar";
strMonthArray[3] = "Apr";
strMonthArray[4] = "May";
strMonthArray[5] = "Jun";
strMonthArray[6] = "Jul";
strMonthArray[7] = "Aug";
strMonthArray[8] = "Sep";
strMonthArray[9] = "Oct";
strMonthArray[10] = "Nov";
strMonthArray[11] = "Dec";
//strDate = datefield.value;
strDate = objName;
if (strDate.length < 1) {
return true;
}
for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
strDateArray = strDate.split(strSeparatorArray[intElementNr]);
if (strDateArray.length != 3) {
err = 1;
return false;
}
else {
strDay = strDateArray[0];
strMonth = strDateArray[1];
strYear = strDateArray[2];
}
booFound = true;
   }
}
if (booFound == false) {
if (strDate.length>5) {
strDay = strDate.substr(0, 2);
strMonth = strDate.substr(2, 2);
strYear = strDate.substr(4);
   }
}
//Adjustment for short years entered
if (strYear.length == 2) {
strYear = '20' + strYear;
}
strTemp = strDay;
strDay = strMonth;
strMonth = strTemp;
intday = parseInt(strDay, 10);
if (isNaN(intday)) {
err = 2;
return false;
}
intMonth = parseInt(strMonth, 10);
if (isNaN(intMonth)) {
for (i = 0;i<12;i++) {
if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
intMonth = i+1;
strMonth = strMonthArray[i];
i = 12;
   }
}
if (isNaN(intMonth)) {
err = 3;
return false;
   }
}
intYear = parseInt(strYear, 10);
if (isNaN(intYear)) {
err = 4;
return false;
}
if (intMonth>12 || intMonth<1) {
err = 5;
return false;
}
if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
err = 6;
return false;
}
if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
err = 7;
return false;
}
if (intMonth == 2) {
if (intday < 1) {
err = 8;
return false;
}
if (LeapYear(intYear) == true) {
if (intday > 29) {
err = 9;
return false;
   }
}
else {
if (intday > 28) {
err = 10;
return false;
      }
   }
}
return true;
}
function LeapYear(intYear) {
if (intYear % 100 == 0) {
if (intYear % 400 == 0) { return true; }
}
else {
if ((intYear % 4) == 0) { return true; }
}
return false;
}
//  End -->


									   
									   
