Bonjour,
krysttof:1339056342 wrote
Qu'est ce que cela veut dire exactement ? Qu'un connaisseur PHP/DokuWiki peut malgré tout afficher les boutons masqués ?
Non, pas afficher les boutons, mais demander, par un URL bien senti, à ce que l'action correspondante soit exécutée. L'action n'est pas interdite das dans le moteur, mais simplement, le bouton qui la déclenche ne s'affiche pas.
Disons que je visite la page
http://tonwiki.example.com/une/page et que tu as caché le bouton "ancienne version". Si je repère que cette page est un dokuwiki, alors, je peux facilement construire l'URL
http://tonwiki.example.com/une/page?do=revisions et j'obtiens les anciennes versions de la page, car cette action n'est pas interdite dans le moteur. et il en va de même pour 'do=edit' (modifier ou voir le texte source), do=recent etc...
Le problème, et tu as pu le constater, est que si tu interdis l'action, alors les visiteurs du wiki, identifiés ou non, n'ont plus accès à la fonctionnalité. Autrement dit, par le panneau de réglage, soit tout le monde à le droit de voir l'historique, soit personne n'a le droit.
Si tu cherches une fonctionnalité du genre :
visiteur identifié = bouton + fonctionnalité active
visiteur anonyme = ni bouton, ni fonctionnalité
alors je ne connais pas la solution.... En fait si, ça me revient ! Il y a le greffon
denyactions qui retire certaines actions aux visiteurs qui n'ont accès à un site qu'en lecture, mais qui laisse les boutons.
Donc, pour faire la totale, greffon denyactions + modifications de
lib/tpl/default/main.php
/Schplurtz