Bonjour,
au sein du formHelper du module form, la méthode suivante empêche la création de champs dans un module spé :
/**
* @param form_persistentdocument_field $field
* @param string $value
*/
public static function fromFieldDocument($field, $value = '')
{
if ($field instanceof form_persistentdocument_field)
{
$type = ucfirst(substr(get_class($field), strlen('form_persistentdocument_')));
$methodName = 'from'.$type.'FieldDocument';
if (f_util_ClassUtils::methodExists(get_class(), $methodName))
{
return self::$methodName($field, $value);
}
}
return "Unknown field type: ".get_class($field, $value);
}
En effet, la ligne :
$type = ucfirst(substr(get_class($field), strlen('form_persistentdocument_')));
conditionne la poursuite du code au fait que le model du document appartienne au module form. Or si j'ai dans un module spé créé des champs spécifique qui étendent un type de champs particulier du module form sans l'injecter, on est coincé, et obligé d'utiliser l'AOP pour arriver à nos fins...
c'est dommage
Développe sous linux Ubuntu 12.04 LTS Desktop
Projet ecommerce core 3.6.7