-
☆ A M B ☆
- 24,524 Posts
Why, exactly, do you want your manager user logged out if he’s not in his own page?
Thanks for the input.
Haven’t managed to have a look at the Revo permissions yet or what has been suggested. I will try to have a look over the weekend!
Is there anything that can make a resource only accessible by one user without needing to do add groups and things? Ideally, I need it as simple as possible. As it is a client area, hopefully the client list will grow, so easily adding a resource and assigning a user to it would make it simpler for others to do, rather than each individual learning how Modx works.
-
☆ A M B ☆
- 397 Posts
Has anyone come up with a good solution for assigning resources to individual users for use in the frontend (in revo)? I have a client that would like to set up individual pages for their clients. So for each of their clients, they get a user with login and the langing page should be the resource assigned to that user.
So far I have analyzed the following add-ons: defaultUserGroup, Login, Personalize, and played with the tree_root_id user setting but have not yet come up with a solution.
The idea of teaching the client how to set up a resource group and user group for each of their clients is a very bad idea. It needs to be as simple as possible.
Benjamin Davis: American web designer living in Munich, Germany and a MODX Ambassador. I am also co-founder of SEDA.digital, a MODX Agency.
Which route to go depends for example on what's the content of the user-pages.
May be you don't need any resources for users at all and you can store the users informations into custom-tables, related to the user-id.
In some situations, I think, its also not necessary and overkill to create a user-group/resource-group for each user, to give them permissions to see only there own stuff.
I think there's an example in my book for doing that in the Manager with a plugin tied to OnUserFormSave. That gives you the advantages of the Manager's Create/Edit user form, which will handle creating the password for you and give you options for entering information about the User. The down side of that is that it lets the Manager users change their own security level and create sudo users.
For the front end, I've thought about doing an extra for it, but I don't think it would be all that difficult to do it using DefaultResourceGroup with FormIt and a postHook to create individual user, and the user's page, resource group, and user group. The user's resource group and user group could be named after the user.
You could also let users self-register and make it a postHook for the Register or the ConfirmRegister snippet.
-
☆ A M B ☆
- 397 Posts
Thanks for the idea Bob. I will go through your book and check that out. I really commend you and people like Bruno who are so active on this forum helping people. It is truly amazing that you can offer so much of your personal time.
But regarding this issue, I find it strange that there isn't some sort of way to easily solve this. I mean REVO has now been around for a while... and hasn't this been an issue for other people?
I must say though, I have been using Revo since 2010 and have not come across this request until now .. so I guess maybe it isn't so strange after all.
I will post how I solve this later. I haven't even won the project yet.
Benjamin Davis: American web designer living in Munich, Germany and a MODX Ambassador. I am also co-founder of SEDA.digital, a MODX Agency.
Thanks for the kind words. I've seen the request a number of times and I agree that it should be easier. It's not a trivial extra, though, since so many people would want it to do different things and there are so many security issues.
BTW, since users now have a primary user group, there might be another way to go. I think you could create a snippet to put in the NewsPublisher's EditThisButton tag that only showed the Edit button to users editing their own page (or a child of that page). Then they could edit only their own pages in the front end when logged in. You'd still have to do the mechanism for creating the users, groups, and pages though.