- Compatible XF Versions
- 2.1
- 2.2
- Additional Requirements
- PHP 7.2+
This add-on allows your members to create and maintain multiple contact lists that can be used when creating a new conversation or thread. Contact lists can be useful for admins to start a personal conversation with all their moderators at once, or all their sponsors, etc. It's also useful for normal members that want to maintain contact lists for friends, or for members they consistently role play with, or to contact all staff, etc.
You can demo this add-on here: demo and test it here: playground
Edit: see update 1 for new features, bug fixes, and new screen shots.
Features:
Options:
Forum->Nodes->selected node->Allow contact lists to be used in this forum
if set, threads can use a contact list for this forum, if not set, no contact lists will be used.
Setup->Options->EAE Contacts
contains five basic options for displaying members of a contact list:
List contacts when creating a conversation: defaulted checked (recommended).
if not checked, the contact list chooser will only display the title of each list. If checked the members of each list is displayed under each contact list title.
List contacts when creating a thread: defaulted not checked.
works as above. Although checked is fine, the thread create form looks a lot cleaner without the list of contacts under each contact list title option.
Display list of contacts when viewing a thread: defaulted checked.
If checked, a list of contacts will be displayed above the thread similar to how recipients are displayed above a conversation. This causes one additional query when viewing a thread, but is recommended.
Maximum contacts to list: defaulted to unlimited.
Maximum number of contacts to show when viewing a thread before 'x more...' is displayed. This setting is ignored if you chose not to display a list of contacts when viewing a thread.
Replacement title:
Title to be shown when 'display list of contacts when viewing a thread' option is not selected. Example: Invited participants only. Leave blank to not use a replacement title.
Permissions:
Groups & permissions->User group permissions->Registered->EAE Contact permissions
View own contact lists: defaulted to conversation Start conversations permission.
Setting this to no is a quick way of removing the use of contact lists from a member or group of members.
Create contact list: defaulted to conversation Start conversations permission.
Setting this to no will prevent members from creating contact lists, or further contact lists (if they could).
Can use contact lists when starting a conversation: defaulted to conversation Start conversations permission.
Allows members to use their contact lists when starting a new conversation, or prevents them from doing so.
Can use contact lists when starting a new thread: defaulted to forum Post new thread permission.
Same as the above permission but applies to threads. A forum must be set to allow contact lists.
Can change own contact list when editing a thread: defaulted to forum moderator Lock/unlock thread permission.
This permission should only be used by administrators or moderators, otherwise it may be abused. If set, members can change their selected contact lists for a thread they have already created, or add a contact list to an existing thread they own that did not have one previously. Note: this permission depends on the forum Time limit on editing/deleting own posts permission value, and it was added in case a thread starter noticed that they selected the wrong contact list by accident.
Maximum contacts per list: defaulted to 5.
Number of contacts a list can contain when adding members to a contact list. This value should be equal to the conversation recipients. If it is greater, members starting a conversation will get a too many recipients error, unless they have the bypass maximum conversation recipients set to allow.
Bypass maximum conversation recipients limit: defaulted to general moderator Bypass user privacy permission.
Allows all contacts from a list to be used when starting a conversation, over-riding the maximum conversation recipients value. This is required if the number of contacts allowed per contact list is greater than the number of conversation recipients value. If a user group can have unlimited conversation recipients, be sure to set this to bypass and set the number of contacts to unlimited.
Maximum contact lists: defaulted to 3.
The number of contact lists a member may create.
Phrases:
All phrases are prefixed with eae_ct_
Screen shots:
You can demo this add-on here: demo and test it here: playground
Edit: see update 1 for new features, bug fixes, and new screen shots.
Features:
- number of contacts per list and number of contact lists created are user group based
- admins can select which forum(s), if any, can use contact lists
- admins can also set the permissions to where contact lists can be used: threads only, conversations only, or both, per user group
- threads created that use a contact list can only be replied to by members of the selected contact list, and the thread starter. Members removed from the list will no longer be able to reply to the thread, while a new member added to the contact list will be able to
- if given the option the thread starter can switch contact lists (for as long as they can edit the thread), or remove the contact list from the thread which will open it up to anyone that can reply
- alerts are generated for members of the contact list when a thread is created. If the contact list is changed after thread creation, the alerts are deleted and new ones generated for member's of the new contact list used (if any)
- merged threads will use the contact list of the target thread, if applicable, if not, no contact lists are used for the merged thread
- if a thread with a contact list is moved to a forum that does not allow contact lists, the contact list selected is maintained but not used. This allows moderators to move a thread to a different forum for discussion, and then move it back preserving the contact list
- admins and moderators can not change another members contact list for a thread, they can remove the contact list to open the thread up to all that can reply
- merging users will use the target users contact lists. Threads with a contact list from a user that was deleted will be set to not use a contact list, opening the thread up to all that can reply
- if set, a list of participants of a thread with a contact list is displayed below the thread starter info and tag line. If not set, admins can use the option to display a line of text instead, for example: invited participants only
Options:
Forum->Nodes->selected node->Allow contact lists to be used in this forum
if set, threads can use a contact list for this forum, if not set, no contact lists will be used.
Setup->Options->EAE Contacts
contains five basic options for displaying members of a contact list:
List contacts when creating a conversation: defaulted checked (recommended).
if not checked, the contact list chooser will only display the title of each list. If checked the members of each list is displayed under each contact list title.
List contacts when creating a thread: defaulted not checked.
works as above. Although checked is fine, the thread create form looks a lot cleaner without the list of contacts under each contact list title option.
Display list of contacts when viewing a thread: defaulted checked.
If checked, a list of contacts will be displayed above the thread similar to how recipients are displayed above a conversation. This causes one additional query when viewing a thread, but is recommended.
Maximum contacts to list: defaulted to unlimited.
Maximum number of contacts to show when viewing a thread before 'x more...' is displayed. This setting is ignored if you chose not to display a list of contacts when viewing a thread.
Replacement title:
Title to be shown when 'display list of contacts when viewing a thread' option is not selected. Example: Invited participants only. Leave blank to not use a replacement title.
Permissions:
Groups & permissions->User group permissions->Registered->EAE Contact permissions
View own contact lists: defaulted to conversation Start conversations permission.
Setting this to no is a quick way of removing the use of contact lists from a member or group of members.
Create contact list: defaulted to conversation Start conversations permission.
Setting this to no will prevent members from creating contact lists, or further contact lists (if they could).
Can use contact lists when starting a conversation: defaulted to conversation Start conversations permission.
Allows members to use their contact lists when starting a new conversation, or prevents them from doing so.
Can use contact lists when starting a new thread: defaulted to forum Post new thread permission.
Same as the above permission but applies to threads. A forum must be set to allow contact lists.
Can change own contact list when editing a thread: defaulted to forum moderator Lock/unlock thread permission.
This permission should only be used by administrators or moderators, otherwise it may be abused. If set, members can change their selected contact lists for a thread they have already created, or add a contact list to an existing thread they own that did not have one previously. Note: this permission depends on the forum Time limit on editing/deleting own posts permission value, and it was added in case a thread starter noticed that they selected the wrong contact list by accident.
Maximum contacts per list: defaulted to 5.
Number of contacts a list can contain when adding members to a contact list. This value should be equal to the conversation recipients. If it is greater, members starting a conversation will get a too many recipients error, unless they have the bypass maximum conversation recipients set to allow.
Bypass maximum conversation recipients limit: defaulted to general moderator Bypass user privacy permission.
Allows all contacts from a list to be used when starting a conversation, over-riding the maximum conversation recipients value. This is required if the number of contacts allowed per contact list is greater than the number of conversation recipients value. If a user group can have unlimited conversation recipients, be sure to set this to bypass and set the number of contacts to unlimited.
Maximum contact lists: defaulted to 3.
The number of contact lists a member may create.
Phrases:
All phrases are prefixed with eae_ct_
Screen shots: