LIII. 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_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 jour d'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 flot.
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 les dates de début et de fin 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 pour le flot courant.
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énement 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 -- Réouvre une connexion MCAL
mcal_snooze -- Eteint 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 --  Returns the week number of the given date