Функции MCAL
LIV. Функции MCAL
MCAL это Modular Calendar Access Library.
Libmcal это библиотека C для доступа к календарям. Она написана как модульная, с подключаемыми драйверами. MCAL это календарный эквивалент IMAP-модуля для mailboxes/почтовых ящиков.
При поддержке mcal, календарный поток может быть открыт почти так же, как mailbox-поток с поддержкой IMAP. Календари могут быть локальными файлами, удалёнными ICAP-серверами или другими форматами, которые поддерживаются библиотекой mcal.
Календарные события могут быть направлены в пул, запрошены или сохранены. Имеется также поддержка календарных тригеров (предупреждений) и повторяющихся событий.
С помощью libmcal можно получать доступ к календарным серверам без необходимости использования локального программирования или специфической БД.
Для того чтобы эти функции работали, вы должны скомпилировать PHP с опцией --with-mcal. Это требует установленной библиотеки mcal. Скачайте последнюю версию с http://mcal.chek.com/ и скомпилируйте и установите её.
Следующие константы определены при использовании модуля MCAL. Для дней недели:
MCAL_SUNDAY
MCAL_MONDAY
MCAL_TUESDAY
MCAL_WEDNESDAY
MCAL_THURSDAY
MCAL_FRIDAY
MCAL_SATURDAY
Для повторений:
MCAL_RECUR_NONE
MCAL_RECUR_DAILY
MCAL_RECUR_WEEKLY
MCAL_RECUR_MONTHLY_MDAY
MCAL_RECUR_MONTHLY_WDAY
-
MCAL_RECUR_YEARLY
Для месяцев:
MCAL_JANUARY
MCAL_FEBRUARY
MCAL_MARCH
MCAL_APRIL
MCAL_MAY
MCAL_JUNE
MCAL_JULY
MCAL_AUGUST
MCAL_SEPTEMBER
MCAL_OCTOBER
MCAL_NOVEMBER
MCAL_DECEMBER
Большинство функций используют внутреннюю структуру событий, которая уникальна для каждого потока. Это избавляет от необходимости передавать большие объекты между функциями. Имеются удобные функции для настройки, инициализации и запрашивания значений структуры событий.
- Содержание
- mcal_append_event - сохраняет новое событие в MCAL-календаре
- mcal_close - закрывает поток MCAL
- mcal_create_calendar - создаёт новый MCAL-календарь
- mcal_date_compare - сравнивает две даты
- mcal_date_valid — возвращает TRUE, если данный год, месяц, день является верной датой
- mcal_day_of_week — возвращает день недели для данной даты
- mcal_day_of_year — возвращает день года для данной даты
- mcal_days_in_month — возвращает количество дней в данном месяце
- mcal_delete_calendar - удаляет MCAL-календарь
- mcal_delete_event - удаляет событие из MCAL-календаря
- mcal_event_add_attribute - добавляет атрибут и значение в структуру глобальных событий потока
- mcal_event_init - инициализирует структуру глобальных событий потока
- mcal_event_set_alarm - устанавливает напоминание/alarm структуры глобальных событий потока
- mcal_event_set_category - устанавливает категорию структуры глобальных событий потока
- mcal_event_set_class - устанавливает класс структуры глобальных событий потока
- mcal_event_set_description - устанавливает описание структуры глобальных событий потока
- mcal_event_set_end - устанавливает конечную дату и время структуры глобальных событий потока
- mcal_event_set_recur_daily - устанавливает повторение структуры глобальных событий потока
- mcal_event_set_recur_monthly_mday - устанавливает повторение структуры глобальных событий потока
- mcal_event_set_recur_monthly_wday - устанавливает повторение структуры глобальных событий потока
- mcal_event_set_recur_none - устанавливает повторение структуры глобальных событий потока
- mcal_event_set_recur_weekly - устанавливает повторение структуры глобальных событий потока
- mcal_event_set_recur_yearly - устанавливает повторение структуры глобальных событий потока
- mcal_event_set_start - устанавливает начальную дату и время структуры глобальных событий потока
- mcal_event_set_title - устанавливает заголовок/title структуры глобальных событий потока
- mcal_expunge - удаляет все события, помеченные как вычёркиваемые
- mcal_fetch_current_stream_event — возвращает объект, содержащий структуру событий текущего потока
- mcal_fetch_event - извлекает событие из календарного потока
- mcal_is_leap_year — является данный год високосным, или нет
- mcal_list_alarms - возвращает список событий, имеющих включённое уведомление для данной даты/времени
- mcal_list_events - возвращает список ID'ов для даты или диапазона дат
- mcal_next_recurrence — возвращает следующее повторение события
- mcal_open - открывает MCAL-соединение
- mcal_popen - открывает постоянное MCAL-соединение
- mcal_rename_calendar - переименовывает MCAL-календарь
- mcal_reopen - повторно открывает MCAL-соединение
- mcal_snooze - выключает уведомление о событии
- mcal_store_event - модифицирует существующее событие в MCAL-календаре
- mcal_time_valid — возвращает TRUE, если данный год, месяц, день является верным временем
- mcal_week_of_year — возвращает номер недели для данной даты