[Introduction:]
If you create a group you're asked how Membership request should be handled. 4 options are shown:
open - membership requests are accepted immediately.
moderated - membership requests must be approved.
invite only - membership must be created by an administrator.
closed - membership is exclusively managed by an administrator.

The 3rd option: Invite only, means an administrator should be able to either invite users to join the group, or (less friendly) just simply add users to a group.

[Problem:]
The way it's now working: as adminstrator you can't add nor invite a user to a group in a simple way.

[Work around (already working, but not convenient at all):]
The only option is to enter this link in the adress bar: http://www.foobar.com/drupal/og/approve/[group_id]/[user_id]

[Request:]
Adding/inviting users as group administrator should be easy and convenient.
An add/invite-user-to-group-form, where you can select user(s) and group(s) to join/invite, accessible by link from the Group Details Block. This would do the trick.

[Other Error:]
The other (not working) way is to invite a user with this url: http://www.foobar.com/drupal/og/invite/[group_id]
Here you'll see a form where you can send users an invite over email by username or emailadres. The mail gets send, but when the invited user uses the invitation link, he'll gets to see an 'You're not authorised'-page. This is becouse the group is set as an "invite only"-group??? <- looks like some wrong access settings..

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

moshe weitzman’s picture

Invite feature is indeed lacking. We first need to define what we want and then do it. Screenshots from similar systems are helpful. When I started this, there was only Yahoo groups but now every damn site offers groups.

migs87’s picture

FileSize
168.26 KB

We first need to define what we want and then do it. Screenshots from similar systems are helpful.

What do you mean with this.

And for the others reading this, maybe this attachment makes things clearer.

migs87’s picture

Version: 5.x-8.x-dev » master

I just found out there's another (more convenient) workaround:
http://www.foobar.com/drupal/og/users/[group_id]/add_user

Here you'll find an textarea in which you can add usernames seperated by comma.

I didn't even know this function was in the OG module.
Even more reason to add the Add users to the Group Detail Block.

marqpdx’s picture

Moshe,
I'm new-ish to OG's, but Invite is something i've been mulling for a long time. Here's how a client of ours needs it:

1. From within the group, the group admin can invite any current site members to join their group. invitee can accept or not.

2. From within the group, the group admin can invite anyone who has an email address. If said person already has a site account, they can use their account to join the group (in essence transferring the invitation from email address to site account themselves); otherwise, there should be a seamless, one-step action of { Join Site + Join Group You Were Invited To }.

3. Group admin can designate the ability to perform steps #1 and/or #2 to any group members

4. Superusers/Site Admins can invite anybody to any group, using both methods above.

5. Ability to invite should allow multiple recipients, and should allow a customizable invite email letter, and ideally could be a mix of email addresses and/or site usernames.

6. Ability to invite new users to the group should not be limited by the group's Visibility/Privacy level. I would like to do this for any kind of group, Public or Private, that i want to. This would also keep implementation a tad simpler.

Use Case: I teach workshops through a group called Street Yoga. In our work, we will hold a weekend training for about 20 people. At some point, either before or after the training, i want to invite all the attendees (and only the attendees) into a group just for the people in that training. I want to send one email to all 20 participants, and then use OG as a gathering place for post-training discussions etc.

It's possible some of that is already available within OG, but i'm guessing from this thread that at least all of it is not.

Thoughts?

thanks,
m

meba’s picture

Invitation functions are already available, don't they? 6.x version is just missing links in the block

meba’s picture

The problem is that if you set the group to Invite only, $node->og_selective is 2.

And in the og_block_details, you have if ($node->og_selective < OG_INVITE_ONLY) ... { display link }
OG_INVITE_ONLY is 2

therefore the link is not displayed if it's invite only :) only if it's open or moderated

scottrigby’s picture

Hi Moshe,
Is there a way to configure an action to send an invite link to selected users, using something like the flag, or user relationship modules?

scottrigby’s picture

I've posted a new issue related to the above comment ^^ ...here: #328758: how to add 'invite to group' link in views?
which asks about what seem like several possible options - because of this the question is unfocused - but the point of that issue (to be able to invite specific users in a more user-friendly way) is the same as the comment above. Thanks in advance for any advice you have on this :)
Scott

jogebau’s picture

