Projet

Général

Profil

RequiredEtDisabled » Historique » Version 1

Version 1/6 - Suivant » - Version actuelle
Emmanuel GARETTE, 30/11/2012 10:15


RequiredEtDisabled

Terminologie

Les termes employés ici sont les termes Tiramisu pour plus de clareté.

Le hidden_if_(not_)in de Créole s'appellera ici disabled_if_(not_in)in.

Un disabled_if_in place un requires sur la variable de type : nom de la variable à tester, la valeur attendue sur la variable à tester, et l'action correspondante.

Description des cas d'utilisation

  • Cas 1 :

Requires sur adresse_ip_proxy : si activer_proxy est à non la variable est disabled.

  • Cas 2 :

Requires sur activer_phpmyadmin : si activer_mysql est à non la variable est disabled.
Requires sur adresse_ip_phpmyadmin : si activer_phpmyadmin est à non la variable est disabled.

Problématique

Dans Créole on utilise deux types de requires :

  • disabled_if_in : pour désactiver une variable ;
  • freeze_if_in : sert à la variable calculée pour passer une variable en mode automatique sans possibilité de changer la valeur.

Le problème se pose sur le cas 2. Si activer_phpmyadmin est désactivé parce que activer_mysql est à non, on ne peut pas faire le requires pour adresse_ip_phpmyadmin.

Solutions

Proposition 1 :

Faire une liste de propriété "transitive" lors des requires. Cela veut dire que si on veut déterminé si une variable est disabled, si la variable à tester est à disabled, la variable est disabled aussi.

Par contre, si la variable à une autre propriété, elle peut faire un raise.