mailing_lists.views module

class mailing_lists.views.MailchimpMixin[source]

Bases: django.contrib.auth.mixins.LoginRequiredMixin, django.contrib.auth.mixins.PermissionRequiredMixin

permission_required = 'scipost.can_manage_mailchimp'
raise_exception = True
class mailing_lists.views.MailchimpListView(**kwargs)[source]

Bases: mailing_lists.views.MailchimpMixin, django.views.generic.list.ListView

List all lists of Mailchimp known to the current database. This is part of the editorial actions for SciPost Administrators. It should act as a main page from which the admin can to action to update some general mailchimp settings.

template_name = 'mailing_lists/overview.html'
model

alias of mailing_lists.models.MailchimpList

mailing_lists.views.syncronize_lists(request)[source]

Syncronize the Mailchimp lists in the database with the lists known in the mailchimp account which is related to the API_KEY.

mailing_lists.views.export_non_registered_invitations(request)[source]

Syncronize the Mailchimp lists in the database with the lists known in the mailchimp account which is related to the API_KEY.

mailing_lists.views.syncronize_members(request, list_id)[source]

Syncronize the Mailchimp lists in the database with the lists known in the mailchimp account which is related to the API_KEY.

class mailing_lists.views.ListDetailView(**kwargs)[source]

Bases: mailing_lists.views.MailchimpMixin, django.views.generic.edit.UpdateView

The detail view of a certain Mailchimp list. This allows the admin to i.e. manage group permissions to the group.

slug_field = 'mailchimp_list_id'
slug_url_kwarg = 'list_id'
fields = ('allowed_groups', 'internal_name', 'open_for_subscription')
model

alias of mailing_lists.models.MailchimpList

form_valid(form)[source]

If the form is valid, save the associated model.