Le Widget facile (4/4) (MàJ)

closeUne année au moins est passée depuis la publication de ce billet qui peut donc contenir des informations un peu datées.

Résumé des épisodes précédents : nous avons défini un Widget et entamé la page HTML qui va le “porter”, puis nous avons récupéré le code source du formulaire que nous voulons widgetiser.

Si nous déposons notre page HTML sur notre serveur, et allons la lire comme un simple surfeur, oh joie, oh bonheur, nous voyons un widget qui contient TOUT le formulaire de la page de recher OAIster. Autrement dit, pour les plus maximalistes, le boulot est terminé.

Mais comme nous aimons les formulaires légers, avec un champ unique, nous allons nettoyer le code de notre page pour simplifier ledit formulaire.

Là, je ne peux pas m’étendre sur toutes les subtilités, ce n’est pas le but ici, et j’en suis incapable (ces histoires de widget, c’est beaucoup de bricolage aussi… Mais chuuuut). Et puis il faut malgré tout que vous bossiez un peu par vous-même : le vélo ne s’apprend pas dans les livres. Deux précisions pour vous aider, quand même :

  • les balises contenant <input (je coupe) type=”hidden”/> sont à conserver : elles passent des paramètres cachés, mais en général essentiels ;
  • le formulaire final doit être un formulaire standard, respectant les bases HTML.

Dans l’exemple sur lequel nous travaillons, après avoir un peu tâtonné, j’obtiens ceci, pour le formulaire :

<form target=”_blank” action=”http://quod.lib.umich.edu/cgi/b/bib/bib-idx” name=”simple_form” method=”post”/>
<input name=”type” value=”boolean” type=”hidden”/>
<input name=”size” value=”10″ type=”hidden”/>
<input id=”rgn1″ name=”rgn1″ value=”entire record” type=”hidden”/>
<input id=”rgn2″ name=”rgn2″ value=”entire record” type=”hidden”/>
<input id=”rgn3″ name=”rgn3″ value=”entire record” type=”hidden”/>
<input name=”c” value=”oaister” type=”hidden”/>
<input name=”sid” value=”0f466500e44ba2a0697b87b4e29062ea” type=”hidden”/>
<input name=”q1″ class=”saisie-texte” value=”Saisir votre recherche” onFocus=”value=’ ‘” size=”45″ maxlength=”255″ type=”text”/>
<input name=”submit” id=”submit” value=”Rechercher” type=”submit”/>
</form>

On colle tout ça entre les balises body, on dépose sur un serveur et voilà, on a fait un widget pour OAIster que les vrais fainéants trouveront tout chaud ici (avec un petite erreur apparemment si j’en crois les commentaires, d’où : un bon point à celui qui trouve l’erreur)

La méthode est toujours la même. A vous de jouer… C’est en widgetisant que l’on devient widgetiseur.

0 thoughts on “Le Widget facile (4/4) (MàJ)

  1. C’est bien expliqué, Monsieur le Professeur, mais comme je suis dans les nuages je ne comprends pas à quoi sert ce biduldget. Je sens que j’vais me faire virer

  2. @ l’arc-en-ciel : eh bien mon petit arc-en-ciel, ce widget sert à avoir un module de recherche pour OAIster, moteur spécialisé en ressources Open Access, qui s’installe dans ton univers Netvibes ou iGoogle, tout simplement.

  3. @davidolib : ahhh, un TBP (Très Bon Point) pour toi. J’ai corrigé mon source. Pour iGoogle, il me semble qu’il y a toujours un temps de latence après correctif, mais c’est une impression non scientifique.
    En tous les cas, merci : preuve est faite de mon incompétence.

  4. Ayé, ça marche. J’ai juste fait un copier-coller depuis la doc Netvibes de l’entête du document. Ne me demande par pourquoi mais

    ne fonctionne pas mais

    avec un espace à la fin fonctionne
    Mon éditeur HTML me le signale aussi en erreur s’il n’y a pas d’espace

  5. Bon, wordpress ne veut pas que je colle du code…
    Pour résoudre le problème pour iGoogle, il suffit d’ajouter un espace à la fin de la balise ouvrante html

  6. A mon avis, le paramètre sid ressemble trop à un identifiant de session unique pour que ça n’en soit pas un (value=”0f466500e44ba2a0697b87b4e29062ea”). Donc tu devrais pouvoir le virer.
    Par ailleurs, grâce à ce site, je sais qu’OAIster n’est interdit qu’à moi. Donc je peux rien tester du tout.
    Sinon, c’est plus sympa dans la balise de mettre la valeur method=”get” au lieu de method=”post” : ainsi la requête se retrouve dans l’URL (comme lors d’une recherche Google), et on peut pointer vers une liste de résultats si on en a besoin.

  7. @Laurent : je n’en sais rien, jamais essayé avec ce genre de config. Mais teste, tu verras bien (non non, je ne le ferai pas pour toi 😉 ). Au débotté, je dirais que ça doit marcher…

  8. @davidolib : que demande le peuple ? Des widgets ?…. Merci David ! Ca montre que le principe général marche aussi pour les bidules en javascript 🙂

  9. @dbourrion J’ai essayé, sans succès. L’opac archimed n’est pas très… ouvert.

    @davidolib Ça m’intéresse! Cependant, ton widget pour l’instant ne semble pas transmettre les termes qu’on lui soumet à l’opac.

  10. Excellent ! Merci !

    Prochaine étape : proposer un code à copier/coller pour proposer aux visiteurs d’intégrer notre widget directement sur leur propre site/blog.

    Je vais tenter avec une iframe mais je me demande si c’est le mieux.

Leave a Reply

Your email address will not be published. Required fields are marked *