I am new to umbraco and need a little help understanding how the membership functionality works.
I am looking to create a root website that acts as a online website builder for members (not users).
A person would come to the website builder and signup (become a member). They would go through the process and in the end have a completed website. They would also have the ability to have member signups for their websites as well.
I know that you have have mulitple websites in one umbraco installation but how do you divide the members of the root website and the member's site members?
My goal is to allow a global admin to edit any member website, a manager to edit a certain set of member websites, and a general member to edit only their website and it's members. It would be parent-child approach down the line (like below).
-Global Admin (Root Website and down) -Manager (Group of Member Created Websites) -General Member (Member Created Website) -Member Created Website Member
Any help on how I would structure this in umbraco would be awesome!
It's a big question so that may be why no one has replied yet.
As far as I understand, all of the mentioned roles are umbraco "members" right? So everyone would be using the frontend to edit and manage their content/members?
When you say they can create their own website, is this literaly a website with their own domain, or is it just a section on a common domain?
Maybe if you explain a bit about the usercase, then it is easier for us to see how it would fit into umbraco.
I don't know if you really need a difference between website members and backoffice users?
If you only want to create backoffice users then this is easy, just create them (in the "Users" section) and select the start node for both content and media.
I'm not sure how you would allow people to sign up through the frontend and make them backoffice users though.
Yes, all the mentioned roles would be umbraco members using the frontend to edit and manage their content/members.
The member would be creating a website that is part of the common domain. They would then be able to point their domain name to that folder/node. I understand this can be done throught he API. I know that I don't want to use backoffice users for this implementation.
Here is a user scenario:
Artist/User
I am an artist that needs a website. I don't know much about coding/graphics and just need something easy and professional. I signup (root web app) at www.websitecreator.com and go through the wizard. At the end I have a website with graphics and pages. I have the option to point my domain name to this new website hosted by www.websitecreator.com. Also, I can have people sign up for my website as members. I can use this to send newsletters and restrict access to certain sections of my new website.
Manager
I am the manager of the above artist and several others using www.websitecreator.com and I want to be able to administrate all their websites in one place. I would like to be able to have access to all their content/members and be able to send newsletters/emails to all my artists' website members.
How would I setup Umbraco to handle this type of membership structure.
Please forgive me as I am new and I can't find much documentation on how to use the members types, member groups, and public access. My initial thoughts were to have different member types for artists and managers. Then I thought, well maybe I should have one member type and use member groups instead. I'm just not sure how to structure the membership to do what I need.
Just reading this post for the first time.I have a question about the Member structure and the goal you want to achieve. If you are using Members instead of users in Umbraco you are missing the Content Management functionality. What I probably would do when I need to build this is the following.
In Umbraco I would create a structure using document types
Root (Acces to the Umbraco Admin) ----WebsiteManager1 ----------Website1 ----------Website2 ----------Website3 ----WebsiteManager2 ----------Website1 ----------Website2 ----------Website3
In Umbraco you create a Website Manager user and only give it access to the content folder for the WebsiteManager(WebsiteManager1/2). Then you create a few other users that have access to the website folders. With this setup the manager can also access the underlying websites.Make sure you only give the users and managers rights to the content section. If you only want Inline editing functionality for the users you can check the RedirectToCanavas Checkbox when creating the user so it will never see Umbraco.
What's also nice when using this approuch is that you can make the website document type a little bit more intelligent and you can assign company logo's etc to it and use that in your template to display the site.
For newslettersubcriptions you still need to setup members and as you allready figured out it's best to assign groups.
Now all these steps are configured by hand. The next step is to create a wizard that helps you creating the websites. I think the best thing is to create another "sitebuilder" site underneath the root where the new user can follow a few steps. Based on the users input you can generate the site for him/her using the Umbraco API.
Hope this helps you for now and let me know if you want more info.
I like the approach. I would definately want to limit what these sub-users could see regarding the umbraco backend. I would much rather have them interatct with a tailored interface that I can control exactly what they see.
From what I can tell, the "members" part of an umbraco installation includes all members regardless of what sub-site they belong to. So I would need to group each sub-sites members into a membership group (ex. Website 1 Member Group, Website 2 Member Group)?
I could then create a sign-up control that dynamically adds the member to the respective sub-site membership group. Right? I could then expose this membership group to that sub-user only and not other sub-users.
Also, one more question. I understand a little how the "user types" are used but how would "membership types" come into play in my scenario?
Unless you're wanting to store different info (data, as is age, sex, ....) for admins/artist-user, I'd not worry too much about member types in your scenario. I'd define a single member type to store data about members registering on the site (even for admins) and use member groups (or roles if you prefer) as the base for security/functionality lock down.
I think I've got it now. Let me know if this sounds right.
I need to create a Document Type that servers as a parent to Sub-Site Document Type like Richard mentioned earlier. This will enable me to allow a Website Manager(User Type) with appropriate permissions to edit any sites under that node. Also, that will allow me to get unique urls such as "/WebsiteManager1/Website1/News/Newsitem1.aspx".
Example Content/Document Type Structure:
Root (Acces to the Umbraco Admin)
----Site Builder Website (Wizard for users to create websites and use input to create the site through the umbraco API)
----Sony Records (Mulitsite Management Document Type [Parent doctype]) ----------Shakira (Sub-site Document Type [hostname www.shakira.com]) ----------Bruce Springsteen (Sub-site Document Type [hostname www.brucespringsteen.com]) ----------Kings of Leon (Sub-site Document Type [hostname www.kingsofleon.com]) ----Universal Records (Mulitsite Management Document Type [Parent doctype]) ----------Josh Turner (Sub-site Document Type [hostname www.joshturner.com])
Example Membership Structure:
Create a basic member type that all users and members inherit from. As this data will not be different from member to member.
Upon creation of a new sub-site a new member group will be dynamically created to serve as the membership data store for that sub-site. If there is an over arching Management company that member will also be added to its member group. This would give the Manager access to all the sub-site members.
Create a macro to allow Managers and Sub-site Users to edit only their member group members.
Example Subscription Structure:
Each module could be added as a true/false as part of the base User Type.
SiteBuilder Module - checked Newsletter Module - not checked Street Team Module - checked
The selection could be modified through a checkout process and users subscribed and unsubscribed from certain modules. A backoffice process can run to pole users selections and process their subscription payments on a bi-monthly basis. These same boolean values could be used to limit access to modules.
Thanks for all the help! Let me know if this sounds right.
Membership & Multiple Websites
I am new to umbraco and need a little help understanding how the membership functionality works.
I am looking to create a root website that acts as a online website builder for members (not users).
A person would come to the website builder and signup (become a member). They would go through the process and in the end have a completed website. They would also have the ability to have member signups for their websites as well.
I know that you have have mulitple websites in one umbraco installation but how do you divide the members of the root website and the member's site members?
My goal is to allow a global admin to edit any member website, a manager to edit a certain set of member websites, and a general member to edit only their website and it's members. It would be parent-child approach down the line (like below).
-Global Admin (Root Website and down)
-Manager (Group of Member Created Websites)
-General Member (Member Created Website)
-Member Created Website Member
Any help on how I would structure this in umbraco would be awesome!
Anybody out there understand my question?
It's a big question so that may be why no one has replied yet.
As far as I understand, all of the mentioned roles are umbraco "members" right? So everyone would be using the frontend to edit and manage their content/members?
When you say they can create their own website, is this literaly a website with their own domain, or is it just a section on a common domain?
Maybe if you explain a bit about the usercase, then it is easier for us to see how it would fit into umbraco.
I don't know if you really need a difference between website members and backoffice users?
If you only want to create backoffice users then this is easy, just create them (in the "Users" section) and select the start node for both content and media.
I'm not sure how you would allow people to sign up through the frontend and make them backoffice users though.
Morten,
Yes, all the mentioned roles would be umbraco members using the frontend to edit and manage their content/members.
The member would be creating a website that is part of the common domain. They would then be able to point their domain name to that folder/node. I understand this can be done throught he API. I know that I don't want to use backoffice users for this implementation.
Here is a user scenario:
Artist/User
I am an artist that needs a website. I don't know much about coding/graphics and just need something easy and professional. I signup (root web app) at www.websitecreator.com and go through the wizard. At the end I have a website with graphics and pages. I have the option to point my domain name to this new website hosted by www.websitecreator.com. Also, I can have people sign up for my website as members. I can use this to send newsletters and restrict access to certain sections of my new website.
Manager
I am the manager of the above artist and several others using www.websitecreator.com and I want to be able to administrate all their websites in one place. I would like to be able to have access to all their content/members and be able to send newsletters/emails to all my artists' website members.
How would I setup Umbraco to handle this type of membership structure.
Please forgive me as I am new and I can't find much documentation on how to use the members types, member groups, and public access.
My initial thoughts were to have different member types for artists and managers. Then I thought, well maybe I should have one member type and use member groups instead. I'm just not sure how to structure the membership to do what I need.
Thanks again for any help.
Anybody have any ideas on the steps to accomplish something like this?
Hi Rick,
Just reading this post for the first time.I have a question about the Member structure and the goal you want to achieve. If you are using Members instead of users in Umbraco you are missing the Content Management functionality. What I probably would do when I need to build this is the following.
In Umbraco I would create a structure using document types
Root (Acces to the Umbraco Admin)
----WebsiteManager1
----------Website1
----------Website2
----------Website3
----WebsiteManager2
----------Website1
----------Website2
----------Website3
In Umbraco you create a Website Manager user and only give it access to the content folder for the WebsiteManager(WebsiteManager1/2). Then you create a few other users that have access to the website folders. With this setup the manager can also access the underlying websites.Make sure you only give the users and managers rights to the content section. If you only want Inline editing functionality for the users you can check the RedirectToCanavas Checkbox when creating the user so it will never see Umbraco.
What's also nice when using this approuch is that you can make the website document type a little bit more intelligent and you can assign company logo's etc to it and use that in your template to display the site.
For newslettersubcriptions you still need to setup members and as you allready figured out it's best to assign groups.
Now all these steps are configured by hand. The next step is to create a wizard that helps you creating the websites. I think the best thing is to create another "sitebuilder" site underneath the root where the new user can follow a few steps. Based on the users input you can generate the site for him/her using the Umbraco API.
Hope this helps you for now and let me know if you want more info.
Cheers,
Richard
Richard,
I like the approach. I would definately want to limit what these sub-users could see regarding the umbraco backend. I would much rather have them interatct with a tailored interface that I can control exactly what they see.
From what I can tell, the "members" part of an umbraco installation includes all members regardless of what sub-site they belong to. So I would need to group each sub-sites members into a membership group (ex. Website 1 Member Group, Website 2 Member Group)?
I could then create a sign-up control that dynamically adds the member to the respective sub-site membership group. Right? I could then expose this membership group to that sub-user only and not other sub-users.
Also, one more question. I understand a little how the "user types" are used but how would "membership types" come into play in my scenario?
Thanks,
Rick
Rick,
Unless you're wanting to store different info (data, as is age, sex, ....) for admins/artist-user, I'd not worry too much about member types in your scenario. I'd define a single member type to store data about members registering on the site (even for admins) and use member groups (or roles if you prefer) as the base for security/functionality lock down.
Cheers,
/Dirk
I think I've got it now. Let me know if this sounds right.
I need to create a Document Type that servers as a parent to Sub-Site Document Type like Richard mentioned earlier. This will enable me to allow a Website Manager(User Type) with appropriate permissions to edit any sites under that node. Also, that will allow me to get unique urls such as "/WebsiteManager1/Website1/News/Newsitem1.aspx".
Example Content/Document Type Structure:
Root (Acces to the Umbraco Admin)
----Site Builder Website (Wizard for users to create websites and use input to create the site through the umbraco API)
----Sony Records (Mulitsite Management Document Type [Parent doctype])
----------Shakira (Sub-site Document Type [hostname www.shakira.com])
----------Bruce Springsteen (Sub-site Document Type [hostname www.brucespringsteen.com])
----------Kings of Leon (Sub-site Document Type [hostname www.kingsofleon.com])
----Universal Records (Mulitsite Management Document Type [Parent doctype])
----------Josh Turner (Sub-site Document Type [hostname www.joshturner.com])
Example Membership Structure:
Create a basic member type that all users and members inherit from. As this data will not be different from member to member.
Upon creation of a new sub-site a new member group will be dynamically created to serve as the membership data store for that sub-site. If there is an over arching Management company that member will also be added to its member group. This would give the Manager access to all the sub-site members.
Create a macro to allow Managers and Sub-site Users to edit only their member group members.
Example Subscription Structure:
Each module could be added as a true/false as part of the base User Type.
SiteBuilder Module - checked
Newsletter Module - not checked
Street Team Module - checked
The selection could be modified through a checkout process and users subscribed and unsubscribed from certain modules. A backoffice process can run to pole users selections and process their subscription payments on a bi-monthly basis. These same boolean values could be used to limit access to modules.
Thanks for all the help! Let me know if this sounds right.
-Rick
is working on a reply...