	/*
		$Id: validate.js,v 1.3 2007/01/26 14:15:35 jues Exp $
		$AUTOFTP:1 $
		$PURPOSE: Validierung von Numerischen und Dezimalfeldern 
	*/		

	function Check4Preis (obj, ev) {
		var key = GetKeyCode (ev);
		
		if(((key >= 48) && (key <= 58)) ||
			(key == 8) || (key == 44) || (key == 46))
		{
			if((key == 44) || (key == 46)) {
				var str = obj.value ;
				if(str.indexOf (".") != -1) {
					CancelBubble(ev);
					status = "hat schon Dezimalpunkt" ;
					return false ;			
				}	
			}
			if(key == 44) {
				SetKeyCode (ev, 46);
			}
			return true ;
		} else {
			CancelBubble(ev);
			return false ;
		}
	}

	function Check4Num (obj, ev) {
		var key = GetKeyCode (ev);
		
		if(((key >= 48) && (key <= 58)) ||
			(key == 8))
		{
			return true ;
		} else {
			CancelBubble(ev);
			return false ;
		}
	}
	function Check4Tel (obj, ev) {
		var key = GetKeyCode (ev);
		
		if(((key >= 42) && (key <= 58)) ||
			(key == 8))
		{
			return true ;
		} else {
			CancelBubble(ev);
			return false ;
		}
	}
	
	function Check4Date (obj, ev) {
		var key = GetKeyCode (ev);
		
		if(((key >= 48) && (key <= 58)) ||
			(key == 8) || (key == 46))
		{
			if(key == 46) {		// 2 Punkte maximal
				// @todo Datumseingabe überprüfen...
			}
			return true ;
		} else {
			CancelBubble(ev);
			return false ;
		}
	}


// die Funktion überprüft die Anzahl Zeichen
function ValidLength(item, len) {
	return (item.length >= len);
}

// die Funktion überprüft die E-Mail Adresse
function ValidEmail(item) {
	if (!ValidLength(item, 8)) 	// xx@xy.de
		return false;
	if (item.indexOf ('@', 0) == -1) 
		return false;
	if (item.indexOf ('.', 0) == -1) 
		return false;
	return true;
}


function getYear(d) { 
	return (d < 1000) ? d + 1900 : d;
}

function isDate (year, month, day) {
  	// month argument must be in the range 1 - 12
  	month = month - 1;  // javascript month range : 0- 11
  	var tempDate = new Date(year,month,day);
  	
  	if ( (getYear(tempDate.getYear()) == year) &&
     	(month == tempDate.getMonth()) &&
     	(day == tempDate.getDate()) )
      	return true;
  	else
     	return false
}

function IsValidDate (obj) {
	var year, month, day ;
}  	


	var nextel = 0 ;

	function NextElement (obj, mark) {
		if(obj) {
			var i ;
			var form = obj.form ;
			
			if(form) {
				var nextindx = ((obj.tabIndex)%form.elements.length) + 1;
			
				for(i = 0 ; i < form.elements.length ; i++) {
					if(form.elements[i].tabIndex == nextindx) {
						form.elements[i].focus();
									
						if(mark) {
							status = nextindx + " 1 von : " + obj.name ;
							DeMarkInp (obj);
							MarkInp (form.elements[i]);
						}	
						return 1 ;
					}
				}	
				// @todo bessere Tabs einbauen
				for(i = 0 ; i < form.elements.length ; i++) {
					if(form.elements[i] == obj) {
						var obj1 = form.elements[(i+1)%form.elements.length] ;
						obj1.focus();
						
						if(mark) {
							status = nextindx + " 2 von : " + obj.name + " auf " + obj1.name;
							DeMarkInp (obj);
							//MarkInp (obj1);
						}
						return 1 ;
					}
				}
			}	
		}
		return 0 ;
	}

	function Check4Next (obj, ev) {
		var key = GetKeyCode (ev);

		if(! obj) {
	//		alert ("hole Obj");
			obj = GetEventObj (ev);		
		}
		if((nextel) && (key == 13)) {
			CancelBubble(ev);
			NextElement (obj, 1);
		}	
	}		
