Первый день недели
Минимум недель
Выравнивание
<
>
function drawCalendar() {
    var weeks = AbstractCalendar.getCalendar(currentYear, currentMonth, calendarOptions);

    var html = '';

    for (var i = 0; i < weeks.length; i++) {
        var week = weeks[i];
        html += '<div class="week">';
        for (var j = 0; j < week.days.length; j++) {
            var day = week.days[j];

            var classes = 'day' + (day.isToday ? ' today' : '') + (day.isOtherMonth ? ' other-month' : '');
            ...

            var data = 'data-year="' + day.year + '" data-month="' + day.month + '" data-date="' + day.date + '"';

            html += '<div class="' + classes + '" ' + data + '>' + day.date + '</div>';
        }
        html += '<div>';
    }

    document.getElementById('calendar-weeks').innerHTML = html;
}