Changeset 100963 in spip-zone for _plugins_/champs_extras_core/trunk


Ignore:
Timestamp:
Dec 9, 2016, 4:54:42 PM (22 months ago)
Author:
marcimat@…
Message:

Finalisation du crayonnage des fieldset.

  • Un fichier de vue spécifique doit être utilisé pour retrouver le fieldset qui a modifié les champs que l'on reçoit. Retrouver le fieldset est un peu casse pied, mais ça se fait.
  • La classe de crayon pour le fieldset est mise sur le conteneur, pas sur son titre, sinon au retour Crayons ne remplace que le titre par le résultat de la vue, et non le titre et ses champs.
Location:
_plugins_/champs_extras_core/trunk
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/champs_extras_core/trunk/controleurs/champs_extras_fieldset.php

    r100961 r100963  
    4343
    4444        $n = new Crayon(
    45                 $type . '-champs_extras-' . $id,
     45                $type . '-champs_extras_fieldset-' . $id,
    4646                $valeurs,
    4747                array('controleur' => 'controleurs/champs_extras')
  • _plugins_/champs_extras_core/trunk/inc/cextras.php

    r100948 r100963  
    9595 *
    9696 * On complète (ou crée) l'option 'vue_class' avec la classe pour crayonner.
     97 * On utilise 'conteneur_class' pour les fieldset.
    9798 *
    9899 * @param array $saisies
     
    104105        if (function_exists('classe_boucle_crayon')) {
    105106                foreach ($saisies as $cle => $saisie) {
    106                         if (!isset($saisie['options']['vue_class'])) {
    107                                 $saisie['options']['vue_class'] = '';
    108                         }
    109                         $saisie['options']['vue_class'] = trim(
    110                                 $saisie['options']['vue_class']
     107                        $opt_class = 'vue_class';
     108                        if ($saisie['saisie'] == 'fieldset') {
     109                                $opt_class = 'conteneur_class';
     110                        }
     111                        if (!isset($saisie['options'][$opt_class])) {
     112                                $saisie['options'][$opt_class] = '';
     113                        }
     114                        $saisie['options'][$opt_class] = trim(
     115                                $saisie['options'][$opt_class]
    111116                                . ' '
    112117                                . classe_boucle_crayon($type, $saisie['options']['nom'], $id)
  • _plugins_/champs_extras_core/trunk/paquet.xml

    r100961 r100963  
    22        prefix="cextras"
    33        categorie="outil"
    4         version="3.11.1"
     4        version="3.11.2"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.1.*]"
     
    2727        <pipeline nom="revisions_chercher_label" inclure="cextras_pipelines.php" />
    2828
    29         <necessite nom="saisies" compatibilite="[2.11.0;]" />
     29        <necessite nom="saisies" compatibilite="[2.11.2;]" />
    3030        <utilise nom="verifier" compatibilite="[0.1.12;]" />
    31         <utilise nom="crayons" compatibilite="[1.26.0;]" />
     31        <utilise nom="crayons" compatibilite="[1.26.1;]" />
    3232
    3333</paquet>
  • _plugins_/champs_extras_core/trunk/vues/champs_extras.php

    r100944 r100963  
    22
    33/**
     4 * Retourner le code HTML de la vue d'un champ (ou plusieurs) champs extras pour Crayons
     5 *
     6 * @uses champs_extras_objet()
     7 * @uses champs_extras_saisies_lister_avec_sql()
     8 * @uses cextras_appliquer_traitements_saisies()
     9 * @uses cextras_preparer_vue()
     10 *
    411 * @param string $type
    512 *     Type d'objet
     
    2633
    2734        // Réduire l'affichage au minimum s'il n'y a qu'un champ à afficher
    28         foreach ($saisies as $champ => $saisie) {
    29                 $saisies[$champ]['options']['valeur_uniquement'] = (count($valeurs) <= 1 ? 'oui' : '');
    30                 $saisies[$champ]['options']['sans_reponse'] = '';
    31         }
     35        $saisies = cextras_preparer_vue($saisies, count($valeurs) <= 1);
    3236
    3337        $contexte = array(
     
    3842        return recuperer_fond('inclure/voir_saisies', $contexte);
    3943}
     44
     45/**
     46 * Préparer le tableau de saisie pour l'affichage
     47 *
     48 * @param array $saisies
     49 * @param bool $affichage_reduit
     50 * @return array
     51 */
     52function cextras_preparer_vue($saisies, $affichage_reduit = false){
     53        foreach ($saisies as $cle => $saisie) {
     54                $saisies[$cle]['options']['valeur_uniquement'] = ($affichage_reduit ? 'oui' : '');
     55                $saisies[$cle]['options']['sans_reponse'] = '';
     56                if (!empty($saisie['saisies'])) {
     57                        $saisies[$cle]['saisies'] = cextras_preparer_vue($saisie['saisies'], $affichage_reduit);
     58                }
     59        }
     60        return $saisies;
     61}
Note: See TracChangeset for help on using the changeset viewer.