autorisation visiteur et crayons

Bonsoir,

J'ai ajouté dans mes_options.php pour que les visiteurs puissent changer leurs coordonnées (sans accès à l'espace privé) :

function autoriser_auteur_modifier($faire, $type, $id, $qui, $opt) {
   return (
      in_array($qui['statut'], array('0minirezo', '1comite', '6forum'))
     || ($opt && $opt['champ'] == 'bio' && $id == $GLOBALS['visiteur_session']['id_auteur'])
   );
}

function analyse_droits_rapide() {
   return !!$GLOBALS['visiteur_session'];
}

(code trouvé via https://contrib.spip.net/Les-crayons#comment496780-496776 )

mais je m'aperçois qu'un visiteur peut alors modifier n'importe quel auteur via les crayons et pas seulement sa propre fiche
par exemple via :
[<div class="#EDIT{bio} bio">(#BIO|adaptive_images)</div>]

Est-il possible de limiter les modifications à la fiche de l'auteur identifié en cours (session) ?

Merci

un truc du genre , c’est pas de moi (je connais pas assez spip)

Merci !

Cela fonctionne en changeant :
function autoriser_auteur_voir
en
function autoriser_auteur_modifier

dd

Le 27/02/2020 à 07:14, teamspipfactory@gmail.com a écrit :

Le 26/02/2020 à 23:52, dd a écrit :

Bonsoir,

J'ai ajouté dans mes_options.php pour que les visiteurs puissent changer leurs coordonnées (sans accès à l'espace privé) :

function autoriser_auteur_modifier($faire, $type, $id, $qui, $opt) {
return (
in_array($qui['statut'], array('0minirezo', '1comite', '6forum'))
|| ($opt && $opt['champ'] == 'bio' && $id == $GLOBALS['visiteur_session']['id_auteur'])
);
}

function analyse_droits_rapide() {
return !!$GLOBALS['visiteur_session'];
}

(code trouvé via Les crayons - SPIP-Contrib )

mais je m'aperçois qu'un visiteur peut alors modifier n'importe quel auteur via les crayons et pas seulement sa propre fiche
par exemple via :
[<div class="#EDIT{bio} bio">(#BIO|adaptive_images)</div>]

Est-il possible de limiter les modifications à la fiche de l'auteur identifié en cours (session) ?

Merci

un truc du genre , c'est pas de moi (je connais pas assez spip)
|// voir une fiche auteur : être admin ou bien il s'agit de sa propre fiche
function autoriser_auteur_voir($faire, $type, $id, $qui, $opt) {
if (
($qui['statut'] == '0minirezo')
or ($qui['id_auteur'] == $id)
) {
return true;
}
else return false;
}|

--
spipfactory.fr
----
Perdu dans la Galaxie SPIP ?
https://boussole.spip.net/
https://git.spip.net/