LXVI. MCAL

Introduction

MCAL est le sigle de Modular Calendar Access Library (bibliothèque calendaire modulaire).

Libmcal est une bibliothèque C de calendriers. Elle est écrite pour être très modulaire, et dispose de nombreux modules. MCAL est l'équivalent de IMAP pour les calendriers.

Avec mcal, un calendrier peut être ouvert comme une boîte aux lettres. Les calendriers peuvent être des fichiers locaux, ou bien être sur des serveurs ICAP distants, ou encore tout autre format supporté par la bibliothèque.

Les événements peuvent être lus, sélectionnés et enregistrés. Il y a aussi la possibilité d'ajouter des alarmes, et de placer des événements récurrents.

Avec libmcal, les serveurs centralisés peuvent être accédés et utilisés, et remplacent avantageusement tout développement spécifique de base de données.

La plupart des fonctions utilisent une structure d'événement interne, qui est unique pour chaque connexion. Cela évite d'avoir à passer des objets de grande taille entre les fonctions. Il existe des fonctions bien pratiques pour créer, initialiser et lire des objets événements.

Note : Cette extension a été déplacée dans le module PECL et ne sera plus intégrée PHP.5.0.0.

Note : PHP disposait d'une extension ICAP, mais la bibliothèque originale et l'extension PHP ne sont plus supportées. La solution de remplacement est MCAL.

Note : Cette extension n'est pas disponible sur les plates-formes Windows.

Pré-requis

Pour faire fonctionner cette bibliothèque, vous devez compiler PHP avec l'option --with-mcal. Il vous faudra alors avoir installé la bibliothèque mcal. Téléchargez la dernière version à http://mcal.chek.com/ et compilez-la, puis installez-la.

Installation

Après avoir installé la bibliothèque mcal, vous devez compiler PHP avec l'option --with-mcal[=DIR].

Configuration à l'exécution

Cette extension ne définit aucune directive de configuration.

Types de ressources

Cette extension ne définit aucune ressource.

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

MCAL_SUNDAY (entier)

MCAL_MONDAY (entier)

MCAL_TUESDAY (entier)

MCAL_WEDNESDAY (entier)

MCAL_THURSDAY (entier)

MCAL_FRIDAY (entier)

MCAL_SATURDAY (entier)

MCAL_JANUARY (entier)

MCAL_FEBRUARY (entier)

MCAL_MARCH (entier)

MCAL_APRIL (entier)

MCAL_MAY (entier)

MCAL_JUNE (entier)

MCAL_JULY (entier)

MCAL_AUGUST (entier)

MCAL_SEPTEMBER (entier)

MCAL_OCTOBER (entier)

MCAL_NOVEMBER (entier)

MCAL_DECEMBER (entier)

MCAL_RECUR_NONE (entier)

MCAL_RECUR_DAILY (entier)

MCAL_RECUR_WEEKLY (entier)

MCAL_RECUR_MONTHLY_MDAY (entier)

MCAL_RECUR_MONTHLY_WDAY (entier)

MCAL_RECUR_YEARLY (entier)

MCAL_M_SUNDAY (entier)

MCAL_M_MONDAY (entier)

MCAL_M_TUESDAY (entier)

MCAL_M_WEDNESDAY (entier)

MCAL_M_THURSDAY (entier)

MCAL_M_FRIDAY (entier)

MCAL_M_SATURDAY (entier)

MCAL_M_WEEKDAYS (entier)

MCAL_M_WEEKEND (entier)

MCAL_M_ALLDAYS (entier)

Table des matières
mcal_append_event --  Enregistre un nouvel événement dans un calendrier MCAL
mcal_close -- Ferme une connexion MCAL
mcal_create_calendar -- Crée un nouveau calendrier
mcal_date_compare -- Compare deux dates
mcal_date_valid --  Valide une date
mcal_day_of_week --  Le jour de la semaine
mcal_day_of_year --  Le jour de l'année
mcal_days_in_month --  Retourne le nombre de jours dans un mois
mcal_delete_calendar -- Efface un calendrier
mcal_delete_event --  Efface un événement dans un calendrier MCAL
mcal_event_add_attribute --  Ajoute un attribut et une valeur à la structure globale
mcal_event_init --  Initialise la structure globale d'un flux MCAL
mcal_event_set_alarm --  Fixe l'alarme de la structure globale
mcal_event_set_category --  Fixe la catégorie de la structure globale
mcal_event_set_class --  Fixe la classe de la structure globale
mcal_event_set_description --  Fixe la description de la structure globale
mcal_event_set_end --  Fixe la date de fin de la structure globale
mcal_event_set_recur_daily --  Fixe la récurrence quotidienne
mcal_event_set_recur_monthly_mday --  Fixe la récurrence
mcal_event_set_recur_monthly_wday --  Fixe la récurrence mensuelle
mcal_event_set_recur_none --  Supprime la récurrence de la structure globale
mcal_event_set_recur_weekly --  Fixe la récurrence hebdomadaire
mcal_event_set_recur_yearly --  Fixe la récurrence annuelle
mcal_event_set_start --  Fixe la date de début de la structure globale
mcal_event_set_title --  Fixe le titre de la structure globale
mcal_expunge -- Supprime tous les événements marqués pour l'effacement
mcal_fetch_current_stream_event --  Retourne un objet contenant la structure de date
mcal_fetch_event --  Recherche un événement dans le calendrier
mcal_is_leap_year --  Vérifie que l'année est bissextile
mcal_list_alarms --  Retourne une liste d'événements qui ont une alarme prévue à une date
mcal_list_events --  Retourne une liste d'événements pour une date ou entre deux dates
mcal_next_recurrence --  Retourne la prochaine occurrence d'un événement
mcal_open -- Ouvre une connexion MCAL
mcal_popen -- Ouvre une connexion persistante MCAL
mcal_rename_calendar -- Renomme un calendrier
mcal_reopen -- Rouvre une connexion MCAL
mcal_snooze -- Eteind l'alarme d'un événement
mcal_store_event --  Modifie un événement dans un calendrier MCAL
mcal_time_valid --  Valide une heure
mcal_week_of_year --  Retourne le numéro de semaine dans l'année pour une date donnée