function Ccolor(id,type) {
	tablecolour = '#F6F6F6'
		if (type == 'in') { 
			id.bgColor = tablecolour;
		}
		else {
			id.bgColor = '#FFFFFF';
		}
}

function ColorBg(id,clr) 
{
	id.bgColor = clr;
}

function validate(form) {

	var j = 0;
	msg = "";
	for(var i = 0;i < ele.length;i++) {
		if(isBlank(form, ele[i])) {
			invalid(form, ele[i]);
			msg = msg + msgs[i] +"\n";
			j = j +1;
		}
	}
	if(j == 0) {
		document.forms[form].submit();
	}
	else {
		alert(alertMsg + "\n"+ msg);
		return false;
	}
}

function validate2(form) {
	//alert(form);
	var j = 0;
	msg = "";
	for(var i = 0;i < ele.length;i++) {
		if(isBlank(form, ele[i])) {
			invalid(form, ele[i]);
			msg = msg + msgs[i] +"\n";
			j = j +1;
		}
	}
	if(j == 0) {
		return true;
	}
	else {
		alert(alertMsg + "\n"+ msg);
		return false;
	}
}

function validate3(form) {
	//alert(form);
	var j = 0;
	msg = "";
	for(var i = 0;i < ele2.length;i++) {
		if(isBlank(form, ele2[i])) {
			invalid(form, ele2[i]);
			msg = msg + msgs2[i] +"\n";
			j = j +1;
		}
	}
	if(j == 0) {
		document.forms[form].submit();
	}
	else {
		alert(alertMsg + "\n"+ msg);
		return false;
	}
}

function validateSet(form,msgConfirm) {
	//alert(form);
	var j = 0;
	msg = "";
	for(var i = 0;i < ele.length;i++) {
		if(isBlank(form, ele[i])) {
			invalid(form, ele[i]);
			msg = msg + msgs[i] +"\n";
			j = j +1;
		}
	}
	if(j == 0) {	
		
		var conferma=null;
		conferma=confirm (msgConfirm + '\n');
		if(conferma==false)
		{
			return false;
		}
		else
		{
			document.forms[form].submit();
		}
	}
	else {
		alert(alertMsg + "\n"+ msg);
		return false;
	}
}

function invalid(form, ele) {
	if(!document.layers) {
			
			$('#'+ele).addClass('inputError');
		}
	return msg;
}

function isBlank(form,ele) {
	str = $('#'+ele).val();	
	
	if(str == "") {
		return true;
	}
	else {
		return false;
	}

}

function openPrintable(section, id, lang) 
{
	var newWindow = window.open("./html/printable.html?nid=" + id + "&lang=" + lang,"PrintArtcle","height=500,width=550,toolbar=no,status=no,menubar=no,resizable=yes,scrollbars=yes");
}
function openWin(what, lang) 
{
	var newWindow = window.open("./downloads/curriculum.html?p=" + what + "&lang=" + lang,"Curr","height=650,width=600,toolbar=no,status=no,menubar=no,resizable=yes,scrollbars=yes");
}
function popUp(page, width, height, lang) 
{
	var newWindow = window.open(page,"GenericPage","height=" + height + ",width=" + width + ",toolbar=no,status=no,menubar=no,resizable=yes,scrollbars=yes");
}

function confirmaction(msg)
{
	var conferma=null;
	conferma=confirm (msg + '\n');
	if (conferma==false)
	{
		return false;
	}
}


function deleteRec(msg,url)
{
	var conferma=null;
	conferma = confirm(msg + '?\n');
	if(conferma == false) 
	{
		return false;
	}
	else
	{
		document.location.href = url;
	}
}

var menuwidth='200px' //default menu width
var menubgcolor=''  //menu bgcolor
var disappeardelay=250  //menu disappear speed onMouseout (in miliseconds)
var hidemenu_onclick="yes" //hide menu when user clicks within menu?

/////No further editting needed

var ie4boo=document.all
var ns6boo=document.getElementById&&!document.all

if (ie4boo||ns6boo)
document.write('<div id="dropmenudiv" style="visibility:hidden;width:'+menuwidth+';background:url(./images/bcg_submenu.png)" onMouseover="clearhidemenu()" onMouseout="dynamichide(event)"></div>')

function getposOffset(what, offsettype){
var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
var parentEl=what.offsetParent;
while (parentEl!=null){
totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
parentEl=parentEl.offsetParent;
}
return totaloffset;
}


function showhide(obj, e, visible, hidden, menuwidth){
if (ie4boo||ns6boo)
dropmenuobj.style.left=dropmenuobj.style.top=-500
if (menuwidth!=""){
dropmenuobj.widthobj=dropmenuobj.style
dropmenuobj.widthobj.width=menuwidth
}
if (e.type=="click" && obj.visibility==hidden || e.type=="mouseover")
obj.visibility=visible
else if (e.type=="click")
obj.visibility=hidden
}

