Un service portail permet de présenter des informations de manière synthétique dans le portail utilisateur. Il est constitué de :
Le service doit fournir un code HTML autonome qui est inséré dans une balise HTML <DIV>.
Un document Freedom permet de définir un service portail.
Sous Freedom, via la gestion par famille Freedom (voir le manuel d'administration Freedom), il faut créer un nouveau document de famille Service Portail, symbolisée par l'icone
.
Les informations suivantes sont obligatoires :
Titre titre du service présenté aux utilisateurs et affichés dans les portails;Consultation URL complète de récupération du code HTML à afficher dans le portailCatégorie Permet de classifier les différents services en catégories; les catégories sont modifiables via la gestion par famille Freedom (manuel d'administration Freedom)Délai de raffraîchissement, intervalle de temps entre 2 mises à jour de l'affichage du service (ou Jamais).Les informations suivantes sont optionnelles :
Description description du service utilisée dans les diverses interfaces en complément au titre si elle est fournie;Edition, URL permettant de récupérer le code HTML du formulaire de paramétrage utilisateur;Icone, icone symbolisant le service portail.Les paramètres permettent de définir certains aspects du comportement du service portail :
Disponible Non signifie que le service n'est pas proposé aux utilisateurs pour insertion dans leur portail;Interactif Oui indique au portail que le service utilise en consultation un formulaire de saisie HTML; Modifiable non utiliséObligatoire non utiliséApplication attendue permet de lister les applications (au sens Freedom) nécessaire à ce service.APPLICATION[|APPLICATION]*
L'affichage du service (automatique ou à la demande) active l'URL de Consultation en postant les éventuels paramètres utilisateur et les champs de saisie (mode Interactif).
Si l'on prend l'exemple d'un service Interactif recherchant des contacts du carnet d'adresse, il se compose de :
L'URL de consulation retourne le code XML suivant :
<?xml version="1.0" encoding="UTF-8"?><freedomsvc title="[title]" uptime="[uptime]"><![CDATA[ <div>Rechercher : <input name="search" type="text" value=""></div> <div> ... résultat de la recherche précédente .... </div> ]]></freedomsvc>
Le code XML comporte 3 types d'information :
title de la balise freedomsvc est le titre du serviceuptime de la balise freedomsvc fournie la date de mise à jour, cette date est affichée lorsque le pointeur de la souris est positionné sur le titre du servicefreedomsvc étant le code HTML affiché dans le corps sur service.Le portail gère le formulaire HTML du service et lors de l'affichage poste l'URL http://mon.serveur.com/scontact.php et poste le paramêtre search valorisé par la saisie de l'utilisateur.
Le code PHP scontact.php peut ressembler à ceci :
// récupération de la saisie utilisateur $s = $HTTP_POST_VAR["search"]; if ($s!="") { // ... recherche et mise en forme du résultat }
L'URL de paramétrage utilisateur retourne le code suivant (elle permet de demander un affichage plus ou moins long des informations conernant le(s) contact(s) trouvé(s)) :
<select name="view"> <option value="0">résumé <option value="1">complète </select>
Les paramètres utilisateurs (mémorisé par le serveur) sont aussi postés lors de l'affichage du service. Le code PHP scontact.php peut ressembler à ceci :
// récupération du paramètre utilisateur $view = $HTTP_POST_VAR["view"]; // récupération de la saisie utilisateur $s = $HTTP_POST_VAR["search"]; if ($s!="") { // ... recherche et mise en forme du résultat }
Les services interactifs mettent en oeuvre des formulaires HTML. Le formulaire et sa soumission vers le serveur sont gérés par la portail. Pour cela, certaines contraintes d'écriture du code HTML du service sont à observer.
<form>;<input>, <select> … doivent posséder un attribut name;