is somebody actually working on this? this really is a critical issue for me, and i guess for others as well, as it is a standard functionality in web 2.0 communities...

any help appreciated

edit: from what i read above, it seems to me that even a simple patch would solve it? im not a programmer myself, so im guessing

moshe weitzman’s picture

Status: Active » Closed (duplicate)
dhestlund’s picture

#4 is exactly what we need. I don't understand why the "invite" link would be hidden on an "invite-only" group, but I've heard that happens. That's not the case for me. The link is there, it sends an invite email with a link, and the user gets an access denied error.

CarbonPig’s picture

Bump - I've installed OG and when you make an invite only group the invite link isn't present in the block - It is present when you create a moderated group.

Has anyone solved this link/invite issue for 6.x?

Thanks,

CarbonPig

Stoob’s picture

Wow, it is really shocking this issue has not been corrected. Why is "invite only" even an option if it doesn't work?

jday’s picture

this seems to be a bug more than a feature request, if you can create a group that is invite only, you should be able to invite people.

Showing the invite link in the group block is easy to fix but once the invitee clicks on the invitation link, they are presented with a page that says: "access denied" - because the group is invite only!

I've been combing the issues cue for a solution to actually let people accept the invitation to join, so far no luck.

mstef’s picture

Title: Issues Problems with Invitations, Group Types, Access, etc.. » Invite only groups, should have an invite user possibility
Category: bug » feature
Status: Active » Closed (duplicate)

OG needs a real invitation system. Something like the 'request new password' system which emails the user a token that is active for x hours/days that can get them into the system.

I'd be willing to write this because a project I'm working on needs to have closed/private groups which admins can invite members to.

Another issue, which correct me if I'm wrong about it, is that group admins can add members to a group regardless of the user's choice. Should regular users be granted the power to move other users into groups they didn't request?

mstef’s picture

This also leads us to ask what the difference between INVITE_ONLY and CLOSED is? Cause I see no distinction at all..

mstef’s picture

Title: Issues Problems with Invitations, Group Types, Access, etc.. » Serious Problems with Invitations, Group Types, Access, etc..
Assigned: Unassigned » migs87

OG ISSUES:
==================

1) Any group admin has the complete power to add any other site user to their group

2) Invites aren't available for "Invite Only" and "Closed" groups

3) If an admin invites a user to a moderated group, the user's request to join remains moderated and still has to be approved

4) Users have no ability to request membership to a moderated-private group

5) Inviting a user to a moderated-private group gives invited user an "access denied" message

6) There's no difference between invite-only and closed

7) Non-group members can always comment on viewable group nodes

8) Non-group members can always vote on viewable group polls

9) OG ships with the og_search view that is missing a Page display. That results in search submissions just redirecting to the home page. The view also sorts by Post Date instead of search score. That shouldn't be.

-----------------

SOLUTIONS?:
==================

1) Group admins cannot add any users to a group

2) Implement an invitation system which will email the invited user a link with a token/key which will grant them acceptance into the group, if clicked (similar to 'request a new password')

3) See 2

4) If a group is moderated-private, don't make the group homepage an "access denied" is user is not a member. Instead, give a form which the user can request membership

5) See 2

6) See 2 and remove "closed" group type. If an admin wants to invite someone, why stop them. They could always just change the group to "invite only".

7) Option on group creation/edit form to disallow this

8) See 7

