var ITL = window.ITL || {};

ITL.article = window.ITL.article || {};

ITL.article.searchControlBeg = {};
ITL.article.searchControlEnd = {};

ITL.article.searchControlBeg.showCalendar = function () {
    ITL.article.searchControlBeg.calendar.render();
}
ITL.article.searchControlEnd.showCalendar = function () {
    ITL.article.searchControlEnd.calendar.render();
}

ITL.article.searchControlBeg.handleSelect = function (type,args,obj) {
        var dates = args[0];
        var date = dates[0];
        var year = date[0], month = date[1], day = date[2];

        var txtDate1 = document.getElementById("beg");
        txtDate1.value = day + "." + month + "." + year;
}
ITL.article.searchControlEnd.handleSelect = function (type,args,obj) {
        var dates = args[0];
        var date = dates[0];
        var year = date[0], month = date[1], day = date[2];

        var txtDate1 = document.getElementById("end");
        txtDate1.value = day + "." + month + "." + year;
}

YAHOO.util.Event.onDOMReady(function () {
    
    // Init Calendar
    ITL.article.searchControlBeg.calendar = new YAHOO.widget.Calendar("calendar","calendarContainerBeg", { close:true });
    ITL.article.searchControlEnd.calendar = new YAHOO.widget.Calendar("calendar","calendarContainerEnd", { close:true });

	// Correct formats for Germany: dd.mm.yyyy, dd.mm, mm.yyyy
	ITL.article.searchControlBeg.calendar.cfg.setProperty("DATE_FIELD_DELIMITER", ".");
	ITL.article.searchControlEnd.calendar.cfg.setProperty("DATE_FIELD_DELIMITER", ".");
	
	ITL.article.searchControlBeg.calendar.cfg.setProperty("MDY_DAY_POSITION", 1);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("MDY_DAY_POSITION", 1);
	ITL.article.searchControlBeg.calendar.cfg.setProperty("MDY_MONTH_POSITION", 2);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("MDY_MONTH_POSITION", 2);
	ITL.article.searchControlBeg.calendar.cfg.setProperty("MDY_YEAR_POSITION", 3);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("MDY_YEAR_POSITION", 3);
	
	ITL.article.searchControlBeg.calendar.cfg.setProperty("MD_DAY_POSITION", 1);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("MD_DAY_POSITION", 1);
	ITL.article.searchControlBeg.calendar.cfg.setProperty("MD_MONTH_POSITION", 2);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("MD_MONTH_POSITION", 2);
	
	// Date labels for German locale
	ITL.article.searchControlBeg.calendar.cfg.setProperty("MONTHS_SHORT",   ["Jan", "Feb", "M\u00E4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"]);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("MONTHS_SHORT",   ["Jan", "Feb", "M\u00E4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"]);
	ITL.article.searchControlBeg.calendar.cfg.setProperty("MONTHS_LONG",    ["Januar", "Februar", "M\u00E4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"]);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("MONTHS_LONG",    ["Januar", "Februar", "M\u00E4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"]);
	ITL.article.searchControlBeg.calendar.cfg.setProperty("WEEKDAYS_1CHAR", ["S", "M", "D", "M", "D", "F", "S"]);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("WEEKDAYS_1CHAR", ["S", "M", "D", "M", "D", "F", "S"]);
	ITL.article.searchControlBeg.calendar.cfg.setProperty("WEEKDAYS_SHORT", ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"]);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("WEEKDAYS_SHORT", ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"]);
	ITL.article.searchControlBeg.calendar.cfg.setProperty("WEEKDAYS_MEDIUM",["Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam"]);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("WEEKDAYS_MEDIUM",["Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam"]);
	ITL.article.searchControlBeg.calendar.cfg.setProperty("WEEKDAYS_LONG",  ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"]);
	ITL.article.searchControlEnd.calendar.cfg.setProperty("WEEKDAYS_LONG",  ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"]);
	
	ITL.article.searchControlBeg.calendar.render();
	ITL.article.searchControlEnd.calendar.render();
	
    // Register listeners
    YAHOO.util.Event.addListener("calendarImageBeg", "click", ITL.article.searchControlBeg.calendar.show, ITL.article.searchControlBeg.calendar, true);
    YAHOO.util.Event.addListener("calendarImageEnd", "click", ITL.article.searchControlEnd.calendar.show, ITL.article.searchControlEnd.calendar, true);
    ITL.article.searchControlBeg.calendar.selectEvent.subscribe(ITL.article.searchControlBeg.handleSelect, ITL.article.searchControlBeg.calendar, true);
    ITL.article.searchControlEnd.calendar.selectEvent.subscribe(ITL.article.searchControlEnd.handleSelect, ITL.article.searchControlEnd.calendar, true);
    
});