function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function clearbrowseredge(obj, whichedge){
var edgeoffset=0
if (whichedge=="rightedge"){
var windowedge=ie4boo && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15
dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
edgeoffset=dropmenuobj.contentmeasure-obj.offsetWidth
}
else{
var windowedge=ie4boo && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure)
edgeoffset=dropmenuobj.contentmeasure+obj.offsetHeight
}
return edgeoffset
}

function populatemenu(what){
if (ie4boo||ns6boo)
dropmenuobj.innerHTML=what.join("")
}


function dropdownmenu(obj, e, menucontents, menuwidth){
if (window.event) event.cancelBubble=true
else if (e.stopPropagation) e.stopPropagation()
clearhidemenu()
dropmenuobj=document.getElementById? document.getElementById("dropmenudiv") : dropmenudiv
populatemenu(menucontents)

if (ie4boo||ns6boo){
showhide(dropmenuobj.style, e, "visible", "hidden", menuwidth)
dropmenuobj.x=getposOffset(obj, "left")
dropmenuobj.y=getposOffset(obj, "top")
dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+"px"
dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+obj.offsetHeight+"px"
}

return clickreturnvalue()
}

function clickreturnvalue(){
if (ie4boo||ns6boo) return false
else return true
}

function contains_ns6boo(a, b) {
while (b.parentNode)
if ((b = b.parentNode) == a)
return true;
return false;
}

function dynamichide(e){
if (ie4boo&&!dropmenuobj.contains(e.toElement))
delayhidemenu()
else if (ns6boo&&e.currentTarget!= e.relatedTarget&& !contains_ns6boo(e.currentTarget, e.relatedTarget))
delayhidemenu()
}

function hidemenu(e){
if (typeof dropmenuobj!="undefined"){
if (ie4boo||ns6boo)
dropmenuobj.style.visibility="hidden"
}
}

function delayhidemenu(){
if (ie4boo||ns6boo)
delayhide=setTimeout("hidemenu()",disappeardelay)
}

function clearhidemenu(){
if (typeof delayhide!="undefined")
clearTimeout(delayhide)
}

if (hidemenu_onclick=="yes")
document.onclick=hidemenu


///////////////////////////////////////////

function styleAlert(message,timeout)
{
	$.blockUI({
	theme:false,
	message:message,
	timeout:timeout
	});
}

function deleteRec(msg,url)
{
	var conferma=null;
	conferma = confirm(msg + '?\n');
	if(conferma == false) 
	{
		return false;
	}
	else
	{
		document.location.href = url;
	}
}

function checkNumeric(field, origvalue)
{
	pattern = /^[0-9]*$/;
	if(pattern.test(field.value)==false)
	{
		//alert("Not numeric in " + field.name);
		field.value = origvalue;
	}
}

function checkNumericAlert(field, origvalue, msg)
{
	pattern = /^[0-9]*$/;
	if(pattern.test(field.value)==false)
	{
		alert(msg);
		field.value = origvalue;
	}
}


function checkEmail(form,fieldName,msg) {
	var email = document.getElementById(fieldName);
	var filter = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z]{2,4}$/;  
	var divdialog = 'dialogmessage';
	
	if(email != '')
	{
		if (!filter.test(email.value)) {
			alert(msg);
		}
		else
		{
			$('#'+fieldName).removeClass('inputError');
			$('#'+fieldName).addClass($('#'+fieldName).attr('class'));
			$('#' + form + ' input[type=submit]').removeAttr('disabled');
			return true;
		}
	}
}

function dialogMessage(msg,divdialog) {	
	$('#'+divdialog).empty();
	$('#'+divdialog).append(function(){				
		$(this).append("<span style=\"color:#333333\">"+msg+"</span>");  			
		$('#'+divdialog).dialog({
			minHeight: 250,
			buttons: [{
			text: "Ok",
				click: function() { 							
					$(this).dialog("close");
				}
			}]
		});
	});		
}

function ControlloYoutube(url,fieldName,msg){
	
	var filter = /https?:\/\/(?:[a-zA_Z]{2,3}.)?(?:youtube\.com\/watch\?)((?:[\w\d\-\_\=]+&amp;(?:amp;)?)*v(?:&lt;[A-Z]+&gt;)?=([0-9a-zA-Z\-\_]+))/i;
	
	if(url != '')
	{
		if(filter.test(url)){
			document.getElementById('suggerisci').disabled = false;
			return true;
		}else{
			$('#'+fieldName).addClass('inputError');
			$('#'+fieldName).focus().val($('#'+fieldName).val());
			document.getElementById('suggerisci').disabled = true;
			dialogMessage(msg,'dialogmessage');
			return false;
		}
	}
}

