Правило повторения +vCalendar

Правило повторения: это свойство определяется именем свойства RRULE. Это свойство определяет правило или повторяющийся шаблон для повторяющегося объекта vCalendar на основе базовой грамматики правила повторения XAPIA CSA. Значение свойства является спецификацией шаблона для повторения. Ниже приведен пример этого свойства:

RRULE:W2 TU TH          // Every other week, on Tuesday and Thursday
RRULE:D1 #10                // Daily for 10 occurrences
RRULE:YM1 6 7 #8            // Yearly in June and July for 8 occurrences
Support for this property is optional for implementations conforming to this specification.

поэтому для этого «Правила повторения» есть любой алгоритм, чтобы его было легко разработать.


person Abhimanyu    schedule 06.08.2009    source источник
comment
Спецификация iCal — RFC 5545 (из RFC 2445). Одной из распространенных реализаций для этого является google-rfc-2445, но, поскольку код Google был закрыт, явного преемника нет. Возможно, попробуйте клон jcvanderwal.   -  person Adam Katz    schedule 25.06.2016


Ответы (1)


Для меня алгоритм - это то, что вы упомянули здесь... т.е. "RRULE". вывод в этом формате.

Я знаю, что это непростая работа, так как я некоторое время играл с ней, прежде чем нашел близкое решение. Вы можете попробовать какой-нибудь базовый планировщик, создав таблицу, скажем, событий, с некоторыми полями, такими как recurrence_type (ежедневно, ежемесячно, еженедельно, ежемесячно_по_дню, ежемесячно_по_дате), repeat_until, num_occurences и т. д.

Чтобы иметь все комбинации ПРАВИЛ, он должен быть очень сложным, чтобы выводить желаемый формат. Я пробовал это в PHP/MySQL.

person TigerTiger    schedule 06.08.2009
comment
извините, приятель.. это была часть приложения, и код не является общедоступным.. вы можете попробовать просмотреть некоторые приложения календаря с открытым исходным кодом, чтобы пройти. - person TigerTiger; 06.08.2009
comment
чувак, мне не нужен твой код, мне нужен алгоритм (способ прочитать правило). - person Abhimanyu; 06.08.2009