diff --git a/formidable_autorisations.php b/formidable_autorisations.php index 5b2e16f81efb22346bc545f9cfab76e0b0ba9786..9790b29897be2153d7ceb3abcea629ba9f5866a6 100644 --- a/formidable_autorisations.php +++ b/formidable_autorisations.php @@ -81,20 +81,24 @@ function formidable_autoriser(){} **/ function autoriser_formulaire_editer_dist($faire, $type, $id, $qui, $opt){ $auteurs = lire_config('formidable/analyse/auteur'); - + /* administrateur ? */ - if (isset($qui['statut']) and $qui['statut'] <= '0minirezo' and (!$qui['restreint'])) + if (isset($qui['statut']) and $qui['statut'] <= '0minirezo' and (count($qui['restreint']) == 0)) return true; /* Test des autorisations par auteur */ if ($auteurs == 'on') { return formidable_autoriser_par_auteur($id); - } else { - /* dans un else car la config 'auteurs' doit primer sur l'admin restreint */ - if ($GLOBALS['formulaires']['autoriser_admin_restreint']) - return true; - else - return false; + } + + /* Test des autorisations pour un admin restreint */ + if (count($qui['restreint'])) { + $autoriser_admin_restreint = isset($GLOBALS['autoriser_admin_restreint']) + ? $GLOBALS['autoriser_admin_restreint'] + : lire_config('formidable/analyse/autoriser_admin_restreint') == 'on' + ? true + : false; + return $autoriser_admin_restreint; } } diff --git a/formidable_options.php b/formidable_options.php index e5011146b6d22ddf9b9cc7c0ff0b249f3a84c3b1..cdbef83ccb643a38fedbd4321699fa61cc2fd07a 100644 --- a/formidable_options.php +++ b/formidable_options.php @@ -26,10 +26,6 @@ if (isset($GLOBALS['formulaires']['passwd']) == false) { ); } -if (isset($GLOBALS['formulaires']['autoriser_admin_restreint']) == false) { - $GLOBALS['formulaires']['autoriser_admin_restreint'] = false; -} - if (!function_exists('array_fill_keys')) { /** * Remplit un tableau avec des valeurs, en spécifiant les clés diff --git a/formulaires/configurer_formidable_analyse.html b/formulaires/configurer_formidable_analyse.html index 9509faa2304ac894e02f064885acbe6568069548..bd98339895d5db2d6b3029593c6583788535acd6 100644 --- a/formulaires/configurer_formidable_analyse.html +++ b/formulaires/configurer_formidable_analyse.html @@ -28,6 +28,11 @@ label_case=<:formidable:activer_pages_label:>, explication=<:formidable:activer_pages_explication:> })] + [(#SAISIE{case,autoriser_admin_restreint, + li_class='pleine_largeur', + label_case=<:formidable:autoriser_admin_restreint:>, + explication=<:formidable:autoriser_admin_restreint_explication:> + })] <input type="hidden" name="_meta_casier" value="formidable/analyse" /> <p class="boutons"><span class="image_loading"> </span><input type="submit" class="submit" value="<:bouton_enregistrer:>" /></p> diff --git a/lang/formidable_fr.php b/lang/formidable_fr.php index c7292ce50ed4d60653f7138d46a850da856ed822..eaddef6954b96b0e91a65999be72417100c89993 100644 --- a/lang/formidable_fr.php +++ b/lang/formidable_fr.php @@ -20,6 +20,8 @@ $GLOBALS[$GLOBALS['idx_lang']] = array( 'analyse_une_reponse_total' => 'Une personne a répondu à ce formulaire.', 'analyse_zero_reponse_total' => 'Aucune personne n’a répondu à ce formulaire.', 'aucun_traitement' => 'Aucun traitement', + 'autoriser_admin_restreint' => 'Autoriser les administrateurs restreints à créer et modifier les formulaires', + 'autoriser_admin_restreint_explication' => 'Par défaut, seuls les administrateurs ont accès à la création et modification des formulaires', // B 'bouton_formulaires' => 'Formulaires', diff --git a/paquet.xml b/paquet.xml index e4dd75c1f3664eff8573c0f34c686f3bf54c64b2..0c69a1cf598d06d4a0ab2e032f86841391b4d96a 100644 --- a/paquet.xml +++ b/paquet.xml @@ -1,7 +1,7 @@ <paquet prefix="formidable" categorie="communication" - version="2.8.4" + version="2.8.5" etat="stable" compatibilite="[3.0.0;3.0.*]" logo="images/formidable-64.png"