XLIX. MCAL

MCAL signifie Modular Calendar Access Library (librairie calendaire modulaire).

Libmcal est une librairie 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 librairie.

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énéments récurents.

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.

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

Les constantes suivantes sont définies avec l'extension mcal. Pour les jours de la semaine :

  • MCAL_SUNDAY (Dimanche)

  • MCAL_MONDAY (Lundi)

  • MCAL_TUESDAY (Mardi)

  • MCAL_WEDNESDAY (Mercredi)

  • MCAL_THURSDAY (Jeudi)

  • MCAL_FRIDAY (Vendredi)

  • MCAL_SATURDAY (Samedi)

Pour les récurrences :

  • MCAL_RECUR_NONE (Aucune)

  • MCAL_RECUR_DAILY (Quotidienne)

  • MCAL_RECUR_WEEKLY (Hebdomadaire)

  • MCAL_RECUR_MONTHLY_MDAY (Mensuelle, date fixe)

  • MCAL_RECUR_MONTHLY_WDAY (Mensuelle, jour fixe )

  • MCAL_RECUR_YEARLY (Annuelle)

Pour les mois :

  • MCAL_JANUARY (Janvier)

  • MCAL_FEBRUARY (Février)

  • MCAL_MARCH (Mars)

  • MCAL_APRIL (Avril)

  • MCAL_MAY (Mai)

  • MCAL_JUNE (Juin)

  • MCAL_JULY (Juillet)

  • MCAL_AUGUST (AoÛt)

  • MCAL_SEPTEMBER (Septembre)

  • MCAL_OCTOBER (Octobre)

  • MCAL_NOVEMBER (Novembre)

  • MCAL_DECEMBER (Décembre)

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 y a des accesseurs bien pratiques pour créer, initialiser et lire des objets événements.

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