13.6.2.19 Doc::preEdition()
[Hameçon]hook] (ou hook) utilisé par l'action d'affichage du formulaire html du
document FDL:OPENDOC
. Elle est appelée avant la composition du
template.
13.6.2.19.1 Description
void preEdition ( )
Cette méthode permet de réaliser des opérations afin d'ajuster l'affichage du formulaire de document. Ces opérations peuvent être :
- ajout d'un fichier javascript ou css,
- modification des visibilités d'attributs,
- modification d'une propriété d'attributs,
- etc.
13.6.2.19.1.1 Avertissements
À la différence de Doc::preRefresh()
qui est appelé lors de
consultation et lors de l'édition, cette méthode n'est appelée que lors de
l'édition.
13.6.2.19.2 Valeur de retour
Aucune.
13.6.2.19.3 Erreurs / Exceptions
Aucune.
13.6.2.19.4 Historique
Aucun.
13.6.2.19.5 Exemples
13.6.2.19.5.1 Ajout d'asset ccs et js
Ajout d'une css
et d'un fichier JavaScript
spécifique si c'est un formulaire de
création de document.
class MyFamily extends \Dcp\Family\Document { public function preEdition() { if ($this->getProperty("initid") == 0) { global $action; $action->parent->addJsRef("MYAPP/Layout/mySpecialCreate.js"); $action->parent->addCssRef("MYAPP/Layout/mySpecialCreate.css"); } }
Voir addjsRef
et addCssRef
pour l'ajout d'asset.
13.6.2.19.5.2 Modification de visibilité et caractère obligatoire
Rendre obligatoire l'attribut my_level
à la création.
class MyFamily extends \Dcp\Family\Document { public function preEdition() { if ($this->getProperty("initid") == 0) { $myAttribute=$this->getAttribute(\Dcp\AttributeIdentifiers\MyFamily::my_level); $myAttribute->setVisibility('W'); $myAttribute->setNeeded(true); } }
Attention, cela impacte juste le formulaire et non la caractère réellement obligatoire de l'attribut. Ce caractère obligatoire peut aussi être maîtrisé par les contrôles de vue.
13.6.2.19.6 Notes
Aucune.