function detectBrowserVersion(){
var userAgent = navigator.userAgent.toLowerCase();
$.browser.chrome = /chrome/.test(navigator.userAgent.toLowerCase());
var version = 0;

// Is this a version of IE?
if($.browser.msie){
userAgent = $.browser.version;
userAgent = userAgent.substring(0,userAgent.indexOf('.'));	
version = userAgent;
}

// Is this a version of Chrome?
if($.browser.chrome){
userAgent = userAgent.substring(userAgent.indexOf('chrome/') +7);
userAgent = userAgent.substring(0,userAgent.indexOf('.'));	
version = userAgent;
// If it is chrome then jQuery thinks it's safari so we have to tell it it isn't
$.browser.safari = false;
}

// Is this a version of Safari?
if($.browser.safari){
userAgent = userAgent.substring(userAgent.indexOf('safari/') +7);	
userAgent = userAgent.substring(0,userAgent.indexOf('.'));
version = userAgent;	
}

// Is this a version of Mozilla?
if($.browser.mozilla){
//Is it Firefox?
if(navigator.userAgent.toLowerCase().indexOf('firefox') != -1){
userAgent = userAgent.substring(userAgent.indexOf('firefox/') +8);
userAgent = userAgent.substring(0,userAgent.indexOf('.'));
version = userAgent;
}
// If not then it must be another Mozilla
else{
}
}

// Is this a version of Opera?
if($.browser.opera){
userAgent = userAgent.substring(userAgent.indexOf('version/') +8);
userAgent = userAgent.substring(0,userAgent.indexOf('.'));
version = userAgent;
}
return version;
}


function openDiv(divaname,id)
{
	jQuery(document).ready(function(e){
	
		var winW = $(window).width();
		var winH = $(window).height();

		var divW = $('#'+divaname+id).width();
		var divH = $('#'+divaname+id).height();
		
		//alert(e.pageY);
	
		var divPosTop = e.pageY;
		var divPosLeft = e.pageX;
		
		var topPos = 0;
		var leftPos = 0;
		
		var conteggio = 0;
		
		conteggio = (divPosTop+divH*1);
		if(conteggio > winH)
			topPos = (divPosTop-divH*1);
		else
			topPos = divPosTop;	
		
			
		conteggio = (divPosLeft+divW*1);
		if(conteggio > winW)
			leftPos = (divPosLeft-divW*1);
		else
			leftPos = divPosLeft;	
	
		$('#'+divaname+id).stop().fadeToggle('slow').css('left',leftPos).css('top',topPos);
	
	});
}

function resizeContent(idcontent)
{
	var pageH = $(window).height();
	var divcontentH = $('#corpo').height();
	var correttore = 0;
	var browser = jQuery.uaMatch(navigator.userAgent).browser;

	//alert(browser);

	if(browser == 'mozilla')
		correttore = 250;
	else if(browser == 'msie')
		correttore = 380;
	else if(browser == 'webkit')
		correttore = 360;

	if(divcontentH < pageH)
	$('#'+idcontent).css('height',(pageH-correttore));

}



function alertStringLenght(form,fieldName,length,msg)
{
	var str = document.getElementById(fieldName).value;

	if(str.length != length)
	{
		alert(msg);
		$('#'+fieldName).removeClass('inputtext');
		$('#'+fieldName).addClass('inputError');
	}
	else
	{
		$('#'+fieldName).removeClass('inputError');
		$('#'+fieldName).addClass('inputtext');		
	}
}



function validateHour(form,fieldName,strValue,msg) 
{
	re = /^\d{1,2}:\d{2}([ap]m)?$/;
	var str = document.getElementById(fieldName).value;

 	if(str != '' && str.match(re))
 	{
 		$('#'+fieldName).removeClass('inputError');
 		$('#'+fieldName).addClass('inputtext');		
	} 	
	else
 	{
 		alert(msg);
 		$('#'+fieldName).removeClass('inputtext');
 		$('#'+fieldName).addClass('inputError');
 	}
}


/**/

// 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("La data inserita non è valida.");
$('input [name='+vDateName+']').addClass('inputError');
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("La data inserita non è valida.");
$('input [name='+vDateName+']').addClass('inputError');
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,5);
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("La data inserita non è valida.");
$('input [name='+vDateName+']').addClass('inputError');
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("La data inserita non è valida.");
$('input [name='+vDateName+']').addClass('inputError');
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("La data inserita non è valida.");
$('input [name='+vDateName+']').addClass('inputError');
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,5)
}
if (vYearLength == 4) {
if (mYear.length < 4) {
alert("La data inserita non è valida.");
$('input [name='+vDateName+']').addClass('inputError');
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("La data inserita non è valida.");
$('input [name='+vDateName+']').addClass('inputError');
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("La data inserita non è valida.");
$('input [name='+vDateName+']').addClass('inputError');
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 -->

/**/




