// ******************************************************************************************************************
function valideaza_eventData(_msg_eroare,objError,param){
	var totalRooms = 0;
	if(!param) param = "";
	objError.eroarePos = false;
	objError.errorMsg = _msg_eroare;

	objError = verificObj("name",trim_spaceValue(document.getElementById("name").value),objError);
	objError = verificObj("persons",verificNumarIntregPozitiv(document.getElementById("persons")),objError);

	var ez = document.getElementById('ez');
	totalRooms += Number(ez.value);
	var dz = document.getElementById('dz');
	totalRooms += Number(dz.value);
	var suite = document.getElementById('suite');
	if(suite) totalRooms += Number(suite.value);
	var appartement = document.getElementById('appartement');
	if(appartement) totalRooms += Number(appartement.value);
	var landhaus = document.getElementById('landhaus');
	if(landhaus) totalRooms += Number(landhaus.value);

	if(!totalRooms){
		objError = verificObj("ez",false,objError);
		objError = verificObj("dz",false,objError);
		if(suite) objError = verificObj("suite",false,objError);
		if(appartement) objError = verificObj("appartement",false,objError);
		if(landhaus) objError = verificObj("landhaus",false,objError);
	}else{
		objError = verificObj("ez",true,objError);
		objError = verificObj("dz",true,objError);
		if(suite) objError = verificObj("suite",true,objError);
		if(appartement) objError = verificObj("appartement",true,objError);
		if(landhaus) objError = verificObj("landhaus",true,objError);
	}

	// persAct_xx  objects
	for(i=0; i<document.forms[0].elements.length; i++){
		if(document.forms[0].elements[i].type == 'text' && document.forms[0].elements[i].name.search("persAct_") != -1){
			objError = verificObj(document.form1.elements[i].name,verificNumarIntregPozitiv(document.getElementById(document.form1.elements[i].name)),objError);
		}
	}

	if(objError.eroarePos){
		alert(objError.errorMsg);
		return false;
	}else{
		return true;
	}

}

function verificObj(obj,result,objError,paramExtra){
	if(!paramExtra) paramExtra = "";
	obj = document.getElementById(obj);
	if(result == 0 || result == '' || result == false) result = false;
	else result = true;
	if(!result){
		objError.errorMsg += eval("objError.msg_"+obj.name) + paramExtra;
		obj.className += " RedInput";

		if(!objError.eroarePos){
			if (obj.type == "text")	obj.focus();
			objError.eroarePos = true;
		}
	}else{
		obj.className = obj.className.replace(/\ RedInput/g,'');
	}
	return objError;
}
//********************************************************************************************************************

function listaData(dataStart,dataEnd){
	var sdate = document.getElementById(dataStart);
	var edate = document.getElementById(dataEnd);
	var startData = new Date(Number(sdate.value.substr(6,4)),Number(sdate.value.substr(3,2))-1,Number(sdate.value.substr(0,2)),1,0,0);
	var endData = new Date(Number(edate.value.substr(6,4)),Number(edate.value.substr(3,2))-1,Number(edate.value.substr(0,2)),1,0,0);
	var datele = new Array();
	var separator = ".";
	var counter = 1;

	for(var i=startData.getTime(); i<=endData.getTime(); i+=24*3600*1000){
		sameAsBigDay = new Date();
		sameAsBigDay.setTime(i);

		month = String(sameAsBigDay.getMonth()+1);
		if(String(sameAsBigDay.getMonth()+1).length < 2) month = "0" + month;
		day = String(sameAsBigDay.getDate());
		if(String(sameAsBigDay.getDate()).length < 2) day = "0" + day;
		year = sameAsBigDay.getFullYear();

		datele[counter] = day + separator + month + separator + year;
		counter++;
	}
	document.form1.nights.value = counter - 1;
	return datele;
}

function deleteDatele(objName){
	var d = document.form1;

	for(var i=0; i<d.elements.length; i++){
		if(d.elements[i].type == 'select-one' && d.elements[i].name.search(objName) != -1){
			objHidden = document.getElementById("h"+d.elements[i].name);
			objHidden.value = '';
			d.elements[i].selectedIndex = null;
			d.elements[i].options.length = 0;
		}
	}
}

