Currently, COD creates a View which displays all site users at "/community". This list is missing some functionality which would be very useful.

1. Rather than listing all site users, the list should only display people who have registered for the event. Or, COD should allow administers to easily create such a list.

2. Some people might want to remain discrete and not have their name listed anywhere on the site. Users should be able to opt-out of any public lists on the site. This means that they should be asked for this preference during user account set up. Any registrant lists should be able to filter these people out.

I'm going to work on these ideas and post more details about the best way to implement. Does anybody else have any ideas for attendee lists?

Comments

cafuego’s picture

A checkbox on the user account that lets users choose whether they want to be publicly listed is essential.

In Australia it is a legal requirement that users must opt *in* and not *out*. This is likely the case elsewhere too, (I expect Europe, for instance) so I'd advocate for defaulting to opt-in.

I've turned off the default profile lists on COD6 in the past and used a custom view instead, after adding a checkbox to the user profile. It would be nice if an attendee could choose the fields they want to make public.

sheldonkreger’s picture

Issue tags: +da_drupalcon

Cafuego makes an excellent point, and I also think opt-in should be the default set up.

sheldonkreger’s picture

Status: Needs work » Needs review
StatusFileSize
new21.79 KB

The attached patch adds a Boolean field 'user-user-field_profile_attendee_list' to the cod_base Feature. It also modifies the View which creates /community to filter only when this field is True. This means that, during user registration, this works as an opt-in function. So, there is a modification to cod_community Feature in this patch as well.

Note that before creating this patch, I applied #1 from http://drupal.org/node/1670284. This brings cod_base Feature to default, with no overrides. However, I did not roll this patch into mine. So, it might be best to apply them both when you test.

sheldonkreger’s picture

Tagging.

cafuego’s picture

Status: Needs review » Reviewed & tested by the community

Patch applies cleanly and works as advertised.

I might want to revisit wording (especially if and when more optional and private fields from #1673000: Define Required and Optional Data for User Profiles are added) but let's apply this first. Specifically it is probably worth noting that the user's name MAY be displayed on sessions and comments regardless of the list inclusion setting. That would usually depend on the theme and/or Realname module, but it's nice to let people know at this stage and not cause upsets for event organisers who hadn't realised that.

cafuego’s picture

Status: Reviewed & tested by the community » Needs work

Whoops, half works as advertised. I am unable to save the user profile if I uncheck the box :-)

One fix is to make the field optional, but I think better would be to keep it mandatory and change the widget to a radio button with two options. That way no delegate can ever claim to not have explicitly set this option.

( ) No, you may not publish my name on any attendee lists and other users may not view my profile information.
( ) Yes, you may include my name on attendee lists and other users may view my profile information.

ezra-g’s picture

If this profile field is used specifically to filter the COD Attendees view, then it should be exported as part of the feature that defines that view.

I suggest that the text for this checkbox limit its scope of commitment to talk only about the attendee view or other places we explicitly restrict privacy.

Text such as what's proposed in #6 imply an increased level of access control that, at least currently, we're not providing. Introducing text that makes a commitment about user privacy and doesn't enforce it everywhere user information can be displayed would constitute a security vulnerability.

sheldonkreger’s picture

I placed the field inside of cod_base since that's where all of the other fields relating to user profiles is stored. My next patch will place it inside of cod_community, as requested by ezra-g. No problem there.

How about the following text for the checkboxes:

[]Yes, I would like to be listed in the public list of attendees.
[]No, I prefer to be omitted from the public list of attendees.

ezra-g’s picture

Could we just have a single checkbox that defaults to "Include me in the public list of attendees?"

cafuego’s picture

As long as it doesn't default to checked, sure :-)

sheldonkreger’s picture

StatusFileSize
new18.71 KB

Moved the filed to cod_community and created a single checkbox, as requested by ezra-g.

Note that before creating this patch, I applied #1 from http://drupal.org/node/1670284. This brings cod_base Feature to default, with no overrides. However, I did not roll this patch into mine. So, it might be best to apply them both when you test.

ezra-g’s picture

Marking as "Needs review".

sheldonkreger’s picture

Status: Needs work » Needs review
StatusFileSize
new19.4 KB

Now defaults as unchecked. I also added a filter to the attendees view which ensures that blocked users are never listed on the attendees list.

Note that before creating this patch, I applied #1 from http://drupal.org/node/1670284. This brings cod_base Feature to default, with no overrides. However, I did not roll this patch into mine. So, it might be best to apply them both when you test.

twardnw’s picture

Status: Needs review » Needs work

Patch applies clean but is missing the field.

sheldonkreger’s picture

Status: Needs work » Needs review
StatusFileSize
new21.89 KB

Forgot to commit the field file to git. This time, it's there!

Again, note that before creating this patch, I applied #1 from http://drupal.org/node/1670284. This brings cod_base Feature to default, with no overrides. However, I did not roll this patch into mine. So, it might be best to apply them both when you test.

twardnw’s picture

Might want to make the field title and description be a little more specific.

Perhaps 'Opt-in to attendees list' and 'By checking this box you will be included in the public list of attendees'

sheldonkreger’s picture

StatusFileSize
new19.3 KB

It looks like some of the permissions in cod_base were modified in the latest round of commits. I was getting "NEEDS REVIEW" on them. I chose to revert, but was still getting "OVERRIDDEN." So, I applied #1 from http://drupal.org/node/1670284 and now cod_base is default. I don't think any of those permissions were relevant to the patch I am submitting now.

This patch makes the checkbox text a bit more clear.

sheldonkreger’s picture

StatusFileSize
new19.3 KB

Same as above, but with the correct file name for the patch.

twardnw’s picture

Status: Needs review » Needs work
StatusFileSize
new31.9 KB

On a brand-new fresh install, patch applies clean but shows overridden immediately. Thanks to a tip from Ezra, diff tells me what it is, screenshot attached.

twardnw’s picture

Status: Needs work » Needs review

nevermind, ignore that, I was looking at the wrong item. Re-reviewing now

sheldonkreger’s picture

StatusFileSize
new28.22 KB

Git missed my fields.inc changes on the last patch. This one should work 100%.

twardnw’s picture

Status: Needs review » Reviewed & tested by the community

Patch applies clean, user which does not check 'include me in the list' is *not* shown in the attendees list.

primerg’s picture

Status: Reviewed & tested by the community » Needs work

I'm testing this for #1673000 but im using this release http://drupal.org/sandbox/twardnw/1689806
can we re-roll to use twardnw sandbox or am i doing this wrong? (if Im doing it wrong, put this back to RTBC please)

my mistake. didn't see this was already committed in the sandbox.

primerg’s picture

Status: Needs work » Reviewed & tested by the community

reverting back status.

cafuego’s picture

Status: Reviewed & tested by the community » Closed (duplicate)