Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Display content depending on ACL #549

Closed
toddoli opened this issue Nov 23, 2020 · 20 comments
Closed

Display content depending on ACL #549

toddoli opened this issue Nov 23, 2020 · 20 comments

Comments

@toddoli
Copy link

toddoli commented Nov 23, 2020

Type of issue (keep only one) / Type de demande (ne garder qu'une ligne)
New feature / Nouvelle fonctionnalité

Description
Si ça n'existe pas déjà ce serait super d'avoir une action qui permette d'afficher du contenu (bouton, HTML, ou autre...peu importe) uniquement pour tel ou tel utilisateur (suivant une ACL quoi). Dans mon cas par exemple je souhaite afficher un bouton "ajouter un évènement" à un calendrier qui mène vers la bonne page d'admin mais que ce bouton ne s'affiche que pour les @admins évidemment.

Additionnal informations / Informations complémentaires

  • version of YesWiki / version de YesWiki
    Doryphore
@acheype
Copy link
Contributor

acheype commented Nov 23, 2020

Salut,
Ce que tu demandes existes déjà, pour n'importe quel d'un formulaire tu peux définir des droits (acls) en lecture et écriture pour n'importe quel champ : positions 12 et 13.

2020-11-24 12-15 - Capture d'écran
Avec le constructeur graphique, ce sont les champs Peut être lu et Peut être saisi par.
Dans ton cas, pour faire un bouton, il te faut ajouter un champ labelhtml.

@mrflos
Copy link
Contributor

mrflos commented Nov 24, 2020

et si c'est pour du contenu dans un page wiki classique, on peut utiliser dans doryphore {{section visibility="@admins" ...}} .
ATTENTION : ca cache en mode rendu des pages, mais pas en édition.

@toddoli
Copy link
Author

toddoli commented Nov 24, 2020

Trop cool merci! C'est pas documenté alors.

@toddoli toddoli closed this as completed Nov 24, 2020
@acheype
Copy link
Contributor

acheype commented Nov 24, 2020

C'est un peu documenté ici : https://yeswiki.net/?ChampsPossibles dans 'L'utilisation de chacune des treize zones' mais de manière générale, y'a pas mal de truc à améliorer sur la doc. N'hésite pas à y participer notamment sur ce point.

@toddoli
Copy link
Author

toddoli commented Nov 24, 2020

Ça roule @acheype. Cela dit mon issue ne concernait pas les 13 champs possibles d'un formulaire. Ça c'est assez clairement documenté et ça fonctionne bien mais @mrflos a répondu à ma question et je testerai. C'est bien du contenu libre genre texte, bouton etc...que je souhaite cacher selon l'utilisateur et l'option visibility semble bien répondre à ça :) Par contre elle est pas du tout documentée donc je testerai et je regarderai comment ajouter ça à la doc ;) Merci!

@toddoli
Copy link
Author

toddoli commented Nov 24, 2020

J'ai testé ça

{{section  visibility="@admins"}}
""<a href="?PageAjoutBureau" class="btn btn-primary">Ajouter un membre du bureau</a>""
{{end elem="section"}}

Et visiblement ça fonctionne pas. Voir la page https://www.sourcesasarcm.fr/?PageBureau

@toddoli toddoli reopened this Nov 24, 2020
@mrflos
Copy link
Contributor

mrflos commented Nov 24, 2020

@seballot , c'est bien comme cela la syntaxe du parametre visibility ?

@acheype
Copy link
Contributor

acheype commented Nov 24, 2020

@toddoli ah ok autant pour moi, je sais pas pourquoi j'ai cru que c'était pour les formulaires...

j'ai testé ton code et il fonctionne. Seulement cette fonctionnalité a à peine un mois (du 24/10) et il faut mettre à jour ton wiki avec la toute dernière version de doryphore qui est disponible ici.

Ce n'est pas encore documenté, ni proposé dans les paramétrage du constructeur graphique de composant. Ca vaudrait le coup de l'y ajouter également.

@acheype
Copy link
Contributor

acheype commented Nov 24, 2020

Ah j'oubliais, tu as aussi ce type de bouton (qui peut être un lien avec nobtn="1") :

{{button link="GererSite" text="Home" hideifnoaccess="true"}}

qui cache le lien quand l'utilisateur n'a pas les acls pour voir la page.

Ni documenté non plus, ni intégré au constructeur graphique de composant...

@seballot
Copy link
Contributor

Yop! bien vu y'avais pas la doc de hideifnoaccess dans l'action builder, corrigé ! (visibility était déjà documenté)

@acheype
Copy link
Contributor

acheype commented Nov 25, 2020

👍
ah oui en effet, j'avais pourtant testé sur section mais quand je cochais "Paramètres avancées", aucune autre option ne s'affichait. Je viens de réessayer et là ça s'affiche bien... étrange

@toddoli
Copy link
Author

toddoli commented Nov 25, 2020

j'ai testé ton code et il fonctionne. Seulement cette fonctionnalité a à peine un mois (du 24/10) et il faut mettre à jour ton wiki avec la toute dernière version de doryphore qui est disponible ici.

Je viens de mettre à jour, je suis donc sous doryphore 2020-11-23-2 et j'ai toujours le même souci. C'est quoi le bout de code que je vérifie si le code est bien à jour ?

@acheype
Copy link
Contributor

acheype commented Nov 25, 2020

bizarre car les actions section.php et button.php comporte bien ces options !! as-tu aussi testé aussi le bout de code pour {{button}} ?
tu dois pouvoir créer l'action {{section}} avec le constructeur graphique, le champ visibilité apparaît dans les paramètres avancés.

@toddoli
Copy link
Author

toddoli commented Nov 25, 2020

@acheype Idem pour {{button}} et justement j'ai lu dans ton post précédent que c'était intégré au constructeur graphique et je vois rien c'est quand même louche...

@acheype
Copy link
Contributor

acheype commented Nov 25, 2020

dans docs/actions/ il y a le fichier section.yaml, tu devrais y retrouver la chaîne de caractère "visibilité". C'est avec ce fichier que {{section}} affiche ses paramètres dans le constructeur graphique.

pour {{button}}, c'est normal qu'il n'y soit pas, sebastian vient tout juste de l'ajouter.

@acheype
Copy link
Contributor

acheype commented Nov 25, 2020

Pardon, "visibility" ou "Visible par" pour les chaînes à vérifier...

@J9rem
Copy link
Contributor

J9rem commented Jan 24, 2021

Bonjour @toddoli
est-ce qu'avec toutes ces réponses et la mise à jour de la documentation de {{section}} nous avons répondu à votre issue et pouvons donc la clore ?

@toddoli
Copy link
Author

toddoli commented Jan 24, 2021

Merci de relancer @J9rem j'avais complètement mis de côté. Très bizarre je pense rien avoir fait depuis et ça fonctionne oui.

En tout cas cette syntaxe fonctionne. Si on ne fait pas partie du groupe "admins" le bouton ne s'affiche effectivement pas.

{{section visibility="@admins"}}
""<a href="?PageAjoutBureau" class="btn btn-primary">Ajouter un membre du bureau</a>""
{{end elem="section"}}

J'ai aussi testé ça mais celle là ne fonctionne pas (pas grave pour moi car moins flexible de toute façon:

{{button link="?PageAjoutBureau" class="btn btn-warning" text="Ajouter un membre du bureau" hideifnoaccess="true"}}

@J9rem
Copy link
Contributor

J9rem commented Jan 24, 2021

@toddoli super si ça fonctionne.
Pour l'action button il y a eu un bug temporaire sur les versions doryphore de mi-janvier.
Il est résolu par ce commit qui sera propagé dans les prochaines release de Doryphore et déjà sur le dépôt Github.
Est-ce que nous pouvons considérer que cette issue est close ? ou y a-t-il un point encore à voir ?
Merci pour le suivi Fabien

@toddoli
Copy link
Author

toddoli commented Jan 24, 2021

On peut clairement considérer l'issue close :) Merci!

@toddoli toddoli closed this as completed Jan 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants