
function check_length(von)
{ 

var ar_von = von.split(".");

var Tag = ar_von[0]+'';
var Monat = ar_von[1]+'';
var Jahr = ar_von[2]+'';

if (Tag.length == 1)
{ Tag = "0" + Tag; }

if (Monat.length == 1)
{ Monat = "0" + Monat; }

var str_von = Tag+"."+Monat+"."+Jahr;

return str_von;

}

function tag_plus(von)
{ 

von = von + '';
var ar_von = von.split(".");

var ms_24 = 86400*1000;  // milisekunden 24 h

// Anpassung des Monats:
ar_von[1] = ar_von[1] -1;

// Create neu Objekt Date:
var von_datum = new Date(ar_von[2],ar_von[1],ar_von[0]);
// Timestamp  + 1 Tag:
var von_stamp = Date.parse(von_datum.toGMTString()) + ms_24;

// Neu Objekt Date für  + 1 Tag:
var new_date = new Date(von_stamp);

var Tag = new_date.getDate()+'';		
var Monat = new_date.getMonth()+1+'';
var Jahr = new_date.getYear();
if (Jahr < 999)
  Jahr += 1900;
 
if (Monat.length == 1)
{ Monat = "0" + Monat; }

if (Tag.length == 1)
{ Tag = "0" + Tag; }

var str_von = Tag+"."+Monat+"."+Jahr; // String für + 1 Tag

return str_von;
}

function getAbsPos(o,p){var i=0;while(o!=null){i+=o["offset"+p];o=o.offsetParent;}return i;}

function getDateInt(inDate){
	index1 = inDate.indexOf(".");
	index2 = inDate.lastIndexOf(".");
	if (index1 >= 0 && index2 >= 0){
		var year = inDate.substring(index2 + 1, inDate.length);
		var month;
		if (index1 == index2){
			today = new Date();
			year = today.getYear();
			if (year < 2000)
				year = 1900 + year;
			month = inDate.substring(index1 + 1, inDate.length) - 1;
		}else
			month = inDate.substring(index1 + 1, index2) - 1;
		if (year.length == 2)
			year = "20" + year;
		var tempDate = new Date(year, month, inDate.substring(0, index1));
		var retDate = new Date(2000,01,01);
		if (isNaN(tempDate.getTime()))
			return retDate.getTime();
		else
			return tempDate.getTime();
	}else
		return 0;
}

function CompareValue(source,target,type)
{
	
	if (type == "HOTEL_1")
	{ 
	source.value = check_length(source.value);
	target.value = tag_plus(source.value);
	}
	
	var sourcedate =  getDateInt(source.value);
	var targetdate  =  getDateInt(target.value);
	d = new Date();
	if( sourcedate<d.getTime() ){source.value = formatDate(d);};
	try{
		switch(type){
			case "GreaterThan":
				if( sourcedate<targetdate ) {
					source.value = target.value;
				}
				break;
			case "LessThan":
				if (sourcedate>targetdate) {
					source.value = target.value;
				}
				break;
			case "CanNotBeLessThan":
				if( sourcedate>targetdate ) {
					target.value = source.value;
					target.onchange();
				}
				break;
			case "HOTEL_1":
				{
					//source.value = check_length(source.value);
					//target.value = tag_plus(source.value);
					//target.onchange();
				}
				break;
			default:
				// Do Nothing
		}		
	}catch(e){}
}

function minMaxDate(von,bis){
	von.setAttribute("maxdate",bis.value);
	bis.setAttribute("mindate",von.value);
}

function sliceDates(form,von,bis){
	var index1von 	= von.value.indexOf(".");
	var index2von 	= von.value.lastIndexOf(".");
	var index1bis 	= bis.value.indexOf(".");
	var index2bis 	= bis.value.lastIndexOf(".");	

	var fromyear  	= von.value.substring(index2von + 1, von.value.length);
	var frommonth 	= von.value.substring(index1von + 1, index2von);
	var fromday 	= von.value.substring(0,index1von);
	var toyear 		= bis.value.substring(index2bis + 1, bis.value.length);
	var tomonth 	= bis.value.substring(index1bis + 1, index2bis);
	var today 		= bis.value.substring(0,index1bis);	
	
	document.suche.vontag.value		= fromday;
	document.suche.vonmonat.value	= frommonth;
	document.suche.vonjahr.value	= fromyear;
	document.suche.bistag.value		= today;
	document.suche.bismonat.value	= tomonth;
	document.suche.bisjahr.value	= toyear;	
	
	form.submit();
}

function Setcal(selDate){
	var im = document.getElementById("calendarDiv");
	var cal = document.getElementById(im.getAttribute('caller'));
	cal.value = selDate;
	try{
		cal.onchange();
	}catch(e) {
	};
	//cal.focus()
}

function CatchDateString(selDate){
	Setcal(selDate);
}

function callcal(obj){
	var MaxDate = '';

	if (obj.getAttribute('maxdate')) {
		MaxDate = obj.getAttribute('maxdate');
	}

	var MinDate = '';
	if (obj.getAttribute("mindate")) {
		MinDate = obj.getAttribute('mindate');
	}

	var cal=document.getElementById("calendarFrame");
	var jetzt = new Date();
	var Monat=jetzt.getMonth()+1;
	if (Monat<10){Monat="0"+Monat;}
	if(obj.value!=""){var CalDate=obj.value;}else{var CalDate=jetzt.getDate()+"."+Monat+"."+jetzt.getFullYear();}
	cal.src='/inc/mini_kalender.php3?date=' + CalDate + '&Maxdate=' + MaxDate + '&Mindate=' + MinDate;

	var im=document.getElementById("calendarDiv");

	im.style.top=getAbsPos(obj,"Top")+obj.offsetHeight;
	im.style.left=getAbsPos(obj,"Left");
	
	im.style.display='';
	im.style.visibility='visible';
	im.setAttribute("caller", obj.id);
}

function hidecal() {
	var im

	im=parent.document.getElementById("calendarDiv");
	try{
		//alert(document.activeElement.parent.id);
		switch(document.activeElement.tagName){
			case("IFRAME"): 
				return;
				break
		default:
			hidecalnow();
			break
		}
	}catch(e){
		//hidecalnow();
	};
}

function hidecalnow() {

	var im=parent.document.getElementById("calendarDiv");
	try{
		im.style.display="none";
		im.style.visibility="hidden";
	}catch(e){
	};
}

