diff --git a/ecrire/inc/autoriser.php b/ecrire/inc/autoriser.php index 661ceee8def0e1ce1a55333be3e7bf4855129c21..c9bae03a4b9b2198806eb0b3cc8de86dcb6cea32 100644 --- a/ecrire/inc/autoriser.php +++ b/ecrire/inc/autoriser.php @@ -886,8 +886,7 @@ function autoriser_voir_dist(string $faire, string $type, $id, array $qui, array * Est-on webmestre ? Signifie qu'on n'a même pas besoin de passer par ftp * pour modifier les fichiers, cf. notamment inc/admin * - * Soit la liste des webmestres est définie via une constante _ID_WEBMESTRES, - * soit on regarde l'état "webmestre" de l'auteur + * On regarde l'état "webmestre" de l'auteur * * @see autoriser() * @@ -900,9 +899,7 @@ function autoriser_voir_dist(string $faire, string $type, $id, array $qui, array **/ function autoriser_webmestre_dist(string $faire, string $type, $id, array $qui, array $opt): bool { return - (defined('_ID_WEBMESTRES') - ? in_array($qui['id_auteur'], explode(':', (string) _ID_WEBMESTRES)) - : $qui['webmestre'] === 'oui') + $qui['webmestre'] === 'oui' && $qui['statut'] === '0minirezo' && !$qui['restreint']; } @@ -1079,32 +1076,26 @@ function autoriser_auteur_modifier_dist(string $faire, string $type, $id, array } else { return false; } - } // id = 0 => creation - else { + } else { + // id = 0 => creation return true; } } } } - // Un admin complet fait ce qu'il veut - // sauf se degrader + // Un admin complet fait ce qu'il veut, sauf se degrader if ($id == $qui['id_auteur'] && (isset($opt['statut']) && $opt['statut'])) { return false; - } elseif ( - isset($opt['webmestre']) - && $opt['webmestre'] - && (defined('_ID_WEBMESTRES') || !autoriser('webmestre')) - ) { - // et toucher au statut webmestre si il ne l'est pas lui meme - // ou si les webmestres sont fixes par constante (securite) + } elseif (isset($opt['webmestre']) && $opt['webmestre'] && !autoriser('webmestre')) { + // et toucher au statut webmestre si il ne l'est pas lui même return false; - } // et modifier un webmestre si il ne l'est pas lui meme - elseif ((int) $id && !autoriser('webmestre') && autoriser('webmestre', '', 0, $id)) { + } elseif ((int) $id && !autoriser('webmestre') && autoriser('webmestre', '', 0, $id)) { + // et modifier un webmestre si il ne l'est pas lui meme return false; - } else { - return true; } + + return true; } diff --git a/prive/objets/infos/auteur.html b/prive/objets/infos/auteur.html index f061dd2679ee39c26f40cacecf465b8cb12e94f7..0cfefc928b98382bbe7fbfc0d3e0669bab846fdb 100644 --- a/prive/objets/infos/auteur.html +++ b/prive/objets/infos/auteur.html @@ -9,13 +9,7 @@ [<p>(#SESSION{id_auteur}|=={#ID_AUTEUR}|?{<:info_admin_je_suis_webmestre:>,<:info_admin_webmestre:>})</p>] ] [(#SESSION{id_auteur}|=={#ID_AUTEUR}|et{#AUTORISER{webmestre}|non}|et{#AUTORISER{etrewebmestre}|oui}) - [(#VAL{_ID_WEBMESTRES}|defined|oui) - #SET{options,#CONST{_FILE_OPTIONS}|basename} - <:info_webmestre_forces{file_options=#GET{options}}:> - ] - [(#VAL{_ID_WEBMESTRES}|defined|non) - [(#BOUTON_ACTION{<:info_admin_etre_webmestre:>,[(#URL_ACTION_AUTEUR{etre_webmestre,[(#EVAL{'time()'})],#SELF})]})] - ] + [(#BOUTON_ACTION{<:info_admin_etre_webmestre:>,[(#URL_ACTION_AUTEUR{etre_webmestre,[(#EVAL{'time()'})],#SELF})]})] ] [(#STATUT|=={nouveau}|et{#AUTORISER{relancer,inscription}}|oui) [(#BOUTON_ACTION{<:bouton_relancer_inscription:>,[(#URL_ACTION_AUTEUR{relancer_inscription,#ID_AUTEUR,#SELF})],'bloc actualiser'})] @@ -34,7 +28,7 @@ [(#REM) Bouton voir en ligne - + Si l'auteur est publié ou si on est autorisé à le prévisualiser Si dans la déclaration de table il y a une page de déclarée