function showDatele(datele,objName){
	var objHidden = document.getElementById("h"+objName);
	var obj = document.getElementById(objName);
	obj.options[0] = new Option(_msg_select,"00-00-0000");

	for(var i=1; i<datele.length; i++){
		/*obj.options[i] = new Option(datele[i],i);*/
		obj.options[i] = new Option(datele[i],datele[i]);
		if(objHidden.value == datele[i]) obj.options[i].selected = true;
	}
	obj.options.length = i;
}

function refreshDatele(objName){
		var d = document.form1;
		var memI = 0;
		for(var i=0; i<d.elements.length; i++){
			if(d.elements[i].type == 'select-one' && d.elements[i].name.search(objName) != -1 ){
				showDatele(listaData('sdate','edate'),d.elements[i].name);
				memI = i;
			}
		}
		if(memI) document.form1.nrDays.value = d.elements[memI].options.length - 1;
		//refreshLayer();/* functia este in base la sfarsit */
}

function refreshPrice(obj,id){
	var myDate = new Date();
	var thisYear = myDate.getFullYear();
	var nextYear = thisYear+1;
	var data = document.getElementById('sdate').value;
	var an = data.substr(6);
	var priceObj = document.getElementById('pretAct_'+id);
	var pretActCr = document.getElementById('pretActCr_'+id);
	var pretTmp = '';
	if(obj.value){
		if(an == nextYear && document.getElementById('pretPersPeActNext_'+id)){
			//cost next
			priceObjHidden = document.getElementById('pretPersPeActNext_'+id);
			pretTmp = Number(obj.value)*Number(priceObjHidden.value);
			if(pretTmp){
				priceObj.value = format_nr(pretTmp,2);
				pretActCr.style.display = '';
			}else{
				priceObj.value = '';
				pretActCr.style.display = 'none';
			}
		}else{
			//cost curent
			priceObjHidden = document.getElementById('pretPersPeAct_'+id);
			pretTmp = Number(obj.value)*Number(priceObjHidden.value);
			if(pretTmp){
				priceObj.value = format_nr(pretTmp,2);
				pretActCr.style.display = '';
			}else{
				priceObj.value = '';
				pretActCr.style.display = 'none';
			}
		}
	}else{
		priceObj.value = '';
		pretActCr.style.display = 'none';
		return false;
	}
}

function refreshPriceAn(){
	var data = document.getElementById('sdate').value;
	var anPrimit = data.substr(-4);
	var myDate = new Date();
	var thisYear = myDate.getFullYear();
	var nextYear = thisYear+1;

	if(anPrimit == thisYear){
		for(i = 0; i<document.form1.elements.length; i++){
			if(document.form1.elements[i].type=='hidden'){
				found_pret = document.form1.elements[i].name.match(/pretPersPeAct_\d{1,}/);
				var found_obj_pret = new String(found_pret);
				k = found_obj_pret.substr(14,found_obj_pret.length);
				if(k){
					if(document.getElementById('pretPersPeAct_'+k).value && document.getElementById('persAct_'+k).value){
						var pers = new String("persAct_"+k);
						var persObj = document.getElementById(pers);
						refreshPrice(persObj,k);
					}
				}
			}
		}
	}else{
		for(i = 0; i<document.form1.elements.length; i++){
			if(document.form1.elements[i].type=='hidden'){
				found_pret = document.form1.elements[i].name.match(/pretPersPeActNext_\d{1,}/);
				var found_obj_pret = new String(found_pret);
				k = found_obj_pret.substr(18,found_obj_pret.length);
				if(k){
					if(document.getElementById('pretPersPeActNext_'+k).value && document.getElementById('persAct_'+k).value){
						var pers = new String("persAct_"+k);
						var persObj = document.getElementById(pers);
						refreshPrice(persObj,k);
					}
				}
			}
		}
	}
}

