Changeset 49141 in spip-zone
- Timestamp:
- Jun 28, 2011, 8:24:51 PM (10 years ago)
- Location:
- _plugins_/champs_extras
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/champs_extras/core/trunk/cextras_pipelines.php
r49119 r49141 22 22 } 23 23 24 25 // Calcule des elements pour le contexte de compilation26 // des squelettes de champs extras27 // en fonction des parametres donnes dans la classe ChampExtra28 function cextras_creer_contexte($c, $contexte_flux, $prefixe='') {29 $contexte = array();30 $nom_champ = $prefixe . $c->champ;31 $contexte['champ_extra'] = $nom_champ;32 $contexte['label_extra'] = _T($c->label);33 $contexte['precisions_extra'] = _T($c->precisions);34 if (isset($c->saisie_parametres['explication']) and $c->saisie_parametres['explication'])35 $contexte['precisions_extra'] = _T($c->saisie_parametres['explication']);36 $contexte['obligatoire_extra'] = $c->obligatoire ? 'obligatoire' : '';37 $contexte['verifier_extra'] = $c->verifier;38 $contexte['verifier_options_extra'] = $c->verifier_options;39 $contexte['valeur_extra'] = $contexte_flux[$nom_champ];40 $contexte['enum_extra'] = $c->enum;41 $contexte['class_extra'] = $c->saisie_parametres['class']; // class CSS sur les champs (input, textarea, ...)42 // ajouter 'erreur_extra' dans le contexte s'il y a une erreur sur le champ43 if (isset($contexte_flux['erreurs'])44 and is_array($contexte_flux['erreurs'])45 and array_key_exists($nom_champ, $contexte_flux['erreurs'])) {46 $contexte['erreur_extra'] = $contexte_flux['erreurs'][$nom_champ];47 }48 49 return array_merge($contexte_flux, $contexte);50 }51 24 52 25 … … 261 234 $contexte = cextra_quete_valeurs_extras($extras, $flux['args']['type'], $flux['args']['id_objet']); 262 235 $contexte = array_merge($flux['args']['contexte'], $contexte); 236 237 $saisies = $valeurs = array(); 238 239 // on cree un tableau de saisie a partir de la liste des 240 // champs extras dont on peut voir l'affichage 263 241 foreach ($extras as $c) { 264 242 … … 271 249 'contexte' => $contexte))) 272 250 { 273 274 $contexte = cextras_creer_contexte($c, $contexte); 275 276 // calculer le bon squelette et l'ajouter 277 if (!find_in_path(($f = 'saisies-vues/' . $c->saisie) . '.html')) { 278 $flux['data'] .= recuperer_fond('prive/squelettes/saisie_vue_absente', array( 279 'saisie' => $c->saisie, 280 'valeur' => $contexte[$c->champ], 281 )); 282 extras_log("Vue de saisie non trouvee pour $c->saisie", true); 283 } else { 284 $contexte['valeur'] = $contexte[$c->champ]; 285 // ajouter les listes d'éléments possibles 286 if (isset($c->saisie_parametres['datas']) and $c->saisie_parametres['datas']) { 287 $contexte['datas'] = cextras_data_array($c->saisie_parametres['datas']); 288 } 289 290 // lorsqu'on a 'datas', c'est qu'on est dans une liste de choix. 291 // Champs Extra les stocke separes par des virgule. 292 if ($contexte['datas']) { 293 // n'appliquer que si la saisie en a besoin ! 294 $desc_saisies = saisies_lister_par_nom( saisies_charger_infos($c->saisie) ); 295 if ($desc_saisies['datas']) { 296 $contexte['valeur'] = explode(',', $contexte['valeur']); 297 } 298 } 299 300 $extra = recuperer_fond($f, $contexte); 301 $extra = '<div class="champ ' . $c->champ.'"> 302 <div class="label_extra">' . _T($c->label) . '</div>' . $extra . '</div>'; 303 304 $flux['data'] .= "\n".$extra; 305 } 306 } 307 } 251 $options = $c->saisie_parametres; 252 $options['nom'] = $c-> champ; 253 $saisies[] = array('saisie' => $c->saisie, 'options' => $options); 254 # saisies_charger_infos($c->saisie); 255 256 $valeurs[$c->champ] = $contexte[$c->champ]; 257 258 } 259 } 260 261 $flux['data'] .= recuperer_fond('inclure/voir_saisies', array_merge($contexte, array( 262 'saisies' => $saisies, 263 'valeurs' => $valeurs, 264 ))); 265 308 266 } 309 267 return $flux; -
_plugins_/champs_extras/interface/trunk/formulaires/editer_champ_extra.html
r49131 r49141 8 8 9 9 #SET{disable,#ENV{new}|?{'',oui}} 10 <fieldset> 11 <h3 class='legend'><:iextras:legend_declaration:></h3> 12 <ul> 10 <ul> 11 <li class='fieldset'> 12 <fieldset> 13 <h3 class='legend'><:iextras:legend_declaration:></h3> 14 <ul> 15 [(#SAISIE{input,champ, 16 label=<:iextras:label_champ:>, 17 explication=<:iextras:caracteres_autorises_champ:>, 18 obligatoire=oui, 19 disable_avec_post=#GET{disable}})] 20 21 [(#SAISIE{selection,table, 22 label=<:iextras:label_table:>, 23 obligatoire=oui, 24 disable_avec_post=#GET{disable}, 25 datas=[(#VAL|cextras_objets_valides_boucle_pour)]})] 26 27 [(#SAISIE{selection,saisie, 28 label=<:iextras:label_saisie:>, 29 obligatoire=oui, 30 explication=<:iextras:precisions_pour_saisie:>, 31 datas=[(#VAL|cextras_types_formulaires)]})] 32 </ul> 33 </fieldset> 34 </li> 13 35 14 [(#SAISIE{input,champ, 15 label=<:iextras:label_champ:>, 16 explication=<:iextras:caracteres_autorises_champ:>, 17 obligatoire=oui, 18 disable_avec_post=#GET{disable}})] 19 20 [(#SAISIE{selection,table, 21 label=<:iextras:label_table:>, 22 obligatoire=oui, 23 disable_avec_post=#GET{disable}, 24 datas=[(#VAL|cextras_objets_valides_boucle_pour)]})] 25 [(#REM) 26 [(#SAISIE{input,label, 27 label=<:iextras:label_label:>, 28 explication=<:iextras:precisions_pour_label:>, 29 obligatoire=oui})] 30 ] 31 32 [(#SAISIE{selection,saisie, 33 label=<:iextras:label_saisie:>, 34 obligatoire=oui, 35 explication=<:iextras:precisions_pour_saisie:>, 36 datas=[(#VAL|cextras_types_formulaires)]})] 37 38 </ul> 39 [(#GENERER_SAISIES{#ENV{_saisies_defs}})] 40 41 [(#REM) 42 #SET{defaut,",-vide- 43 1,valeur 1 44 2,valeur 2"} 45 [(#SAISIE{textarea,datas, 46 label=<:iextras:label_datas:>, 47 explication=<:iextras:precisions_pour_datas:>, 48 rows=3, 49 defaut=#GET{defaut}})] 50 51 </ul> 52 </fieldset> 53 54 <fieldset> 55 <h3 class='legend'><:iextras:legend_options_techniques:></h3> 56 <ul> 57 [(#SAISIE{oui_non,obligatoire, 58 label=<:iextras:label_obligatoire:>, 59 obligatoire=oui})] 60 ] 61 62 36 [(#GENERER_SAISIES{#ENV{_saisies_defs}})] 37 63 38 <li class='fieldset'> 64 39 <fieldset> … … 82 57 disable_avec_post=#GET{disable}})] 83 58 </ul> 84 < fieldset>59 </fieldset> 85 60 </li> 61 </ul> 86 62 87 [(#REM)88 89 90 </ul>91 </fieldset>92 93 <fieldset>94 <h3 class='legend'><:iextras:legend_options_saisies:></h3>95 <ul>96 [(#SAISIE{input,explication,97 label=<:iextras:label_explication:>,98 explication=<:iextras:precisions_pour_explication:>})]99 100 101 [(#SAISIE{input,attention,102 label=<:iextras:label_attention:>,103 explication=<:iextras:precisions_pour_attention:>})]104 105 [(#SAISIE{input,li_class,106 label=<:iextras:label_li_class:>,107 explication=<:iextras:precisions_pour_li_class:>})]108 109 [(#SAISIE{input,class,110 label=<:iextras:label_class:>,111 explication=<:iextras:precisions_pour_class:>})]112 113 </ul>114 </fieldset>115 ]116 63 [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ] 117 64 <!--extra-->
Note: See TracChangeset
for help on using the changeset viewer.