Bulk update of members' moderation settings
I imported a list from mailman 2.1 using https://docs.mailman3.org/en/latest/migration.html.
It happens that emergency moderation was set on the mailman 2.1 list, and this has resulted in all members having Moderation set to Hold. I now want to change that to Default Processing for all members.
Is there a way to achieve that in bulk without clicking through the members options for each member in Postorius?
Thanks, Alex
On 11/18/21 12:37 PM, Alex King via Mailman-users wrote:
I imported a list from mailman 2.1 using https://docs.mailman3.org/en/latest/migration.html.
It happens that emergency moderation was set on the mailman 2.1 list, and this has resulted in all members having Moderation set to Hold. I now want to change that to Default Processing for all members.
Is there a way to achieve that in bulk without clicking through the members options for each member in Postorius?
I don't understand how this happened. The mailman 2.1 list's emergency setting should hsave been imported as the emergency setting of the Mailman 3 list and should not affect individual member's moderation at all.
However, to set the moderation action for all members of a list to default processing You can do something like this in mailman shell
bin/mailman shell -l list.example.com
Welcome to the GNU Mailman shell
Use commit() to commit changes.
Use abort() to discard changes since the last commit.
Exit with ctrl+D does an implicit commit() but exit() does not.
The variable 'm' is the list.example.com mailing list
>>> from mailman.interfaces.action import Action
>>> for member in m.members.members:
... member.moderation_action = Action.defer
...
>>> commit()
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (2)
-
Alex King
-
Mark Sapiro