function prgPrice(prgId){
	if(!prgId) return false;
	var pretTmp = '';
	var pretPersPeAct = document.getElementById('pretPersPeAct_'+prgId);
	var pretAct = document.getElementById('pretAct_'+prgId);
	var pretActCr = document.getElementById('pretActCr_'+prgId);
	var persons = document.getElementById('persons');

	pretTmp = Number(persons.value)*Number(pretPersPeAct.value);
	pretAct.value = format_nr(pretTmp,2);

	if(pretAct.value) pretActCr.style.display = '';
	else pretActCr.style.display = 'none';
}

function highlightPrice(highlightId){
	if(!highlightId) return false;
	/*winter*/
	var sdate = document.getElementById('sdate');
	var edate = document.getElementById('edate');
	/*end winter */
	var pretTmp = 0;
	var pretAct = document.getElementById('pretAct_'+highlightId);
	var pretActCr = document.getElementById('pretActCr_'+highlightId);
	var ez = document.getElementById('ez');
	var dz = document.getElementById('dz');
	var EZcost = document.getElementById('EZcost');
	var DZcost = document.getElementById('DZcost');
	var nrDays = document.getElementById('nrDays');
	var pat1 = document.getElementById('pat1');
	var pat2 = document.getElementById('pat2');
	var pat3 = document.getElementById('pat3');
	var pat4 = document.getElementById('pat4');
	var kinderBed1 = document.getElementById('kinderBed1');
	var kinderBed2 = document.getElementById('kinderBed2');
	var kinderBed3 = document.getElementById('kinderBed3');
	var kinderBed4 = document.getElementById('kinderBed4');
	if(pat1 && pat1.value) pretTmp += Number(pat1.value)*Number(kinderBed1.value)*Number(nrDays.value - 1);
	if(pat2 && pat2.value) pretTmp += Number(pat2.value)*Number(kinderBed2.value)*Number(nrDays.value - 1);
	if(pat3 && pat3.value) pretTmp += Number(pat3.value)*Number(kinderBed3.value)*Number(nrDays.value - 1);
	if(pat4 && pat4.value) pretTmp += Number(pat4.value)*Number(kinderBed4.value)*Number(nrDays.value - 1);
	pretTmp += Number(ez.value)*Number(EZcost.value) + Number(dz.value)*Number(DZcost.value)*2;
	/*WINTER*/
	if (highlightId == '3456'){
		var startData = new Date(Number(sdate.value.substr(6,4)),Number(sdate.value.substr(3,2))-1,Number(sdate.value.substr(0,2)),1,0,0);
		var endData = new Date(Number(edate.value.substr(6,4)),Number(edate.value.substr(3,2))-1,Number(edate.value.substr(0,2)),1,0,0);
		noptiHigh = ((endData - startData) /(24*3600*1000));
		pretAct.value = format_nr(pretTmp * parseInt(noptiHigh),2);
	}else{
		pretAct.value = format_nr(pretTmp,2);
	}
	/*end winter*/
/*	decomenteaza asta daca e fara winter pretAct.value = format_nr(pretTmp,2);*/
	if(pretAct.value) pretActCr.style.display = '';
	else pretActCr.style.display = 'none';
}

function dayadd(f,dayadd,plusDay){
	if (f == "form1") df=document.form1;
	else df=document.form2;

	sdate = df.sdate.value;

	day = sdate.substr(0,2);
	if (day.substr(0,1) == "0") day = Number(day.substr(1,1));
	else day = Number(day);

	month = sdate.substr(3,2);
	if (month.substr(0,1) == "0") month = Number(month.substr(1,1));
	else month = Number(month);

	year = Number(sdate.substr(6,4));

	mdays = getMonthDays(year);
	//daystoadd = dayadd + 1;
	daystoadd = dayadd;
	newdays = day + daystoadd;
	//alert("day="+day+" | newdays="+newdays+" | daystoadd="+daystoadd);

	while (newdays > mdays[month-1]){
		newdays = newdays - mdays[month-1];
		month = month + 1;
		if (month == 13){
			month = 1;
			year = year + 1;
			mdays = getMonthDays(year);
		}
	}

	d = newdays.toString();
	if (d.length == 1) d = "0"+d;
	m = month.toString();
	if (m.length == 1) m = "0"+m;
	y = year.toString();

	df.edate.value = d + "." + m + "." + y;
}


