SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano

273 Plugins, 191 contribs sur SPIP-Zone, 34 visiteurs en ce moment

Accueil du site > Dates, calendriers et agendas > Import-Export calendrier > Export iCal pour mini agenda sous SPIP

Export iCal pour mini agenda sous SPIP

25 mars 2005 – par GoUaRfIg ! – <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

Permet d’exporter le mini-agenda SPIP sous forme iCalendar ou vCalendar pour le récupérer sous Mac iCal ou Mozilla Calendar

Préambule

J’ai décidé de faire un export « iCalendar » (anciennement « vCalendar ») de mon agenda simple pour SPIP.

Introduction

« iCalendar » est un format d’échange d’agenda, et permet de transférer des rendez-vous.

C’est à l’origine un format d’import/export de rendez-vous créé par un consortium Apple/AT&T/IBM/Siemens et principalement utilisé par une application sous Mac (iCal).

L’idée de réutiliser ce format d’échange a été adopté par quelques logiciels de calendrier comme Mozilla.

Pré-requis

Le seul pré-requis est d’avoir installé la contribution « Mini agenda ultra simple », et évidemment, de l’utiliser.

Cette contribution va vous permettre de faire une exportation de votre mini agenda au format iCalendar afin de le récupérer dans votre logiciel d’agenda favori.

Ajouter un filtre

Vous allez devoir ajouter un filtre dans votre fichier mes_fonctions.php3 comme suivant :

Ce filtre va être utilisé pour générer une date compatible avec le format d’export des données.

Le fichier agenda-ical.php3 :

Créez un fichier agenda-ical.php3 contenant le code php suivant :

J’ai donné un délai de 24 * 3600 ce qui donne une mise en cache d’une journée. Le fichier sera généré une fois par jour.

Par rapport à un fichier .php3 SPIP habituel, vous retrouvez en plus la ligne

@header ("content-type:text/calendar");

qui permet de spécifier que vous ne renvoyez pas une page HTML, mais un fichier de type « calendar ».

Le fichier agenda-ical.html :

Voici le source du squelette proprement dit :

Convention pour l’écriture des articles

Autant sur votre site SPIP vous pouvez gérer les données de l’article à votre convenance, j’ai pour ma part utilisé un certain nombre de conventions :

-  Le sous-titre de l’article correspond au lieu de l’événement
-  Le sur-titre de l’article correspond à l’organisateur de l’événement

Résultat :

Voici ce que donne la récupération d’un événement avec Mozilla Calendar :

JPEG - 42.5 ko
Un événement sous Mozilla Calendar

Pour information...

Un événement est noté pour une journée complète, puisque SPIP ne gère pas d’heure dans la date de publication.

L’échange de calendrier a été testé avec succès sur
-  Apple iCal (sur un Mac OS X 10.3)
-  Mozilla Calendar (suite Mozilla 1.6 sous Windoze XP)

Voici un exemple de synchronisation iCal :
http://www.ncrambouillet.info/spip/agenda-ical.php3

Cette url n’a évidemment pas d’autre intérêt que celui de tester le résultat !

P.-S.

Si vous avez un logiciel compatible iCalendar ou vCalendar qui n’accepte pas le format du fichier, faites le moi savoir, je regarderai ce qui cloche ! Merci.

Retour en haut de la page

Vos commentaires

  • Le 27 octobre 2006 à 13:42, par thierrybo En réponse à : Export iCal pour mini agenda sous SPIP

    Testé avec Evolution : OK

    Répondre à ce message

  • Le 27 avril 2005 à 00:42, par Alexandre En réponse à : > Export iCal pour mini agenda sous SPIP

    Dans ma rubrique Agenda de mon site, je publie des articles où l’heure est présente dans le DESCRIPTIF, au format « 20h00 »

    J’ai donc ajouté $ mes-fonctions.php3 :

    et dans agenda-html

    Je suis un absolu newbie en prog, mais je me débrouille. La syntaxe parraît correcte. En tout cas, ça marche avec iCal 1.5.5

    J’ai trouvé de la doc si vous souhaiter approfondir : http://xml.resource.org/public/rfc/html/rfc2445.html

    Dans la même veine, on peux ajouter une durée de l’événement dans un autre champ, ou alors par mot-clé. Il y a plein de possibilités.

    Evidemment, il faut que les rédacteurs soient disciplinés... :-)

    cordialement, Alex
    L’ agenda en question

    • Le 28 avril 2005 à 08:34, par GoUaRfIg ! En réponse à : > Export iCal pour mini agenda sous SPIP

      Hum. C’est une très bonne idée pour enrichir mon mini-agenda et en faire un vrai calendrier !

      Merci

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d'abord sur gravatar.com (gratuit et indolore) et n'oubliez pas d'indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Une licence pour un article

    18 avril 2007 – 25 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Sur une idée originale de erational, voici un plugin permettant de lier une licence à un article.

  • Plugin Parrainage

    6 novembre 2011 – <blink style='color:red;'>public|spip|ecrire:commentaire</blink>

    Permettre aux utilisateurs d’inviter leurs contacts à s’inscrire sur le site. Description Vous connaissez le web moderne et son cortège d’applis toujours en version « beta » et de buzz sur le dernier réseau à la mode ? Vous voulez vous aussi vous y (...)

  • Formulaire de contact libre

    27 avril 2011 – 36 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Dans SPIP il n’y a pas un formulaire de contact, mais autant de formulaires de contact que d’auteurs. Cette phrase de Romy, dans son article Une page de contact dans mon SPIP, pointe un petit manque de SPIP. La possibilité d’insérer rapidement un (...)

  • Plugin Mot de Passe Compliqué

    2 novembre 2007 – 16 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin ajoute un testeur de complexité de mot de passes dans les formulaires de choix de mot de passe de SPIP.

  • Navigation AJAX

    31 janvier – 18 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin permet de modifier automatiquement une parties des liens internes de manière à ce qu’ils ne déclenchent pas un chargement complet de la page cible, mais un chargement en AJAX de certains éléments spécifiés à l’avance. Il permet aussi de (...)