/* 
 * DFB-DateFormat 
 * Da date.js noch keine Unterstuetzung fuer Datumsangaben ohne Trennzeichen unterstuetzt, 
 * wurde diese Datums-Formatierung hinzugefuegt.
 */ 
Date.dfbDateFormat=function(dateString){
	var dateString = trim(dateString);
	var date = null;
	if (dateString && dateString.length != 0){				
		// Datum ohne Trennpunkte [noch nicht in date.js verfeugbar]
		if (countSeperators(dateString, '.') == 0){
			// Ist Zahl
			if (!isNaN(parseInt(dateString))){
				var year = 0;
				// Wenn 6-Stellig
				if (dateString.length == 6) {
					year = dateString.substr(4,2);					
					if (parseInt(year) > parseInt(Date.parse('today + 20year').toString('yy'))){
						year = '19' + dateString.substr(4,2);
					} else {
						year = '20' + dateString.substr(4,2);
					}
					year = parseInt(year);          	
	          	}
				// Wenn 8-Stellig		          			          
	          	if (dateString.length == 8) {
	            	year = parseInt(dateString.substr(4,4), 10);
	          	}	
	          	var month = parseInt(dateString.substr(2,2) -1, 10);
	          	var day = parseInt(dateString.substr(0,2), 10);
	          	
	          	// Validierung
	          	try	{
	          		Date.validateDay(day, year, month);
	          		Date.validateMonth(month);
	          		Date.validateYear(year);
	          		// Date setzen
	          		date = new Date(year, month, day);
	          	} catch (e){
	          		date = null;
	          	}
	          	
	          	// Tage bearbeiten
	          	if (!date && (dateString.charAt(0)=='+' || dateString.charAt(0)=='-')){
	        		date = Date.parse(dateString);  		
	          	}
	        }
			/* fuer eingaben wie today, next, etc
			 else {
				date = Date.parse(dateString);
			} */
		} else {
			date = Date.parse(dateString);
		}		
	}
	return date;
}

Date.dfbTimeFormat=function(time){
	var res = time.match('^(([0-1]?[0-9])|([2][0-3]))[:]?([0-5][0-9])$');
	if(res){
		return res[1]+':'+res[4];
	}
}

Date.dfbTimeCodeFormat=function(timeCode){
	var res = timeCode.match('^(([0-1]?[0-9])|([2][0-3]))[:]?([0-5][0-9])[:]?([0-5][0-9])$');
	if(res){
		return res[1]+':'+res[4]+':'+res[5];
	}
}
/*
 * Zaehlt die angegebenen Trennzeichen
 */
function countSeperators(str, seperator){
	var count = 0;
	for (i = 0; i <= str.length ; i++) {      
  			if (str.substr(i,1) == seperator) count++;
	}	
	return count;
}
