Add UI documentation and/or updates to make it easier to learn

Created on 2 February 2024, 10 months ago
Updated 6 February 2024, 10 months ago

Problem/Motivation

UPDATE: I have actually figured out this problem. However please read, as I recommend that simple UI or documentation improvements could help to prevent the misunderstanding that I document here.

I am attempting to create an access policy to control who can view and who can edit a taxonomy term (in particular terms of the vocab, Group). I started creating and access policy of type "Group". By default, no one was given access, so I enabled the permissions to give access to different roles, and saw the table change. Now for view access, the table displays limited, which is great. But edit show a checkmark, and not limited. How do I set up the access policy so that all of the operations can be set to "Limited". I tried hacking around the Group access policy in code to look more like the Private one, which looks more like what I am expecting. However, I am not able to achieve the desired results. Am I missing some piece of configuration, some piece of code, or is their some limitation with restricting access for terms?

To clarify, I had opened another issue a month or two ago about not being able to add rules. I understood your response there, and I am able to add rules just fine. I just am not able to get them to apply to the "edit" (or update) operation now.

πŸ’¬ Support request
Status

Active

Version

1.0

Component

Documentation

Created by

πŸ‡ΊπŸ‡ΈUnited States MegaKeegMan

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @MegaKeegMan
  • Status changed to Postponed 10 months ago
  • πŸ‡ΊπŸ‡ΈUnited States MegaKeegMan

    Ah hold off on attending to this please. I may be finding answers. Will update shortly.

  • Status changed to Active 10 months ago
  • πŸ‡ΊπŸ‡ΈUnited States MegaKeegMan

    Okay. I'm half sorry. I realized that those operations were not limited because I did not have any rules that were related to those operations. I am setting this back to "Active", not because anything needs to be done, but because I would like to take the time to consider whether there may be any UI improvements or simple documentation that could help with this. I was stumped for a bit longer than I am proud to admit, all because of a non-problem. The functionality is there though, and everything seems to be working.

    I did not realize that that the access table dynamically checked whether or not their were rules applying to those operations. This makes sense, and is actually a very informative UI when you understand how to read it. Unfortunately, I had interpreted checkmarks to mean that rules CANNOT apply to those operations.

  • πŸ‡ΊπŸ‡ΈUnited States MegaKeegMan
  • πŸ‡ΊπŸ‡ΈUnited States MegaKeegMan

    The explanation currently says: "Limited means that the role has access but may be constrained by one or more access rules"

    This is technically true, but I wonder if instead it should say something like:
    "Limited means that the role has access but that one or more existing access rules may apply constraints"

  • πŸ‡ΊπŸ‡ΈUnited States partdigital

    HI MegaKeegMan,

    I agree, the UI can be tricky to comprehend when first using it. Definitely open to feedback on how to improve it. Feel free to suggest any other changes and submit a patch to get credit.

    I had interpreted checkmarks to mean that rules CANNOT apply to those operations.

    This is very interesting and you raise a good point; a checkmark might mean something else for different people. Could you elaborate more? I'd be very interested to hear how you came to that assumption. Do you think another symbol may be more appropriate?

    One feature that I'm currently working on is the ability to configure operations for each access policy. This means that the concepts of "Group", "Private" etc will be going away and you can configure it any way you want. This should help with the discoverability/learnability of the user interface as well as provide a useful feature. This will be with released with beta7.

    Here is a sneak peak.

    I'm also considering using Drupal tours which can guide users through the user interface right from within Drupal.

    In the meantime, if you haven't seen it yet, I highly recommend watching this video. It gives a demo of the UI as well discusses some high level concepts which should help contextualize everything.

    https://www.youtube.com/watch?v=Dzsj8vTQf0E.

  • πŸ‡ΊπŸ‡ΈUnited States partdigital
  • πŸ‡ΊπŸ‡ΈUnited States partdigital
  • πŸ‡ΊπŸ‡ΈUnited States MegaKeegMan

    Thanks for the info. I will find a time this week to watch the video you recommend. I am sure that implementing tours will be useful.

    I have also found access policy types pretty confusing, and it has taken me some time to start picking up on the differences between them and why I would use each of them. While I think my understanding has improved, I still have questions. I think this will be a positive change.

    As for the checkmarks. I actually think the checkmarks make sense and send the right message. For whatever reason, I did not understand that the values in the table were affected by configuration of access rules, despite the text saying so. I think what probably happened for me was that I set up my first access policy following along a tutorial, and while following a tutorial my observational powers of what was happening in the UI were a bit lessened, as I was just trying to follow steps, since at the time I lacked the confidence that I could configure the module without a guide. I didn't really start observing what was happening in that table until I started to set up my second access policy.

    I don't have a single clear answer on how to resolve this. But whether in a tour or in some referenced tutorial, if while walking through how to set up an access policy there is some suggestion to look at the table before and after a rule is configured, that could help to instill some fundamental understanding for newcomers. Though I wonder how many people use a tutorial or guide initially when installing. I would assume that most people do, but it may not be a safe assumption.

  • πŸ‡ΊπŸ‡ΈUnited States partdigital

    I appreciate the feedback.

    I'm definitely going to write some more tutorials. One or two more for common use cases as well as a collection of tutorials on how to use the API. There is also a slack channel #access-policy-module where anyone can submit questions. I'm also available on #support.

    I'd say let's leave this issue open as a general discussion where anyone can talk about the pain points of learning Access Policy. So some general questions I might have (for anyone reading this).

    • Do you use the Tours module? Would that be helpful?
    • What use cases in particular would you like to see a tutorial on?
    • Is there anything in the UI that is particularly confusing?
Production build 0.71.5 2024