Admidio / admidio

Admidio is a free open source user management system for websites of organizations and groups. The system has a flexible role model so that it’s possible to reflect the structure and permissions of your organization.
https://www.admidio.org
GNU General Public License v2.0
336 stars 131 forks source link

Write mail to lists [$80] #363

Closed papierkorb27 closed 8 years ago

papierkorb27 commented 8 years ago

Regarding to http://admidio.org/forum/viewtopic.php?f=2&t=6836

Maybe there is a possibilty to extend the existing function to write a message to a role to write a mail to a list.

Example: user 1 want to sent a message to all users which have their birthday in the next 40 days. Now he can generate an own list with a condition in the birthday field but he have to export the mail adresses from the result to an external mail client formatted as csv for example. He can not use the well working internal mail function like writing to a role.

Example 2: the user has a field "subscribe newsletter" in his profile. If the mail to list function would be exist, the management could easily generate a list with all users which subscibed and write a newsletter with the internal mail function. If you use a own role for the newsletter recipients, the user can't unsubscribe by himself from the list.

--- Did you help close this issue? Go claim the **[$80 bounty](https://www.bountysource.com/issues/35303965-write-mail-to-lists?utm_campaign=plugin&utm_content=tracker%2F10474012&utm_medium=issues&utm_source=github)** on [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F10474012&utm_medium=issues&utm_source=github).
Fasse commented 8 years ago

This feature should be implemented for the configured and saved own list. The feature should not be implemented for the filtered users within a list view because this filter is not saved in database so there is no easy way to get the filtered users within the mail module.

wilddom commented 8 years ago

It's already possible to send one user id in a get request to the mail module, so how about just allow submitting multiple user ids? This would allow to easily prefill the users in the mail module even from dynamic lists.

Fasse commented 8 years ago

Wie kann hier eine mögliche Lösung aussehen?

@rmbinder würde dies gerne umsetzen, wenn wir eine gescheite Lösung finden.

wilddom commented 8 years ago

@Fasse Eine Alternative wäre es doch, dass die user_ids per POST übermittelt werden müssten.

Fasse commented 8 years ago

Ok, man könnte die Übertragung mit POST machen. Dann sollte man aber auch vorsehen, dass sowohl Rollen als auch User übertragen werden.

$recipientsIds = 'user:1,user:45,user:43,user:78,role:2,role:5';

um die Übergabe kürzer zu machen könnte man auch diese Syntax nutzen: $recipientsIds = '1,45,43,78,role:2,role:5';

In messages_write müsste man das dann für die selectBox transformieren. Außerdem müsste man dort dann das Auswahllimit ignorieren, wenn der Parameter $recipientsIds gesetzt ist.

rmbinder commented 8 years ago

Warum Rollen und User übertragen? Wenn man über Listen in der Ansicht "Übersicht der aktiven Rollen" ist, kann man über den Button "E-Mail an Mitglieder" auch nur an eine (einzige) Rolle die Mail senden. Hinzufügen von Einzelpersonen ist bei mir nicht möglich.

Wenn ich eine sehr komplexe Liste erstelle, basierend auf mehreren Rollen, mit Beziehungen und gefiltert (Zeitraum) möchte ich doch genau an die Personen des Ergebnisses meine Mail schreiben und nicht an weitere Rollen oder Einzelpersonen. Es würde somit reichen, nur die user_ids der angezeigten Liste zu übertragen.

papierkorb27 commented 8 years ago

Ohne jetzt tief technisch in der Materie zu stecken: rmbinders Kommentar leuchtet mir ein, ich wähle ja bei der Generierung der eigenen Liste neben den Bedingungen schon eine oder mehrere Rollen aus, die User aus dem Ergebnis dieser Abfrage sollten dann ja direkt angeschrieben werden können. Es sei denn, man schreibt das Ergebnis bzw. die User nach der Abfrage in eine "temporäre Rolle" in die Datenbank und dann an diese Rolle an eine Mail? Aber ob das so Sinn macht, wisst ihr sicher besser.

Fasse commented 8 years ago

Ich sehe es jetzt auch so wir Rainer, ist dann auch logischer und verständlicher.