Changeset 83524 in spip-zone


Ignore:
Timestamp:
Jul 1, 2014, 2:45:28 PM (5 years ago)
Author:
rastapopoulos@…
Message:

Corriger un bug de "afficher_si", rendu visible par Cédric avec [80506] (je dis "rendu visible" car pas "provoqué", c'est le JS qui ne va pas).

Comme il y avait plusieurs inputs avec le même name, le JS de sélection "[name=truc]" ne prenait pas la bonne valeur et la fonction val() donc renvoyait toujours la chaîne vide.

On sélectionne spécifiquement le ".checkbox[name=truc]" et ça remarche.

Location:
_plugins_/saisies
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/saisies/inc/saisies_afficher.php

    r77561 r83524  
    294294        $code .= '(function($){';
    295295        $code .= '$(document).ready(function(){chargement=true;';
    296                 $code .= 'verifier_saisies_'.$id_form.' = function(form){';
     296                $code .= 'verifier_saisies_'.$id_form." = function(form){\n";
    297297                                foreach ($saisies as $saisie) {
    298298                                        // on utilise comme selecteur l'identifiant de saisie en priorite s'il est connu
     
    312312                                                                $class_li = 'editer_'.$saisie['options']['nom'];
    313313                                                }
    314                                                 $condition = $saisie['options']['afficher_si']."\n".$saisie['options']['afficher_si_remplissage'];
     314                                                $condition = join("\n", array_filter(array($saisie['options']['afficher_si'], $saisie['options']['afficher_si_remplissage'])));
    315315                                                // retrouver l'identifiant
    316316                                                $identifiant = '';
     
    341341                                                                        break;
    342342                                                                case 'case':
    343                                                                         $condition = preg_replace('#@'.preg_quote($nom).'@#U', '($(form).find("[name=\''.$nom.'\']").is(":checked") ? $(form).find("[name=\''.$nom.'\']").val() : "")', $condition);
     343                                                                        $condition = preg_replace('#@'.preg_quote($nom).'@#U', '($(form).find(".checkbox[name=\''.$nom.'\']").is(":checked") ? $(form).find(".checkbox[name=\''.$nom.'\']").val() : "")', $condition);
    344344                                                                        break;
    345345                                                                default:
     
    352352                                                        $sel = "li.$class_li";
    353353                                                }
    354                                                 $code .= 'if ('.$condition.') {$(form).find("'.$sel.'").show(400);} ';
    355                                                 $code .= 'else {if (chargement==true) {$(form).find("'.$sel.'").hide(400).css("display","none");} else {$(form).find("'.$sel.'").hide(400);};} ';
     354                                                $code .= "\tif (".$condition.') {$(form).find("'.$sel.'").show(400);} '."\n\t";
     355                                                $code .= 'else {if (chargement==true) {$(form).find("'.$sel.'").hide(400).css("display","none");} else {$(form).find("'.$sel.'").hide(400);};} '."\n";
    356356                                        }
    357357                                }
    358                 $code .= '};';
     358                $code .= "};";
    359359                $code .= '$("li#afficher_si_'.$id_form.'").parents("form").each(function(){verifier_saisies_'.$id_form.'(this);});';
    360360                $code .= '$("li#afficher_si_'.$id_form.'").parents("form").change(function(){verifier_saisies_'.$id_form.'(this);});';
  • _plugins_/saisies/paquet.xml

    r81214 r83524  
    22        prefix="saisies"
    33        categorie="outil"
    4         version="1.40.4"
     4        version="1.40.5"
    55        etat="stable"
    66        compatibilite="[2.0.0;3.0.*]"
  • _plugins_/saisies/plugin.xml

    r81214 r83524  
    44    <auteur>Matthieu Marcillaud - RastaPopoulos - Joseph</auteur>
    55    <licence>&#169; 2009-2013 GNU/GPL</licence>
    6     <version>1.40.4</version>
     6    <version>1.40.5</version>
    77    <etat>stable</etat>
    88    <categorie>outil</categorie>
Note: See TracChangeset for help on using the changeset viewer.