We are just about to begin our first website using the Umbraco but we have one issue with our clients requirements for membership and was wondering if anyone had come across and overcome a similiar issue.
Basically we require an extra level to the membership for organisations. Many members can be associated to an organisation and then a organisations has access to certain member groups. As i see it we then use the member groups for the permissions on certain sections on the site which we need to lock down to the users of organisation who have access to these groups.
Any help would be greatly appreciated I have just downloaded the source and will be taking a look at how the current integration works.
The Umbraco TV short film on this is really helpful, and if you're the sort of person very happy to download the source and read it - I think you'll find it pitched exactly at your level. It's definitely very worth the subscription money and the screen-cast on this topic is excellent.
A member has both a type and a group. You can assign access permissions by group, so it would make sense to make the member belong to a group that reflected their organisation, the access to sections can then be granted to those organisations / groups by right clicking the content node and choosing "Public Access".
The type on the other hand stores "generic properties" for a member who is of that type, that are similar to the properties of a content node. So in some scenarios a property has been "memberSubscriptionExpires" and a date type and a macro either xslt or .net (or python) can check this when the pages that need to be restricted are shown.
Thanks John for taking your time on this, I have actually watched 2 of the membership videos already, but I really need organisations to belong to a group ie groups of groups
No problem ,example of how it needs to be structured.
Users (Multiple users associated to a organisation) Organisation (An organisation has access to different projects on the website along with custom fields of information) Groups (An organisation can be added to groups so that all users of the organisation have access to the available nodes.)
If I can help explain any more please let me know. This is the first project we have decided to use Umbraco on and it aint looking great for me as It's myself who has been plugging it to our development team!
In the past when I've had this problem I have made a property of the membership Type called organisation which I've populated from a "specially created" data type as a drop down list, the down side of this is that then the developer needs to maintain the list of organisations. Another approach I've seen was to have a content folder of organisations and then make this picker an "ultimate picker" type list so this can be maintained by an editor with permission to update that folder/node.You can refine this further by building a custom section that maintains the list of organisations without too much efforts, and there is a good Utv on this too, The member would then have an organisation property and this could be maintained. Then any logic built into your macro/pages/templates can be determined by what the organisation is.
However what you seem to be saying is that you want the property on the group and not the member. It doesn't do like this and I can't think of a good reason why that would be good (not saying there isn't just can't think of it). Is that what you are after?
Typically in my experience a group of groups would be achieved by a naming convention, and if they need to be bulk updated or moved you would write a .net extension.
Umbraco can be quite a steep learning curve - everything is possible but what is the right way to start?
what I would suggest is this:
a user should have a link to an organisation node and a membership group
the organisation document type would contain all the organisation data and be allowed under an organisations node in the root of the site [you could consider a custom section but its not really necessary] this document type could also include a tab with a member picker to select the members that your code might validate to be allowed to edit the organisation and also a picker of membership groups to automate adding the member to the group when a given organisation is selected [you would need to create or find this group picker]
this is one approach - it will depend on wether you are allowing the editing of members through a custom web ui or via the umbraco back-office - in a web ui you might make the api calls needed in the onClick of the create button - whereas for the back office you might extend events
the projects i assume are a sub-root node with all the project data as various nodes beneath them - and so you would assign the various groups permission to these nodes
you wouldn't then need to have a one-to-one relationship between groups and organisations so that would give you a bit of flexibility too
in my humble experience with a few CMS the Umbraco one is very flexible - I've never seen one that would allow you to do this out of the box without further coding and it's good that the framework allows it to be extended in this way
IM contacts on www.c3x.co.uk if you want help as you go along - or do post any further questions back here I am very close now to getting to 70! so happy to help - a bit annoyed to have lost the earlier answer not quite sure what happened ; i remember it being easier to read than this one
i'd be really keen to see other peoples' opinions on this too - this definitely isn't the only approach you could take to this problem - but i think it is relatively light weight and gives you exactly what you need
John thank you so much for your time today I took your idea into a team brainstoring session we had this afternoon and I believe we have come up with a solution which best suits ourselves and the client. We are planning on having a custom membership provider but will be using umbraco for all content management.
Umbraco membership
Hi all,
We are just about to begin our first website using the Umbraco but we have one issue with our clients requirements for membership and was wondering if anyone had come across and overcome a similiar issue.
Basically we require an extra level to the membership for organisations. Many members can be associated to an organisation and then a organisations has access to certain member groups. As i see it we then use the member groups for the permissions on certain sections on the site which we need to lock down to the users of organisation who have access to these groups.
Any help would be greatly appreciated I have just downloaded the source and will be taking a look at how the current integration works.
Thanks
The Umbraco TV short film on this is really helpful, and if you're the sort of person very happy to download the source and read it - I think you'll find it pitched exactly at your level. It's definitely very worth the subscription money and the screen-cast on this topic is excellent.
A member has both a type and a group. You can assign access permissions by group, so it would make sense to make the member belong to a group that reflected their organisation, the access to sections can then be granted to those organisations / groups by right clicking the content node and choosing "Public Access".
The type on the other hand stores "generic properties" for a member who is of that type, that are similar to the properties of a content node. So in some scenarios a property has been "memberSubscriptionExpires" and a date type and a macro either xslt or .net (or python) can check this when the pages that need to be restricted are shown.
sorry i've just re-read your question and realised i didn't really answer it
thinking more... sorry
i what way would the organisation access the group?
do you want them to edit who is the member of the group? via a web ui?
Thanks John for taking your time on this, I have actually watched 2 of the membership videos already, but I really need organisations to belong to a group ie groups of groups
struggling with the question of why, but i suppose the question really is how
still thinking... sorry for leaping in before engaging the brain :$
good to know you are already in Umbraco TV - always worth a plug -
it's continued existence is very helpful :)
No problem ,example of how it needs to be structured.
Users (Multiple users associated to a organisation)
Organisation (An organisation has access to different projects on the website along with custom fields of information)
Groups (An organisation can be added to groups so that all users of the organisation have access to the available nodes.)
If I can help explain any more please let me know. This is the first project we have decided to use Umbraco on and it aint looking great for me as It's myself who has been plugging it to our development team!
In the past when I've had this problem I have made a property of the membership Type called organisation which I've populated from a "specially created" data type as a drop down list, the down side of this is that then the developer needs to maintain the list of organisations. Another approach I've seen was to have a content folder of organisations and then make this picker an "ultimate picker" type list so this can be maintained by an editor with permission to update that folder/node.You can refine this further by building a custom section that maintains the list of organisations without too much efforts, and there is a good Utv on this too, The member would then have an organisation property and this could be maintained. Then any logic built into your macro/pages/templates can be determined by what the organisation is.
However what you seem to be saying is that you want the property on the group and not the member. It doesn't do like this and I can't think of a good reason why that would be good (not saying there isn't just can't think of it). Is that what you are after?
Typically in my experience a group of groups would be achieved by a naming convention, and if they need to be bulk updated or moved you would write a .net extension.
thanks for that explanation - don't worry everything is possible in Umbraco - you and the development team have made a great choice :)
i'll think a bit more about that scenario you describe and share some more thoughts in a minute or two
it's a shame there's no check for replies before you submit your reply button like you get on some other forums :$
Really appreciate your input John any more thoughts would be great as I am struggling for ideas right now.
Cheers
odd just posted a reply that didn't appear - trying again...
very odd...darn - spent about 45 minutes writing what i thought was a really good solution to the problem - oh well will write that again now...
thanks John
Thats a real pain looking forward to seeing the proposed solution
ok trying to write what i wrote again:
Umbraco can be quite a steep learning curve - everything is possible but what is the right way to start?
what I would suggest is this:
a user should have a link to an organisation node and a membership group
the organisation document type would contain all the organisation data and be allowed under an organisations node in the root of the site [you could consider a custom section but its not really necessary] this document type could also include a tab with a member picker to select the members that your code might validate to be allowed to edit the organisation and also a picker of membership groups to automate adding the member to the group when a given organisation is selected [you would need to create or find this group picker]
this is one approach - it will depend on wether you are allowing the editing of members through a custom web ui or via the umbraco back-office - in a web ui you might make the api calls needed in the onClick of the create button - whereas for the back office you might extend events
the projects i assume are a sub-root node with all the project data as various nodes beneath them - and so you would assign the various groups permission to these nodes
you wouldn't then need to have a one-to-one relationship between groups and organisations so that would give you a bit of flexibility too
in my humble experience with a few CMS the Umbraco one is very flexible - I've never seen one that would allow you to do this out of the box without further coding and it's good that the framework allows it to be extended in this way
IM contacts on www.c3x.co.uk if you want help as you go along - or do post any further questions back here I am very close now to getting to 70! so happy to help - a bit annoyed to have lost the earlier answer not quite sure what happened ; i remember it being easier to read than this one
i'd be really keen to see other peoples' opinions on this too - this definitely isn't the only approach you could take to this problem - but i think it is relatively light weight and gives you exactly what you need
John thank you so much for your time today I took your idea into a team brainstoring session we had this afternoon and I believe we have come up with a solution which best suits ourselves and the client. We are planning on having a custom membership provider but will be using umbraco for all content management.
Thanks again.
is working on a reply...