9) Ship with a correctly configured view.. (see http://drupal.org/node/333072#comment-3059310)

mstef’s picture

Title: Invite only groups, should have an invite user possibility » Issues Problems with Invitations, Group Types, Access, etc..
Category: feature » bug
Status: Closed (duplicate) » Active
akeane’s picture

Title: Invite only groups, should have an invite user possibility » Issues Problems with Invitations, Group Types, Access, etc..
Category: feature » bug
Status: Closed (duplicate) » Active

subscribe

liquidcms’s picture

subscribing

christo’s picture

Version: master » 6.x-2.1
Assigned: migs87 » Unassigned
Category: bug » feature

subscribing

christo’s picture

Version: 6.x-2.1 » master
Category: feature » bug

Whoops, changed some values I shouldn't have, sorry, didn't even know I could do that. I changed them back except I cannot set the Assigned back to migsharding.

After installing OG 6.x-2.1, and finding the "whoops -- no invite functionality for 'invite only'", I then researched on Drupal.org and found many, many posts on several threads related to the issue in addition to this core thread on the topic started by Moshe. It's clear that there are multiple people working in parallel on this issue with patches, add-in modules, and a forking development in the Invite module.

This is all very confusing to people new to the Organic Groups module as the history has gone over years here with continued reports, multiple patches posted for various Drupal 5.x and 6.x versions and OG versions within those, and no clear set of work-arounds or time references. I posted a query, but then did further experimentation, and I believe I have a reasonable set of work-arounds using the existing modules. I am editing this post to provide that guidance in hopes it helps other OG newbies such as myself who find this issue and get scared that OG is worthless.

I updated to the current build of OG 6.x-2.x-dev last night. It is even more badly broken in one way as not only does it suffer from the same lack of built-in support for actually sending invitations, but it also has the "Open" membership radio button on the Membership Requests configuration in new Group Node creation disabled, and has the "Access Denied" issue with both Moderated and Invite Only membership request setups. The OG 6.x-2.x-dev build does, however, have the very nice additional feature that one can simply re-assign group node ownership, and when that ownership is re-assigned, an e-mail message to the new owner can be generated automatically. After additional research on the topic, I found the Organic Group Registration Keys module. That module does at least add in the simple abiity for someone to send out invitations with a link and a registration key, and a couple of other nice features like automatic role assignment on registration with a key.

As far as I can tell, as of the date of this post, sticking with the released OG 6.x-2.1 if you need "Open" groups, but goinging for the OG 6.x-2.x-dev build if ownership re-assigment is more important, installing the OG Registration Keys module, and modifying the invitation e-mail template to provide a link to the registration page along with the registration 'key' (it's a password type thing) seems to be the most workable setup. The OG Registration Keys module handles invitations well, using just e-mail addresses. If you modify the e-mail template for the invitation to direct a user to your site's registration page, the "Access Denied" issue that occurs with a link to the group node is circumvented. This does leave open the issue of inviting already registered users to a new group via e-mail, but at least for my uses that can be simply handled by just adding the users to the groups and dealing with notifications using manually generated e-mails.

I would dearly love to hear from anyone that has more experience with OG and group invitations that has a better idea on how to do this. I believe what I have now will suffice for my immediate project, but it certainly is limited in the general case, and I expect it will mean I will have extra sysop duties with this site until the customer admins get a little more savvy.

Also, to anyone working on the OG 6.x-2.x-dev build, could you tell me if I missed some setup, or if there is a simple work-around for the disabled "Open" membership request type? I foresee needing that for an upcoming project.

NathanM’s picture

Title: Serious Problems with Invitations, Group Types, Access, etc.. » Issues Problems with Invitations, Group Types, Access, etc..
Assigned: migs87 » Unassigned

Subscribing

We are going on 2 years now, and there doesn't even seem to be a concrete strategy outlined to tackle this problem.

liquidcms’s picture

i thought appropriate here; sorry if it isn't.

i just wrote a new module for a client who needs to allow group admins to invite users (to any type of group) and let those users automatically be added to the group if they select the url that is included in the invite email they were sent. If there is any interest i can post the module here. Debating on the name though; anyone mind if i call this og_invite (currently it is called caubo_invite as caubo is the client's name)?

my approach was this:

- create a new "Send og invite email" action which can be then used in VBO to bulk invite users
- the email which gets sent uses the standard OG Invite tpl but replaces the !group_url token with one that has a hash key specific to the user it was sent to (e.g.: http://caubo.peter/og/subscribe/2875?key=f19589a35e8bd55a1c3ab8ea50b6eba5)
- alter where the og/subscribe path goes to, to go to custom callback.. hmm.. not sure why i did that now; maybe my own callback would make more sense??

The rest of the flow is pretty much as you would expect:

- if not logged in when selecting link; takes you to login page and reminds you to re-click link in email once you have logged in
- if logged in as someone else; tells you that was not the link that was sent to your email address
- if logged in as the person matching the hash in email's link then you are taken to a page asking if you want to join the group
- selecting yes; takes you to group home page stating you are now a member.

I think this is secure and works pretty well. :)

NathanM’s picture

Sounds exciting, and og_invite is an appropriate name.

liquidcms’s picture

FileSize
6.96 KB

still named caubo_invite and still overriding og_subscribe callback.. but in case anyone wants to try it out.

RJL-dupe’s picture

Hi,
Thanks very much for the module- I'm hoping it'll fill a critical need I'm having. I'm new at Drupal, so I'm sure I'm overlooking something. I've successfully installed the module but don't see how it's used. When I attempt to have a group administrator add a user to a group by clicking the Add Member tab, the resulting form does not accept email addresses (only user names which admins will not have access to). I see no special block that the module has added nor any specific permission that needs to be set. Any guidance will be appreciated. Thanks again.

liquidcms’s picture

@rjl - yup, sorry this isn't a complete solution module; it simply adds an "Action" which can then be used by other modules. The typical case would be to make a VBO (views bullk operations) View that lists users. It would be possible to add this as a tab to your group home page.

There is (sort of accidentally) an export of such a view in the zip but it may have things in it that are specific to my client's site so may not exactly work for you.. but likely pretty close.

the "action" needs to be run from something like a Group view (i.e. a view which is set up as a tab off the group page) such that the group context is known to the action - it needs this to know which group you are inviting to.

a bit more to go into than makes sense here.. but we are always available for hire if you need to set up such a View on your site.

RJL-dupe’s picture

Thanks for the clarification.

ailgm’s picture

subscribe

eclauset’s picture

subscribe

bmango’s picture

Subscribe

dleatham’s picture

Christo - thanks for taking the time to do the write-up. Very helpful. One correction, I couldn't find a "Registration Keys" module so I'm assuming you are talking about the "Registration Codes" module.

For other newbies, I would like to add one caveat about the OG Registration Codes module. It is not clear until you install the module that the Group Admin has to take an active role in generating, managing, tracking, expiring, deleting codes for their group. In my particular application I have to assume that my OG Group Admins are somewhat "unsophisticated" (site is targeted to an elderly demographic.) I can't afford the learning curve, training, support, etc that will will accompany the use of the Registration Codes module by each and every group admin.

I was hoping that the Registration Code module would generate invitation links with an embedded code that was tied to the group admin's current group context at the time that the group admin sent out the invitation. This is not the case. Instead there is an intensively manual process for managing collections of codes.

If someone is looking for a workaround to the amazingly unfortunate state of this invitations-don't-work for invitation-only groups debacle, be aware the Registration Code module comes with some significant strings attached.

jp2020’s picture

Title: Issues Problems with Invitations, Group Types, Access, etc.. » Subscribint

Good thread.

ailgm’s picture

Title: Subscribint » Issues Problems with Invitations, Group Types, Access, etc..

(just fixing title from last change)

usonian’s picture

subscribing

DrupalCuckoo’s picture

Is there any good solution on how to make "Private Groups" with an "Invite User" Option that works?

best regards

dleatham’s picture

I've been struggling with this bug for about six months now and have found no viable work-around or solution.

Where this thread deals with this bug and a range of related issues, there is a specific issue that is focussed only on getting Private Groups and Invite User options to work: http://drupal.org/node/783824 There is no real discussion or progress on that thread but it is a growing list of people that are interested in seeing this get fixed. I encourage all to subscribe to that thread so that we can get it elevated in importance.

Stoob’s picture

keen to see this fixed ASAP. Will pay $

Dean Reilly’s picture

subscribing

acgrama’s picture

Subscribing.

liquidcms’s picture

Anyone tried out the solution i posted in #26 above? We are using this quite successfully on a pretty large site.

chuckbar77’s picture

subscribing

jmcintyre’s picture

Subscribing.

MacaroniDuck’s picture

Dozens of people seeking this (and that's just the ones that have taken the time to post). Some even offering to throw money at it. Over three years of discussion in multiple threads; some of which indicate the maintainers no longer have any intention of addressing this. This kind of feature is imperative for anyone seeking to develop a social networking type site (and others I'm sure) and OG is perfect for these kinds of sites... apart from this particular bug/oversight/whathaveyou.

Sure doesn't look hopeful, but here I am subscribing. Maybe my +1 and offer of a drink to the person that finally comes through will be the one that finally tips the scale!

vasi1186’s picture

FileSize
51.96 KB

Hi there,

maybe this sandbox project will help you: http://drupal.org/sandbox/vasi/1082946 . I created a module that is capable of sending invitations on mail, but instead of having the default og/invite link, the mails have a hashed link. When the user clicks the link, and he is not logged in (so he will get an access denied page), then the user, based on the hash of the link, will be automatically logged in and becomes a group member.
Now, there are only a few commits, but the main functionality is implemented and tested by me. There may be also some other interesting features that I can add (maybe you can also come with suggestions) and in order to create a full project, I will need help for testing from other members. It would be really good for me if you ca give me some feedback.
I will also attach a version of the module here, but for the latest changes, please see the sandbox project page that I gave you above.

Vasi.

mstef’s picture

@vasi1186:

You're on to something - nice work so far. But, I'm seeing some issues...

1. Attaching the UID to the invites is a good idea for extra security, but it then makes it impossible to invite people who are not yet site members into a group (and of course, the site itself). This could easily be a desired feature (it's something I need). I know that brings up issues like having to check the site settings for registration policies, persisting the invitation link throughout the site registration workflow, etc. It does seem like it's almost not feasible.

2. If this module is going to make sense, it has to override the invitation links and pages provided by OG (completely doing away with the current, broken implementation). You can override the invite link on the group details block with hook_og_links_alter() and the page callback with hook_menu_alter().

3. I see that only group admins can use the invite form provided by your module. In conjunction with #2, I think all group members should be able to use it - but the resulting action should probably vary depending on whether or not the inviter is a group admin or not. If a group admin sends an invite, the invitee should be added to the group automatically after following the link.

4. If a user is invited to a group, joins, then later leave, they cannot be invited again; they should be able to though - why not? Also, I think even if the user hasn't accepted the invitation yet they should still be able to be invited again (what if the email was lost?).

5. The invite form has bad validation - it doesn't warn you that you entered an invalid username (it just says 0 users were invited).

6. Not a big deal, but line 83 of og_invite_link.pages.inc should use db_placeholders() instead of implode().

7. The way you handle includes is a little unorthodox (also don't understand what model is). Well - not really worth getting into right now... (no big deal)

---

Are you planning on continuing to develop and maintain this, create a full drupal project? Would you consider allowing someone to join as a maintainer?

---

This is a general question: I still don't get the difference between Invite Only and Closed ; did anyone answer that yet?

vasi1186’s picture

@mikestefff

Hi Mike!, thank you very much for your feedback!. Yes, I plan to work on this module, and any help is welcome. During the week I am quite busy, so I will work mostly in the evenings, but in the weekend I can work, debug, fix etc. the module.
I would also like to put all the features and bugs in the issue queue: http://drupal.org/project/issues/1082946?status=All&categories=All
If you want to also commit code to git, I can give you the url repository.

Vasi.

mstef’s picture

Will do. Please check out #1095310: Many suggestions and much progress made.

I'm assuming most people on this thread will want to see what was done, and watch the project for some stable commits.

acgrama’s picture

Thanks Vasi and Mike, this is exactly what I was looking for! I will be following the updates to this module.
(I have tested it out and I haven't received the invitation email yet, but that might be because of some other issues at work in my installation)

mstef’s picture

Yea if you didn't receive an email, that's a server issue.

I've made a few commit recently - what's in there now in the 6.x branch should be relatively stable; but there will probably be some bugs popping up. Let's take this over to the issue queue for that module, if anything does come up.

@everyone: http://drupal.org/project/og_invite_link

vasi1186’s picture

FileSize
8.83 KB

A much better version, almost ready for release, you can find attached.

mayb123’s picture

Subscribe

Grayside’s picture

Version: master » 6.x-2.x-dev
Status: Active » Postponed (maintainer needs more info)

There's also the http://drupal.org/project/invite module in this space, trying to be a generic answer.

I have not followed every other issue to see the historic maintainers' position, but as far as I can tell nobody ever put forward a patch to actually correct OG. It would be good to take OG to the point where it's functionality around Invite worked minimally, and OG Invite Link (or a more general OG Invite) module could then extend it into a richer feature set.

Marking Needs Info to entice some kind of status report about the current state of Invites in OG.

greggles’s picture

Priority: Critical » Normal

Given that http://drupal.org/project/og_invite_link and http://drupal.org/project/invite exist, I think it's fair to say that this is not a "critical" issue any more.