Bonjour,
# Les données
J'ai un site plone.
Toutes les pages utilisent une master template.
La master template définie un tiroir (slot), avec quelque chose comme
<metal:bodytext metal:define-slot="main" tal:content="nothing"> </metal:bodytext>
Les pages qui utilisent cette master_template.pt remplisse alors le slot avec quelque chose comme :
<div id="contentEmployeurs" metal:fill-slot="main" tal:define="errors options/state/getErrors;">
contenu...
</div>
# Ce que je veux faire
Je veux que chaque page puisse faire ses tâches préliminaires javascript lors du body onload.
# Le soucis qui se pose
Les pages ne définissent pas elles-même le body, elles utilisent la main_template.pt qui elle définie le body.
Donc si je change le onload sur la main_template.pt, il sera le même pour toutes les pages...
# La question :
Comment faire pour avoir un traitement javascript spécifique à chaque page lors du onload ?
# Idées :
Je me demandais s'il était possible de faire :
dans la master_template.pt, et que le code de foo soit définie dans un fichier javascript acceptant du code metal. Ainsi, chaque page pourra remplir les slot à sa guise, le code de foo sera différent pour chaque page.
Ou peut être l'idée suivante :
<body tal:attributes="onload options/fonctionjs">
En faisant en sorte que la page fille qui appelle la main_template lui passe des options ???
Quelqu'un a-t-il déjà eu à faire un truc pareil ? avez-vous des idées à me proposer ?
En vous remerciant par avance
Yassine.