Подскажите пожалуйста, существуют ли js библиотеки позволяющие решать подобные задачи:
есть событие которое начинается например 03.01.2011,
оно повторяется каждую неделю во вторник/среду/субботу
нужно получить набор дат когда это событие произойдет за промежуток времени с 01.02.20011 до 29.02.2011 (включительно)
Либо может быть есть описание алгоритмов позволяющих работать с повторяющимися событиями. Думаю подобная задача решалась неоднократно. К сожалению не удалось найти.
Нужен функционал управления повторяемостью событий, похожий на тот который есть например в google или яндекс календарях.
Наверно стоит уточнить задачу.
Варианты повторяемости могут быть следующими:
ежедневно каждый n-ный день
ежедневно каждый рабочий день
еженедельно каждую n-ную неделю с указанием дней недели
ежемесячно заданного числа (число совпадает с числом первого события) числа каждого n-ного месяца
ежемесячно в n-ный день недели каждого n-ного месяца (например 3 вторник каждого 4 месяца)
Ну а вопрос тот же, есть ли js библиотеки решающие подобные задачи или алгоритмы.
Удобней всего наверно сделать определенные промежутки, и для каждого делать отдельную функцию возвращающую следующую дату:
getNextWorkDay(date), getNextWeekDay(date), getNextFirstDayOfMonth(date) итд.
+ Простые задачи на много проще универсальных
+ Это будет быстрей универсальной задачи
+ Это легче поддерживать
— Все промежутки нужно будет описывать отдельно