Importateur de contacts

Un plugin générique pour importer des contacts.

Description

Ce plugin est un outil pour développeurs, qui fournit un formulaire configurable d’importation de contacts.

Le plugin en lui-même ne propose aucun service web chez qui récupérer les contacts. Il offre un API (interface de programmation) que d’autres plugins doivent implémenter afin de fournir tel ou tel service d’importation.

De la même façon, ce plugin ne fait aucun traitement. À la fin de l’importation, la liste des contacts est enregistrées dans une variable de session « contacts », et une fonction de rappel peut également être appelée (voir plus bas).

Configuration du formulaire

Lorsqu’au moins une implémentation est installée, vous pouvez aller configurer le plugin dans l’espace privé. La page liste alors l’ensemble des services possibles, et c’est à vous de choisir lesquels vous désirez activer.

Les implémentations connues que vous pouvez installer :

Utilisation du formulaire

Le formulaire est appelé par #FORMULAIRE_IMPORTER_CONTACTS.

Deux arguments optionnels sont acceptés : #FORMULAIRE_IMPORTER_CONTACTS{URL de retour, fonction de rappel}

  • URL de retour : comme dans la majorité des formulaires SPIP, vous pouvez définir vers quelle page le formulaire renverra à la fin du traitement.
  • La fonction de rappel correspond au nom d’une fonction existante dans votre application, qui sera alors appelée à la fin de l’importation, avec en paramètre le tableau des contacts importés. Par exemple : function mon_traitement($contacts).

La liste des contacts, que ce soit en session ou pour la fonction de rappel, est un tableau constitué d’une liste de tableaux ayant « nom » et « email » comme clés :

array(
	array('nom' => 'Georges', 'email' => 'gigi@lamoroso.org'),
	array(...),
)

API pour ajouter des services

Un plugin voulant implémenter cette fonctionnalité, doit :

  • utiliser le pipeline importateur_contacts_moteurs pour déclarer le moteur et ses fournisseurs ;
  • avoir une fonction formulaires_importer_contacts_charger_NOMDUMOTEUR($fournisseur) qui déclare les champs nécessaires à ce moteur ou au fournisseur précis choisi (que l’on a en paramètre) ;
  • avoir un squelette formulaires/importer_contacts_NOMDUMOTEUR.html avec le HTML de ces champs ;
  • avoir une fonction formulaires_importer_contacts_verifier_NOMDUMOTEUR($fournisseur) qui vérifie la validité de ces champs ET qui va chercher les contacts en utilisant le fournisseur choisir ET qui place ces contacts dans set_request('contacts', $contacts).

Pour les détails, il faudra pour l’instant étudier le code du plugin OpenInviter.

Discussion

Aucune discussion

Ajouter un commentaire

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

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom

Dernière modification de cette page le 7 novembre 2017