I have users with multiple roles. They receive one role when they register at the site, and another role when they pay their membership. I'd like to be able to contact those that have registered but not paid.

Comments

patcon’s picture

Whoa. I'm looking for the exact same thing for the exact same reason.

BelliLint’s picture

We ended up writing our own code to run through the user list and assign a temporary role of "Registered but not paid" and then we mass contact that role. Unfortunately, we have to rerun the script each time in order to get an up-to-date list. We have more e-mailing needs, like e-mailing those from a particular province (a field in their Profile). I wish there were something avaiable with more flexibility for keeping contact with users.

patcon’s picture

Oh hey, thank BelliLint! It would be great if mass contact could use a user-based view to send emails... That would be crazy-versatile. I might give your method a shot though. Thanks again!

oadaeh’s picture

Version: 6.x-1.0-beta2 » 7.x-1.x-dev
Component: User interface » Categories

Thanks to ygerasimov, the 7.x-1.x version of Mass Contact now utilizes the Chaos tools suite (ctools) plugin system. I will reexamine this and realted issues with that plugin system in mind to determine whether to create a plugin for this request or not.

oadaeh’s picture

Marked #1824386: Roles not to receive contact as a duplicate of this.

odisey’s picture

Why write code? Drupal has everything you need to perform the tasks you described, without extra code. Do this: I expect your PAID roles have a role assignment that indicates that they are paid in addition to being an authenticated user, and your non-paid members are probably just authenticated users. Using a program such as Mass Contact and the Users Sort feature in Drupal (Admin > Users) you can easily target the group you want to contact.

1 Create a role "NOT_paid" to target a group to receive the notification.
2 Go to user management and give every user that new role.
3 Next run a new filter and filter out the group that has the PAID role.
4 Then remove the "NOT_paid" role from that group so they are now PAID and Authenticated, but not "NOT_paid."

You should have a group sharing the "Not_paid" role to target through Mass Contact now.

5 Send your message!

Run this operation each time you want to send out a new mass message to ensure the group is updated.

Hope this helps someone,
Odisey