Salut,
Je viens de me rendre compte d'un pb avec sites.php3 en 1.5.1 : je suis
admin restreint, je propose un site dans une des rubriques que j'administre
mais il m'est impossible de le valider : le menu de statut n'apparaît pas.
C'est d'autant plus bizarre que le cvs fait état de correction de bug lié
aux sites avec les admin retsreints, mais mon fichier est identique à la
révision 1.25
J'ai loupé un truc ?
-- Roustoubi
Bonjour,
Désolé de revenir là dessus sachant que vous êtes en plein dans la 1.6 et
que du coup c'est peut-être le cadet de vos soucis, mais il y a vraiment un
problème dans la gestion des sites par les admins restreints sur la 1.5.1.
Sylvain (titeuf) avait fait justement remarquer qu'un admin restreint peut
modifier un site proposé dans une rubrique qu'il n'administre pas (bon,
c'est pas très cool) mais plus important, un admin restreint ne peut pas
changer le statut d'un site même dans une rubrique qu'il administre, et ça
c'est vraiment la m...
J'ai vainement essayer d'y comprendre qq chose dans l'histoire des flags,
mais je dois renoncer face à mon incompétence. Par contre, si une âme
charitable pouvait apporter ou même suggérer les corrections nécessaires
pour avoir un patch de la 1.5.1, ça serait vachement apprécié.
Amicalement
-- Roustoubi
Je crois que Fil a une solution générique, déjà proposée dans cette
liste, pour résoudre d'un seul coup tous les problèmes relatifs aux
admins restreints
Oui, et pour cette solution là, même moi je suis capable de faire en sorte
que ça marche, donc j'aimerais plutôt une solution moins ... radicale
-- Roustoubi
Bon, je persévère et me replonge dans l'histoire des flags.
function calculer_droits() {
global $connect_statut, $statut, $id_rubrique, $id_rubrique_depart,
$proposer_sites, $new;
global $flag_editable, $flag_administrable;
$flag_administrable = ($connect_statut == '0minirezo' AND
acces_rubrique($id_rubrique));
if ($id_rubrique_depart > 0)
$flag_administrable &= acces_rubrique($id_rubrique_depart);
$flag_editable = ($flag_administrable OR ($statut == 'prop' AND
$proposer_sites > 0) OR $new == 'oui');
}
J'y connais rien en php (du moins j'apprends au fur et à mesure que j'ai
besoin de faire des trucs avec et/ou pour SPIP donc c'est très lent et
empirique et je ne comprends pas à quoi sert le & devant le =
Or, si je le vire, ça rétablit le bon fonctionnement (j'espère que ça ne
casse pas qq chose) ! Donc ce serait-y pas ça qui déconne ? D'autre part,
c'est normal qu'il n'y ait pas de {} après le if ($id_rubrique_depart > 0) ?
Merci pour vos explications et le petit cours de php appliqué
-- Roustoubi