Note to all: Feeds doesn’t seem to connect with user profiles http://drupal.org/node/1060230 = stay tuned for the fix in part 2 (hint use user import also)
Organic groups is a great way to organize groups and cascade permissions – in this example we tested against 45,000 users in 3 different roles going in to 500 groups.
While the end result is pretty obvious here’s the 2 minute vid http://www.youtube.com/watch?v=M0uYvlmIGps
While Node import did the heavy lifting for the group node creation feeds came ahead for user imports. Node Import just has a few more settings for group node creation than does feeds.
This project came about as a conversion from an unmaintainable drupal 6 site that we converted into off-the-shelf drupal.
Modules used:
- Feeds patched with http://drupal.org/node/857424#comment-4038128 for organic groups (originally tested with the node reference patch here http://drupal.org/node/724536#comment-4347036 – i thought that referencing the node was enough to join a member to a group… wrong)
- Feeds Role ID Map – added organic group user roles during the import
- Feeds Tamper – required for adding organic groups via the patch (with the “explode list” filter) and for use with Feeds Role ID Map
- Feeds User Map – allows you to map the author of the node – applied to the survey for permissions
- Feeds View Parser – some data was exported and then reingested to correlate the relationships that were present in the original data
- Organic Groups
- OG Hide Membership – members are not meant to interact with eachother – we’re really just using OG for permissions
- OG User Roles – needed to clean up permissions
- Organic Groups Access Admins – more permissions for the node groups
Something to remember with feeds – it can get a bit wonky over file line endings and encoding – more so than node import from what I’ve seen. These are the settings that have worked for me coming from mac excel -> open in text wrangler and resave with windows cr/lf and utf-8 encoding
The settings are pretty straightforward.
A few things to remember before you upload:
- if you plan on making node aliases do that before you upload – views bulk operations is slower than molasses updating url aliases. Same goes for auto node titles if you’re using them.
- In general every node reference or user reference you have is going to slow something up
Modules tested: although a lot of modules were tested not all really made the cut. Some because they didn’t really seem useful in our case. Others (organic subgroups) because I really couldn’t get a response on IRC or the forums about how to ingest them en masse – if anyone has done this please feel free to chime in) organic groups access permissions settings
- User Import – it only allows you to map your users to a single group. Thankfully feeds tamper allowed us to map multiple groups per user and group post
- User Import for Organic Groups – these two seemed promising, however UI4OG only allows the users to be mapped to one group… no good for our use case
- OG Subgroups – ok – wanted to see this in action, never really got it working at least not through the import interface- might make a good use case for using the migration modules
- Node Access by User Reference - I really like a lot of Node one’s ideas, and Johan Falk in particular comes up with some very clever ways of re-arranging drupal mods – so I thought I might give this intuitive technique a go – the caveats mentioned in his post indeed became insurmountable – with the need to have 16 user references in each group post my virtual machine came grinding to a halt.