﻿//

 

var MAXHOUR = 23;
var MINHOUR = 00;
var MINMINUTE = 00;
var MAXMINUTE = 59;
var MINSECOND = 00;
var MAXSECOND = 59;
var MINHOURAMPM = 01;
var MAXHOURAMPM = 12;



var MINDAY = 1;
var MAXDAY1 = 31;
var MAXDAY2 = 30;
var MAXDAY3 = 29;
var MINMONTH = 1;
var MAXMONTH = 12;
var MINYEAR = 1880;
//var MAXYEAR = 9999;

d = new Date();
var anno =d.getFullYear(); 
var MAXYEAR = anno;

/*
Note that getYear() function returns years in two digits for year between 1900 to 1999 and it returns three digit year starting from year 2000. So for the year 2000 getYear() function will return 100 and for 2001 it will return 101. For the year 2006 it will return 106. Same way for the year less than 1900 it will return negative number starting from -1 for the year 1899 and 0 for the year 1900. 
getFullYear() function returns year in 4 digits for all the years. So it is better to use getFullYear() function than getYear function. 
*/

/* Funzione di controllo della data*/
function CheckDate(timeStr) {
	var date;
	var dd,mm,yyyy;
	var timePat = /^(\d{1,2})\D?(\d{1,2})\D?(\d{4})$/;

	var matchArray = timeStr.match(timePat);
	
	if (matchArray == null) {
		return false;
	}
 
	 
	var language ="ITA";

	switch(language) {
		case "ITA":
		case "DEU":
		case "ESP":
		case "FRA":
			dd		= matchArray[1];
			mm		= matchArray[2];
			yyyy	= matchArray[3];
			break;
		
		case "ENG":
			dd		= matchArray[2];
			mm		= matchArray[1];
			yyyy	= matchArray[3];
			break;
	}

	if (dd<MINDAY ||dd>MAXDAY1 ||mm<MINMONTH ||mm>MAXMONTH ||yyyy<MINYEAR||yyyy>MAXYEAR){
		return false;
	}
	else {		// controllo congruenza tra giorno e mese
		switch (dd)	{
			case MAXDAY1.toString():
				if (mm==2||mm==4||mm==6||mm==9||mm==11){
					return false;
					}
				break;
			case MAXDAY2.toString():	
				if (mm==2){
					return false;
					}
				break;
			case MAXDAY3.toString():	
				if ((mm==2) && (!(((yyyy % 400)==0)||((yyyy % 4==0)&&(yyyy%100!=0))))){
					return false;
					}
				break;
			} //end dello switch
		} //end dell'else
	return true;
}

/* Funzione di formattazione della data*/
function FormatDate(timeStr) {

	var date;
	var dd,mm,yyyy;
	var timePat = /^(\d{1,2})\D?(\d{1,2})\D?(\d{4})$/;
	
	var matchArray = timeStr.match(timePat);
	if (matchArray == null) {
		return "";
	}
	
	dd		= matchArray[1];
	mm		= matchArray[2];
	yyyy	= matchArray[3];

	if (dd.length < 2){ dd = "0" + dd; }
	if (mm.length < 2){ mm = "0" + mm; }
	date = dd + "/" + mm + "/" + yyyy;
	if (date == gDATADEFAULT) date="";
	return date;
}



 
function CheckOnlyNumber(e){
	/* devo cambiar eil codice che altrimenti non funziona su firefox ****
	var ss;
	
	if ((   event.keyCode >=48 && event.keyCode <=57) 
	       || (event.keyCode >=96 && event.keyCode <=106) 
		 || event.keyCode==27 || event.keyCode==13 || event.keyCode==9  || event.keyCode==8 || event.keyCode==46  || event.keyCode==37 || event.keyCode==39  ) {
		event.returnValue = true;
		return true;
	}
	else {
		event.returnValue = false;
		return false;
	}
	*/
	
	var intKey = 0;
	/*
	e= (window.event)? event : e; 
	//intKey = (e.keyCode)? e.keyCode: e.charCode;
	intKey = (e.keyCode)? e.keyCode: e.which;
	*/
	if(window.event) // IE
	  {
	  intKey = e.keyCode;
	  }
	else if(e.which) // Netscape/Firefox/Opera
	  {
	  intKey = e.which;
	  }
		 


	 
	 
	if ((   intKey >=48 && intKey <=57) 
		 || intKey==27 || intKey==13 || intKey==9  || intKey==8 || intKey==46  || intKey==37 || intKey==39 || intKey==0  ) {
		e.returnValue = true;
		return true;
		
	}
	else {
		e.returnValue = false;
		return false;
	}
	
}

   