function getMonthDays(year) {
    var leap = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
	return [31, (leap ? 29 : 28), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
}

function addDays(nrDays,origDate,returnFormat){
	var separator = ".";
	var newEndDate = new Date(Number(origDate.substr(6,4)),Number(origDate.substr(3,2))-1,Number(origDate.substr(0,2))+nrDays,1,0,0);
	var ystart = newEndDate.getFullYear();
	var mstart = String(newEndDate.getMonth()+1);
	if(mstart.length < 2) mstart = "0"+mstart;
	var dstart = String(newEndDate.getDate());
	if(dstart.length < 2) dstart = "0"+dstart;

	switch (returnFormat){
	   case "date" :
		  newEndDate = dstart+separator+mstart+separator+ystart;
		  break;
	   case "unix" :
		  newEndDate = newEndDate.getTime();
		  break;
	   default :
	   newEndDate = "no format";
	}

	return newEndDate;
}

function edateRefresh(nrDays){
	// if start date is less than event start date
	var edate = document.getElementById('edate');
	var sdate = document.getElementById('sdate');
	var sdateUT = addDays(0,sdate.value,'unix');
	var eventStartDate = document.getElementById('eventStartDate');
	var eventStartDateUT = addDays(0,eventStartDate.value,'unix');
	if(sdateUT < eventStartDateUT) edate.value = addDays(nrDays,eventStartDate.value,'date');
}

function sdateCalendar(nrDays,nightsBA){
	var sdate = document.getElementById('sdate');
	var edate = document.getElementById('edate');
	switch(nightsBA){
		case 0:
			var inDate = addDays(-1,document.getElementById('eventStartDate').value,"date");
			break;
		case 1:
			var inDate = addDays(0,document.getElementById('eventStartDate').value,"date");
			break;
		case 2:
			var inDate = addDays(0,document.getElementById('eventStartDate').value,"date");
			break;
		case 3:
			var inDate = addDays(-1,document.getElementById('eventStartDate').value,"date");
			break;
	}
	if (document.getElementById('eventEndDate').value == '')
		var outDate = '';
	else
		var outDate = addDays(0,document.getElementById('eventEndDate').value,"date");

	calendarOpen('../calendar/indexV3Book.php?dataCalTextBox=document.form1.sdate&dataCalTextVal='+sdate.value+'&sdateStart='+sdate.value+'&inDate='+inDate+'&outDate='+outDate,'Calendar',175,155,'status=0','center')
}

function edateCalendar(nrDays,nightsBA){
	var sdate = document.getElementById('sdate');
	var sdateUT = addDays(0,document.getElementById('sdate').value,"unix");
	var edate = document.getElementById('edate');
	var inDate = addDays(0,document.getElementById('eventStartDate').value,"date");
	var inDateUT = addDays(0,document.getElementById('eventStartDate').value,"unix");
	switch(nightsBA){
		case 0:
			var outDate = addDays(Number(1+nrDays),document.getElementById('eventEndDate').value,"date");
			break;
		case 1:
			var outDate = addDays(Number(nrDays),document.getElementById('eventEndDate').value,"date");
			break;
		case 2:
			var outDate = addDays(Number(1+nrDays),document.getElementById('eventEndDate').value,"date");
			break;
		case 3:
			var outDate = addDays(Number(nrDays),document.getElementById('eventEndDate').value,"date");
			break;
	}

	if(sdateUT < inDateUT) inDate = addDays(nrDays,document.getElementById('eventStartDate').value,"date");

	calendarOpen('../calendar/indexV3Book.php?dataCalTextBox=document.form1.edate&dataCalTextVal='+edate.value+'&sdate='+sdate.value+'&edate='+edate.value+'&inDate='+inDate+'&outDate='+outDate,'Calendar',175,155,'status=0','center');
}

