YAHOO.namespace("calendar");

function init() {
	this.today = new Date();

	var thisYear = this.today.getFullYear();
	var thisMonth = this.today.getMonth();
	var thisDay = this.today.getDate();

	this.link1 = document.getElementById("dateLink1");
	this.link2 = document.getElementById("dateLink2");

    this.selDate1 = document.getElementById("selDate1");
	this.selYear1 = document.getElementById("selYear1");
	this.selMonth1 = document.getElementById("selMonth1");
	this.selDay1 = document.getElementById("selDay1");

    var Miesc = thisMonth+1;
    var Dzien = thisDay;
    if (Miesc<10) Miesc = '0'+Miesc;
    if (Dzien<10) Dzien = '0'+Dzien;

    this.selDate1.value = thisYear+'-'+Miesc+'-'+Dzien;
    this.selYear1.selectedIndex = thisYear-2010;
	this.selMonth1.selectedIndex = thisMonth;
	this.selDay1.selectedIndex = thisDay-1;

    this.selDate2 = document.getElementById("selDate2");
	this.selYear2 = document.getElementById("selYear2");
	this.selMonth2 = document.getElementById("selMonth2");
	this.selDay2 = document.getElementById("selDay2");

    this.selDate2.value = thisYear+'-'+Miesc+'-'+Dzien;
    this.selYear2.selectedIndex = thisYear-2010;
	this.selMonth2.selectedIndex = thisMonth;
	this.selDay2.selectedIndex = thisDay-1;

	this.selYear1.onchange = changeDate1;
	this.selMonth1.onchange = changeDate1;
	this.selDay1.onchange = changeDate1;
	this.selYear2.onchange = changeDate2;
	this.selMonth2.onchange = changeDate2;
	this.selDay2.onchange = changeDate2;

	YAHOO.calendar.cal1 = new YAHOO.widget.Calendar2up("YAHOO.calendar.cal1","container1",(thisMonth+1)+"/"+thisYear,(thisMonth+1)+"/"+thisDay+"/"+thisYear);
	YAHOO.calendar.cal1.title = "W&#228;hlen Sie Ihren Wunschtermin:";
	YAHOO.calendar.cal1.setChildFunction("onSelect",setDate1);
	YAHOO.calendar.cal1.render();

	YAHOO.calendar.cal2 = new YAHOO.widget.Calendar2up("YAHOO.calendar.cal2","container2",(thisMonth+1)+"/"+thisYear,(thisMonth+1)+"/"+thisDay+"/"+thisYear);
	YAHOO.calendar.cal2.title = "W&#228;hlen Sie Ihren Wunschtermin:";
	YAHOO.calendar.cal2.setChildFunction("onSelect",setDate2);
	YAHOO.calendar.cal2.render();

	document.getElementById("dateLink1").onclick = showCalendar1;
	document.getElementById("dateLink2").onclick = showCalendar2;
}

function showCalendar1() {
	YAHOO.calendar.cal2.hide();

	var pos = YAHOO.util.Dom.getXY(link1);
	YAHOO.calendar.cal1.outerContainer.style.display="block";
	YAHOO.util.Dom.setXY(YAHOO.calendar.cal1.outerContainer, [pos[0],pos[1]+link1.offsetHeight+1]);
}

function showCalendar2() {
	YAHOO.calendar.cal1.hide();

	var pos = YAHOO.util.Dom.getXY(link2);
	YAHOO.calendar.cal2.outerContainer.style.display="block";
	YAHOO.util.Dom.setXY(YAHOO.calendar.cal2.outerContainer, [pos[0],pos[1]+link2.offsetHeight+1]);
}

function setDate1() {
	var date1 = YAHOO.calendar.cal1.getSelectedDates()[0];
    if (navigator.userAgent.indexOf("IE") != -1){
        selYear1.selectedIndex=date1.getYear()-2010;
        var rok = (date1.getYear());
    } else {
        selYear1.selectedIndex=date1.getYear()-108;
        var rok = (date1.getYear()+1900);
    }
    var miesiac = (date1.getMonth()+1);
    if (miesiac<10) miesiac='0'+miesiac;
    var dzien = (date1.getDate());
    if (dzien<10) dzien='0'+dzien;
    var nowaData1 = rok+'-'+miesiac+'-'+dzien;
    selDate1.value=nowaData1;
	selMonth1.selectedIndex=date1.getMonth();
	selDay1.selectedIndex=date1.getDate()-1;
	YAHOO.calendar.cal1.hide();
//    if (selDate2.value!="") if (selDate1.value>selDate2.value) window.alert("Data wyjazdu jest pózniejsza niż data powrotu.\nProszę poprawić.\nsetDate1");
}

function setDate2() {
	var date2 = YAHOO.calendar.cal2.getSelectedDates()[0];
    if (navigator.userAgent.indexOf("IE") != -1){
        selYear2.selectedIndex=date2.getYear()-2010;
        var rok = (date2.getYear());
    } else {
        selYear2.selectedIndex=date2.getYear()-108;
        var rok = (date2.getYear()+1900);
    }
    var miesiac = (date2.getMonth()+1);
    if (miesiac<10) miesiac='0'+miesiac;
    var dzien = (date2.getDate());
    if (dzien<10) dzien='0'+dzien;
    var nowaData2 = rok+'-'+miesiac+'-'+dzien;
    selDate2.value=nowaData2;
	selMonth2.selectedIndex=date2.getMonth();
	selDay2.selectedIndex=date2.getDate()-1;
	YAHOO.calendar.cal2.hide();
//    if (selDate1.value>selDate2.value) window.alert("Data wyjazdu jest pózniejsza niż data powrotu.\nProszę poprawić.\nsetDate2");
}

function changeDate1() {
	var month = selMonth1.selectedIndex;
	var day = selDay1.selectedIndex + 1;
    var year = selYear1.selectedIndex + 2010;
//	var year = today.getFullYear();

	YAHOO.calendar.cal1.select((month+1) + "/" + day + "/" + year);
	YAHOO.calendar.cal1.setYear(year);
	YAHOO.calendar.cal1.setMonth(month);
	YAHOO.calendar.cal1.render();
//    if (selDate2.value!="") if (selDate1.value>selDate2.value) window.alert("Data wyjazdu jest pózniejsza niż data powrotu.\nProszę poprawić.\nchangeDate1");
}

function changeDate2() {
	var month = selMonth2.selectedIndex;
	var day = selDay2.selectedIndex + 1;
    var year = selYear2.selectedIndex + 2010;
//	var year = today.getFullYear();

	YAHOO.calendar.cal2.select((month+1) + "/" + day + "/" + year);
	YAHOO.calendar.cal2.setYear(year);
	YAHOO.calendar.cal2.setMonth(month);
	YAHOO.calendar.cal2.render();
//    if (selDate1.value>selDate2.value) window.alert("Data wyjazdu jest pózniejsza niż data powrotu.\nProszę poprawić.\nchangeDate2");
}

YAHOO.util.Event.addListener(window, "load", init);

