LuckPerms

LuckPerms

41.4k Downloads

[Request] Web editor command and interface minor addition

PrincessRTFM opened this issue ยท 4 comments

commented

Two parts here for my ideas, only tangentially related.

The first: the web editor command doesn't have any way to edit everything - you can edit all users, all groups, all groups and any online users, or a specific user or group. It could be useful to be able to edit all users and groups in one session, for instance to perform a fix when some issues are in the groups and others are in the users but not all affected users are online. Alternatively, rearrange group permissions and then redefine group listings for all users. Maybe an /lp editor all command for this?

The second: it would be really nice (although I imagine probably not easy) if the web editor had a way to show what the actual end permissions would be for a given user, after running the inheritance chain. Sometimes, I have to commit four, five, or even more changes from the editor to figure out how to get my users the permissions they should have (and negate the ones they shouldn't). It would just be nice if I could look at a page tab that calculates the full inheritance chain (on demand, not automatically, because I imagine this would be a possibly intensive process).

These combined would create a nice easy-to-use graphical editor of all permissions on a server. It'd be extra nice if the second one could also display all detected permissions (like are shown in the popup/dropdown suggestions when typing one into the add permission box) for each user, and indicate whether it was true or false, maybe also pointing out where it was set to that (last change only is fine if tracing it all the way to the root isn't feasible, but it'd help with tracking down where a permission bug is coming from). Maybe also indicate where the "default permissions" stuff is applied when there's no override in the permissions hierarchy?

commented

It could be useful to be able to edit all users and groups in one session, for instance to perform a fix when some issues are in the groups and others are in the users but not all affected users are online.

That's basicly what bulkedit/bulkupdate does.

commented

The first: the web editor command doesn't have any way to edit everything - you can edit all users, all groups, all groups and any online users, or a specific user or group. It could be useful to be able to edit all users and groups in one session, for instance to perform a fix when some issues are in the groups and others are in the users but not all affected users are online. Alternatively, rearrange group permissions and then redefine group listings for all users. Maybe an /lp editor all command for this?

There are servers that use LP with 000,000's of unique players. It's not realistically feasible to load all users into the web editor at the same time. Just loading online players is a good compromise.

As Andre said, if you want to edit all users/groups at once, bulkupdate should be your tool of choice.

The second: it would be really nice (although I imagine probably not easy) if the web editor had a way to show what the actual end permissions would be for a given user, after running the inheritance chain. Sometimes, I have to commit four, five, or even more changes from the editor to figure out how to get my users the permissions they should have (and negate the ones they shouldn't). It would just be nice if I could look at a page tab that calculates the full inheritance chain (on demand, not automatically, because I imagine this would be a possibly intensive process).

Perhaps the /lp tree command could help?

https://github.com/lucko/LuckPerms/wiki/Command-Usage:-General#lp-tree

Running /lp tree . PrincessRTFM for example, would output a list of all permissions, and highlight each entry depending on if you had the perm.

It's not really possible to implement all of this live on the browser, everything has to be calculated on the server, then packaged into a payload, to be sent to the web viewer and simply displayed.

commented

Bulk editing works for reasonably simple things, but once you get into needing to essentially rewrite half the permissions that half a dozen users have and move things from user to group and group to other group and the like, it gets a lot more complicated. On a small private server (mine is only for about seven people, including me) it'd be extremely useful. Still, understandable if it's not really feasible or worth the effort to implement. Possible alternative: can I open two editor sessions at once, so I have one page for all users and one for all groups? Because I saw that I can do those individually.

commented

You can separate them out, but for the reasons explained above, it is not possible to list all known users.

LP is written to accommodate small servers and large servers alike.