website logo
Auteur
avatar
phr

Forum » » Anomalies core NPDS » » [Solved] - Module sform


Posté : 22 avr. 2015 à 18:47 icone du post

Message de jpb à dev


Pour sform

donc apres cogitation
- l'encadrement du couple label|input peut se faire par un add extra dans les formulaire concernés.(oui ??).=> donc réglé
- pour l'intervention sur chacun des éléments le mieux à mon avis c'est de modifier les fonctions add de sform et donc les cases
en restructurant les arrays comme si on travaillait dans le DOM... (dans l'exemple je ne l'ai pas fait pour label car on a pas besoin de modifier grand chose mais la perfection serait de la faire aussi..)

en ayant cette structure on utilise directement clef et valeur du tableau pour construire le xhtml5555 ....a for each dans les tableau attributs et on rempli notre balise input ou label

je sais que ca fait un fastidieux travail (mais on a fait grandement pire) mais je pense que ca vaut vraiment le coup


Par exemple pour la fonction addfield :
*/

$array = array(
'en'=>$en,
"classlabel" => "uneclass deuxclass",
"input" => array(
'attributs_input' => array(
'name'=>$name,
'type'=>$type,
'value'=>$value,
'size'=>$size,
'diviseur'=>$diviseur,// on pourra s'en passer ...?..!
'obligation'=>$obligation,//ici on devrait avoir 'required'=>'required'
'ctrl'=>$ctrl,//ce devrait etre l'affaire d'une lib js ...
'class' => "foo foo foo",
'placeholder' => "foo",
'data' => "foo",
'step' => 'foo'
),
'tag_input'=> array(
'tag'=>'div',
'attributs_tag' => array(
'id'=>'foo',
'class'=>'foo foo foo'
)
)
)
);




/*..... ce qui donnerait dans le traitement des cases quelque chose comme ca : */

.....
if (array_key_exists('type',$this->form_fields[$i])) {
switch($this->form_fields[$i]['input']['attributs_input']['type']){
case 'text':
$atin=' ';
foreach ($this->form_fields[$i]['input']['attributs_input'] as $key => $value) {
$atin.= ' '.$key.'="'.$value.'" ';
}
$atla=' ';
foreach ($this->form_fields[$i]['input']['tag_input']['attributs_tag'] as $key => $value) {
$atla.= ' '.$key.'="'.$value.'" ';
}

........ bla... bla

$str.='';
$str.='<'.$this->form_fields[$i]['input']['tag_input']['tag'].$atla.'>';
$str.='';
$str.= 'form_fields[$i]['input']['tag_input']['tag'].'>';
......
........ bla... bla

break;


/* et dans les formulaire la structure qui va bien $m->add_field(.....) ....

Qu'en penses tu ???

jp




Cet article provient de Labo NPDS 2015-2024
https://labo.infocapagde.com/viewtopic.php?topic=5&forum=9