jQuery(function ($) {
    $('.range-datepicker').each(function () {
        var calID = '#' + this.id;

        $(calID + ' .daterange').datepick({
            beforeShow: customRange,
            onSelect: customDate,
            showOn: 'both',
            buttonImageOnly: true,
            buttonImage: 'mod_bookingsystem/javascript/datepicker/calendar.gif',
            dateFormat: 'dd.mm.yy'
        });

        function customRange(input) {
            return {
                minDate: (
                    $(input).hasClass('to')
                        ? $(calID + ' .from').datepick('getDate')
                        : new Date()
                )
            };
        };

        function customDate(input) {
            if($(this).hasClass('from')) {
                var dthis = $(this).datepick('getDate');
                var dthat = $(calID + ' .to').datepick('getDate');

                if(dthat && dthis.getTime() > dthat.getTime()) {
                    dthat.setDate( dthis.getDate() + 1 );
                    $(calID + ' .to').datepick('setDate', dthat);
                };
            };
        };
    });
});

