Will Advanced Permissions allow to implement this scenario?

Permalink
I want my site to work in the following way:

1. user registers to my site
2. user automatically gets necessary permissions to add and edit pages (administrator should not be required to take any action)
3. user can add new pages and edit them
4. user cannot edit pages of other users, he can only view them.

Do Advanced Permissions support this kind of a setup?
If yes - how?
If not, what kind of an extension/customization would be necessary?

Thanks in advance.
Kris

 
mario replied on at Permalink Reply
mario
Objectives 1-3 are totally possible using advanced permissions (you'd give registered users the abilities outlined above). The problem lies with number 4 and the fact that you don't want the Administrator involved.

They'd need to know enough about permissions to set their pages only editable by themselves (and the Admin). So, after creating a page they'd add their User account to the page permissions and then remove the ability for Registered users to edit the page.

The danger with this approach lies in the fact that you'd need to initially open the entire site to what amounts to public editing. To limit this, you could create a "registered users" directory and allow changes to everything under there by that group but not to the rest of the site.

Could I ask why you need to do this? That would help formulate an alternate solution.

The other thing that might work is to use their Member Profile pages that will be created on registration. You'll need to futz around with the settings on the dashboard. However, i'm not sure if they create pages under that page if others won't be able to access and edit those pages. I don't have much experience with Member Pages.

Check out this discussion which may help:

http://www.concrete5.org/community/forums/usage/client-specific-are...

Dojo put this together:

http://www.concrete5.org/community/forums/usage/how-to-create-a-cli...

Don't know if it'll help.

My tute on Permissions:

http://www.concrete5.org/community/forums/documentation_efforts/vid...
kzajac replied on at Permalink Reply
Hi Mario,

thanks a lot for your answer.

I started reading the links that you provided and watching your videos.

Meanwhile, what I want to achieve is this:
My registered users are organizing certain events and I want them to be able to create "mini-websites" advertising their events on my site. Each mini-website would typically consist of 2-3 pages. E.g. on first, "entry" page the user would put basic info about the event (title, description, location, date). On 2nd page he would put some pictures of the venue. 3rd page could actually be a form for unregistered users to sign up to the given event. Anyway, I would leave it up to the registered user how many pages he wants to create and what he wants to put on them.
So in this scenario, each registered user should be allowed to edit only his pages/his mini-websites, but not those of other users.

If this helps you come up with another idea how to implement it using concrete's permissions, feel free to share :)

If needed, I can do PHP programming to achieve that goal. It's just that I am completely new to concrete so I just want to learn the out-of-the-box funcs first.

Thanks,
Kris
mario replied on at Permalink Reply
mario
Hmmm...I think the solution I outlined above might work for you (give Registered Users Manual permissions to Edit/Admin/Create new pages under a specific folder). However, you'll need to rely on them to change their permissions and lock their pages down. I'm not sure how viable that is.

To achieve what you want to do might require some hacking of the registration process where a page is auto added and permission adjusted to be on the safe side.