A mapper is needed for organic group reference so that nodes may be imported into a specific group (or multiple groups). My specific use case is importing content into Open Atrium. Open Atrium behaves slightly differently than normal OG because it uses Spaces OG which requires that a separate field have a value set. I've attached my first attempt at a mapper which offers both Spaces OG and regular OG mapping. Currently, it only maps based on a the OG Title (exact match).
I've confirmed this works with Open Atrium but I do not have a regular OG installation, so I haven't tested the straight OG functionality.
Comment | File | Size | Author |
---|---|---|---|
#39 | feeds-og_mapper-857424-39.patch | 9.2 KB | achton |
#39 | feeds-spaces_og_mapper-857424-39.patch | 3.37 KB | achton |
#22 | og.inc__3.patch | 9.49 KB | servantleader |
#18 | Feeds-mapping-OG.png | 72.02 KB | stevestaso |
#16 | spaces_og.inc_.patch | 3.43 KB | pdrake |
Comments
Comment #1
alex_b CreditAttribution: alex_b commentedCould you please roll a patch. Check out http://drupal.org/patch and Google cvsdo. Thank you!
Comment #2
pdrake CreditAttribution: pdrake commentedIs this what you are looking for?
Comment #3
pdrake CreditAttribution: pdrake commentedHere's another version which adds user inheritance. Users can inherit groups from the feed node (if the feed is attached to a node). Use this in conjunction with the patches posted in http://drupal.org/node/632920#comment-3281476
Comment #5
pdrake CreditAttribution: pdrake commentedOk, so the previous patch included some extra code I added to support multiple values via a newline character. It would probably be best to ignore that version and use this one.
Comment #6
DanielJohnston CreditAttribution: DanielJohnston commentedHi pdrake,
This issue now encompasses #855126: Mapper for a user's OG's I'm guessing. Will check it out and give feedback here and directly in the next day or so. Would be faster but it's my birthday!
Comment #7
DanielJohnston CreditAttribution: DanielJohnston commentedOK, feedback on attempting this set of patches:
Contents of the reject file:
Current setup:
Feeds beta 4 patched from http://drupal.org/node/632920#comment-3261608 with manual replacement of 'mygroupnode' to 'member_organisation' to enable organic groups inheritance
Drupal 6.17
Result of trying to use Feeds following patches:
The entire Feeds module is broken.
Navigating to /admin/build/feeds returns
Parse error: syntax error, unexpected ';', expecting ')' in /var/aegir/drupal-6.17/sites/all/modules/feeds/plugins/FeedsUserProcessor.inc on line 163
Attempting to create a Feed node at /admin/node/add/user-import results in
http://welfaretowork.co.uk/admin/node/add/user-import
Hope this helps!
Comment #8
DanielJohnston CreditAttribution: DanielJohnston commentedTo clarify, the problems I posted above were with patches posted on #632920: Inherit properties from parent feed node (taxonomy, author, OG, language). Those patches have been rerolled and work just fine, so the current patch in this issue works fine for me.
Comment #9
boogsbobo CreditAttribution: boogsbobo commentedsubscribing
Comment #10
klonossubscribing...
Comment #11
wgrunberg CreditAttribution: wgrunberg commentedsubscribe
Comment #12
alex_b CreditAttribution: alex_b commentedA very basic mapper for OG is now part of #632920-205: Inherit properties from parent feed node (taxonomy, author, OG, language) - the reason that an OG mapper got included in #632920 is that feed node -> feed item property inheritance is now using the mapping API.
Comment #13
alex_b CreditAttribution: alex_b commentedMuch or all of this patch's functionality has been committed with #632920: Inherit properties from parent feed node (taxonomy, author, OG, language). #632920 contains the OG configuration of a feed node as mapping source *and* the OG configuration of a feed item as mapping target.
I'll set this issue here to duplicate, feel free to reopen if I am missing something.
Comment #14
xatoo_ CreditAttribution: xatoo_ commentedAFAIK there is currently no way to import data into the OG description or to set other OG settings like private/public group, directory listing and membership request method.
Also for the user processor there is no way to provide groups to which the user should be subscribed. Something, which as it looks, is provided by the above patch. I therefore reopen this issue hoping to draw some attention to it.
Comment #15
alex_b CreditAttribution: alex_b commentedPostponing as I'm not planning to work on this. Please change status when posting a patch.
Comment #16
pdrake CreditAttribution: pdrake commentedGiven the inclusion of a basic OG mapper through the inheritance work (#632920), I have split this into two patches. One applies only to Spaces OG Audience, a vital field for anyone importing nodes into Spaces OG based sites such as OpenAtrium. The second includes improvements to the current OG mapper to allow mapping by NID, Title, Feed URL and Feed GUID as well as to allow User mapping to OGs.
Comment #17
stevestaso CreditAttribution: stevestaso commentedI installed the patch in #16 and see the mapping choices for my CSV importer.
All other info is mapping correctly.
But I can't seem to get it to add the nodes to a group.
I've tried by NID (my group NID is 16, so I added a column in the CSV file and put 16 in all the rows.)
I've tried by Title (my Title is Area 057, so I added a column in the CSV file and put Area 057, area-057. Neither works.)
The target node type is a valid Group post, but the nodes are created without any Group audience selected, they become Public.
Am I missing something? what type of syntax in the CSV file is it looking for?
BTW, I don't think the basic OG importer that comes with feeds didn't work either, so I doubt your patch is a culprit.
Just looking for help with how to pick up the Group from the CSV file.
thanks.
Comment #18
stevestaso CreditAttribution: stevestaso commentedIs this what I should see? See screenshot.
Should I have a selection choice for the Source or the text input like shown here?
Should I have a checkbox for the Unique target?
Standalone or attached to a node, With our without the patch, I can't add the nodes into groups.
Comment #19
Quentin CreditAttribution: Quentin commentedI can confirm stevestaso's findings (subscribe).
Comment #20
stevestaso CreditAttribution: stevestaso commentedAddition to comments in #18, seems like taxonomy from the parent node is also NOT handed down to the feed item nodes.
Comment #21
RJL-dupe CreditAttribution: RJL-dupe commentedsubscribe
Comment #22
servantleader CreditAttribution: servantleader commentedTypo in the name of a variable on line 123.
function og_feeds_set_target($node, $target, $values) {
should be
function og_feeds_set_target($node, $target, $value) {
Here is a new patch. I have only tested it with title based import, but it is working great for that.
Comment #23
pdrake CreditAttribution: pdrake commentedservantleader, thanks for finding that and posting it. I must have somehow included a patch based on an older version. With that fix, it is importing properly based on the title? If you're still having any trouble, please post here and I'll take another look at it.
Comment #24
R.J. Steinert CreditAttribution: R.J. Steinert commentedSubscribe
paying my dues -> http://1BeerToKillSubscribeComments.com
Comment #25
notasheep CreditAttribution: notasheep commentedsubscribe
Comment #26
pdcarto CreditAttribution: pdcarto commentedI'm trying to get mailhandler to work in Open Atrium, using the two feed mapper patches og.inc and spaces_og.inc (#16 & #22). The mail is coming in fine, but not getting mapped to the organic group (Message: "'' does not match a valid node title for Spaces OG Audience.").
The mapper is configured as follows...
I added the following debug statement in og.inc...
And see that $batch is empty...
I'm at a loss. Any suggestions?
Comment #27
jvieille CreditAttribution: jvieille commentedWhen importing items in the context of a group, they are correctly set in the group audience, but they are public. any way to control this, or is this a forgotten feature?
Comment #28
R.J. Steinert CreditAttribution: R.J. Steinert commented@jvieille The public checkbox is a separate field and would best go in another plugin, especially because this plugin is for Group Posts, not Group nodes. I would create a new feature request ticket.
Comment #29
jvieille CreditAttribution: jvieille commentedI don't understand: the public checkbox is on group posts, not group nodes (yes, we can set groups as public, but it is something else)
Comment #30
SocialNicheGuru CreditAttribution: SocialNicheGuru commentedI am using spaces_og which uses purl. can the purl settings be mapped using the patch in #16?
Comment #31
alibama CreditAttribution: alibama commentedjust imported ~40,000 users and they seem to be in groups now... except they're unapproved and there are several hundred groups = Views bulk operations only gives me the action to approve users of one specific group at a time = what's a good way to set the approval field?
checked the database, og_uid.is_active is set to 1 on all of the imports.. uncertain what is going on
Comment #32
pdrake CreditAttribution: pdrake commented@SocialNicheGuru - no, there isn't a purl mapper in the patch, just og and spaces_og
@alibama - I believe is_active=1 should be all you need. I wrote an action to approve users and used views bulk operations to bulk approve imported users.
Comment #33
alibama CreditAttribution: alibama commented@pdrake - thank you = I'm definitely running into something silly here - i'm going to test with http://drupal.org/project/feeds_ridmap since i see that all the og_uid.og_role values are set to 0... where is this action that you are talking about and does it work against all of the groups in a go? There's a fair chance that my problem stems from an unfamiliarity with OG in general.. so I apologize if this is off topic - my goal is just to have all the users imported and show up on the OG group nodes - I do have "hide membership" turned on, but I assumed that user/1 would be able to see everyone
thanks
ap
Comment #34
TommyK CreditAttribution: TommyK commentedUsing patch in #22. Attempting to add users to groups via feeds and an XML source.
Is the intended functionality to only add users to groups upon new user creation?
I have existing users being updated by feeds and none of them are getting added to groups upon import. There are no entries created in the og_uid table.
Comment #35
pdrake CreditAttribution: pdrake commentedIs your feed configured to update existing nodes? If so, it may be a bug in the implementation of this mapper.
Comment #36
TommyK CreditAttribution: TommyK commented@ #35
I'm actually using the User processor in Feeds for this particular one with the "Replace existing users" option checked.
Comment #37
twistor CreditAttribution: twistor commentedThis needs to go into OG, and first into 7.x
#1298238: Groups Audience field not available for Feeds Mapping.
Comment #38
achton@twistor: That implementation seems to be aimed at using entities and/or the Entity reference module. The 6.x backport would be very different from what will eventually come out of that.
Why not continue work on the approach in #22? It seems like what's left is ironing out the last few bugs, and you will end up with a solid OG groups import mapper for Feeds 6.x ...
Comment #39
achtonHere's a straight reroll of the patches in #16 and #22 against current 1.x-dev.
Comment #40
alibama CreditAttribution: alibama commented#22 still works for me, the others not so much - am testing against the latest dev
ok - actually none of these work - anyone working against the latest dev? Thanks
Comment #41
Rustan CreditAttribution: Rustan commentedFor anyone looking for how to get group membership import to work for D7, try latest dev of feeds, entityreference and possibly feeds_tamper if you need multiple groups.
Comment #42
twistor CreditAttribution: twistor as a volunteer commented