mercredi, juillet 26, 2006

AJAX - Rico Accordion : Les vues catégorisées

Le classe accordion de RICO offre une solution très simple de représentation des vues catégorisées sous forme d'accordéon.


La structure des données à représenter doit être sous le format suivant :
<div id="un_identifiant_de_bloc_pour_rico">
<div>
<div>Titre de la catégorie</div>
<div>Contenu du panneau</div>
</div>
...
</div>
Préparation de la vue Notes

La vue Notes pourra être définie ainsi :
  • 1ère colonne : Catégorisée avec pour formule
    "</div></div><div><div>" + champ_categorie + "</div>";
  • colonnes suivantes :
    "<span>" + valeur_affichée + "</span>"
Le <span> permet juste de séparer les valeurs affichées dans cet exemple. On pourra le remplacer par n'importe quelle autre balise.
Il faut aussi cocher "Traiter contenu comme code HTML" depuis le cinquième onglet des propriétés de la vue.

Préparation du masque de vue
Le masque associée à la vue précédente devra porter le nom $$ViewTemplate For nom_de_la_vue. Même si on peut coder le masque entièrement en HTML en cochant l'option Type de contenu: HTML" depuis le second onglet des propriétés du masque je vais porfiter de l'occasion pour faire sans dans cet exemple.

Pour commencer il faut inclure les librairies Javascript. Celà se fait normalement entre les balese HEAD de la page HTML. L'équivalent Lotus Notes est la référence "Contenu de titre HTML" présent depuis le panneau présenté sous le masque. Il fautindiquer comme formule :
{<script src="prototype-1.4.0.js" type="text/javascript"></script>
<script src="rico.js" type="text/javascript"></script>}
Attention au chemin des libraires Javascript.

Il faut ensuite instancier la casse accordion en lui spécifiant l'ID de l'élément à transformé. Ceci se fait généralement à l'évènement OnLoad de la page. Toujours depuis le panneau de référence présent sous le masque, il faut cliquer sur "OnLoad" et indiquer le code Javascript :
new Rico.Accordion( $('identifiant_bloc') );

Enfin, dans le masque, il reste à intégrer la vue en ajoutant la déclaration du bloc accordéon comme ceci :
<div id="identifiant_code">
<div><div>
insertion de la vue intégrée ici
</div></div>
</div>
Ne pas oublier de déclarer le code HTML insérer comme HTML relais en le sélectionnant puis en cliquant sur l'option du menu Texte\HTML Relais.

Un exemple en ligne permet de visualiser le résultat en présentant les articles de ce blog par thème. De plus vous pourrez trouver d'autres exemples de l'utilisation de cette classe sur le blog Malaisien (mais en anglais) Lotus Notes on Web 2.0.

5 Commentaires:

Anonymous Anonyme dit...

Jolie démonstration, vraiment pas mal du tout ...
Les paramètres d'affichage sont des valeurs de style, un peu dommage, passez une petite classe-css aurait été vraiment plus "ouvert".
Il va falloir que je progresse un peu en js pour mettre la main à la pâte.

lundi, août 07, 2006 1:53:00 PM  
Blogger domlike dit...

Effectivement, belle démonstration.

J'ai proposé et implémenté cette vue chez un de mes clients et en pratique ben...c'est pas pratique du tout !

Si on a trop de documents dans une catégorie les autres catégories sont virées à 10 km en dessous. Et si je me souvient bien , il y a un problème d'ergonomie assez bizarre avec la barre de défilement verticale.

Bref, de l'Ajax comme on (je...) n'en veux pas (du joli mais pas du pratique)

mardi, août 08, 2006 8:43:00 AM  
Blogger Philippe GAUVIN dit...

En effet, l'affichage d'une vue de travail avec beaucoup de documents n'est pas vraiment pratique avec cez type de représentation.
Je privilégierai plutôt son utilisation pour la navigation, type panneaux coulissants d'Outlook.

mardi, août 08, 2006 9:42:00 AM  
Anonymous Anonyme dit...

Voici que vous pouvez trouver une version améliorée:

http://dbajax.sourceforge.net/index.html

vendredi, décembre 08, 2006 12:10:00 AM  
Anonymous Anonyme dit...

Mais arretez avec AJAX !! c est pas ca AJAX, pourquoi tout le monde hallucine sur du javascript/DHTML vieux de 10 ans ??? je comprends pas la !

(AJAX = requete HTTP client serveur sans post back)

mardi, mars 13, 2007 1:52:00 PM  

Enregistrer un commentaire

Lien vers ce message:

Créer un lien

<< Home

Rechercher sur ce blog
Effacer résultat