6 La navigation dans le manuel de Kentika est réservée aux utilisateurs identifiés
Composants - Aller plus loin
Les composants permettent d'adapter son portail en fonction des besoins. Des composants par défaut sont fournis pour facilement adapter le portail, et il est possible de créer ses propres composants.
Il est possible d'aller encore plus loin avec les composants.
Plusieurs zones de composants ont été prévues dans Kentika pour pallier à d'éventuels besoin, mais aucun composant n'a été prévu, autre que le contenu par défaut. Dans ce cas, ces zones n'apparaissent pas dans le composeur de contenu. Créer un composant pour une de ces zones permet d'afficher la zone dans le composeur de contenu, et ainsi de le sélectionner.
Ces zones sont les suivantes :
- TopGeneric_Head : Appelée juste avant la fermeture de la balise <head> sur la plupart des pages du portail. Permet d'appeler des pages CSS ou d'effectuer des scripts javascript dans des composants. Zone vide par défaut.
- ListRecord_Insert_Fields : Contenu de l'insert en haut de liste pour les listes croisées. (Voir capture d'écran plus bas). Appelle l'affichage GED et le contenu par défaut de la zone Record_Fields par défaut.
- record_Top : Appelée juste avant le titre, en haut de la page "notice". Permet d'appeler des scripts avant affichage de la notice.
- settings_user et settings_admin_menu1 : Appelées dans la page settings.htm. Permettent d'ajouter des options de paramétrage pour les utilisateurs ou les administrateurs. settings_user contient par défaut les trois options par défaut, tandis que settings_admin_menu1 est vide (les options par défaut ne peuvent être désactivées).
Encadré en rouge, la zone du portail correspondant à la zone "ListRecord_Insert_Fields"
1 : settings_user, 2 : settings_admin_menu1
La manière dont Kentika gère les composants en interne va être développée rapidement ici, afin de permettre une utilisation poussée de la technologie des composants introduite avec Atomic.
Les zones sont définies dans les ressources Web, grâce à un appel spécifique :
AWEB_$MA_ZONE
où "MA_ZONE" est le nom de la zone définie.
Lorsque, lors du traitement d'une ressource, Kentika rencontre ce type d'appel, il va chercher dans les tableaux définis par le composeur de menu les différents composants sélectionnés, en testant à chaque fois les conditions imposées aux composants. Pour chaque composant qui répond aux conditions courantes, la ressource correspondante est calculée et insérée à la manière d'un appel classique à une ressource AWEB.
Si aucun composant ne correspond, Kentika va chercher la ressource dont le nom est le même que celui de la zone en question.
Exemple : En reprenant l'exemple de la zone AWEB_$MA_ZONE, si aucun composant ne correspond à la situation présente, Kentika insert le composant "AWEB_MA_ZONE".
Il est donc assez facile d'introduire de nouvelles zones dans les ressources si besoin.
Attention : Il est en théorie possible d'introduire des zones de composants au sein de composants, créant ainsi plusieurs niveaux de composants imbriqués. Cette possibilité n'a pas été testée de manière extensive, et doit donc être adoptée avec prudence.
Note : Le commentaire de la ressource par défaut d'une zone contient la balise "[default]". Cette balise n'a aucun impact sur le fonctionnement des composants, elle est présente à titre indicatif.
Finalement, le fonctionnement du composeur de contenu sera abordé rapidement :
Lors de l'affichage du composeur de menu/de contenu, Kentika va chercher toutes les ressources ayant la balise "[component:@]" dans son commentaire, et alimente un tableau avec toutes les zones, au fur et à mesure qu'elles sont rencontrées dans des composants. (Un ordre de base est imposé pour certaines des zones génériques.)
La zone de commentaire du composeur de contenu affiche le contenu de la ressource par défaut lors de la sélection d'une zone (la ressource ayant le nom de la zone), et le contenu de la zone de commentaire de la ressource lors de la sélection d'un composant.
Powered by KENTIKA Atomic - © Kentika 2025 tous droits réservés - Mentions légales