aboutsummaryrefslogtreecommitdiff
path: root/src/mailman_pgp/workflows/subscription.py
diff options
context:
space:
mode:
authorJ08nY2017-07-11 15:13:15 +0200
committerJ08nY2017-07-11 15:13:15 +0200
commit288d5c07825f67e6fd92e93fc3d8369310e268d1 (patch)
treec16c0cec577689e7a7c840a09e90cfc0308688c9 /src/mailman_pgp/workflows/subscription.py
parent383ce5f4cc6cb81f91f90f3408742c4c06bca301 (diff)
downloadmailman-pgp-288d5c07825f67e6fd92e93fc3d8369310e268d1.tar.gz
mailman-pgp-288d5c07825f67e6fd92e93fc3d8369310e268d1.tar.zst
mailman-pgp-288d5c07825f67e6fd92e93fc3d8369310e268d1.zip
Diffstat (limited to 'src/mailman_pgp/workflows/subscription.py')
-rw-r--r--src/mailman_pgp/workflows/subscription.py40
1 files changed, 37 insertions, 3 deletions
diff --git a/src/mailman_pgp/workflows/subscription.py b/src/mailman_pgp/workflows/subscription.py
index 6b8240c..a7565f3 100644
--- a/src/mailman_pgp/workflows/subscription.py
+++ b/src/mailman_pgp/workflows/subscription.py
@@ -29,12 +29,46 @@ from mailman_pgp.workflows.base import PubkeyMixin
@public
@implementer(ISubscriptionWorkflow)
+class OpenSubscriptionPolicy(SubscriptionBase, VerificationMixin, PubkeyMixin):
+ """"""
+
+ name = 'pgp-policy-open'
+ description = _('An open subscription policy, '
+ 'for a PGP-enabled mailing list.')
+ initial_state = 'prepare'
+ save_attributes = (
+ 'verified',
+ 'pubkey_key',
+ 'pubkey_confirmed',
+ 'address_key',
+ 'subscriber_key',
+ 'user_key',
+ 'token_owner_key',
+ )
+
+ def __init__(self, mlist, subscriber=None, *,
+ pre_verified=False, pubkey=None,
+ pubkey_pre_confirmed=False):
+ SubscriptionBase.__init__(self, mlist, subscriber)
+ VerificationMixin.__init__(self, pre_verified=pre_verified)
+ PubkeyMixin.__init__(self, pubkey=pubkey,
+ pre_confirmed=pubkey_pre_confirmed)
+
+ def _step_prepare(self):
+ self.push('do_subscription')
+ self.push('pubkey_checks')
+ self.push('verification_checks')
+ self.push('sanity_checks')
+
+
+@public
+@implementer(ISubscriptionWorkflow)
class ConfirmSubscriptionPolicy(SubscriptionBase, VerificationMixin,
ConfirmationMixin, PubkeyMixin):
""""""
name = 'pgp-policy-confirm'
- description = _('An subscription policy, for a PGP-enabled mailing list '
+ description = _('A subscription policy, for a PGP-enabled mailing list '
'that requires confirmation.')
initial_state = 'prepare'
save_attributes = (
@@ -72,7 +106,7 @@ class ModerationSubscriptionPolicy(SubscriptionBase, VerificationMixin,
""""""
name = 'pgp-policy-moderate'
- description = _('An subscription policy, for a PGP-enabled mailing list '
+ description = _('A subscription policy, for a PGP-enabled mailing list '
'that requires moderation.')
initial_state = 'prepare'
save_attributes = (
@@ -111,7 +145,7 @@ class ConfirmModerationSubscriptionPolicy(SubscriptionBase, VerificationMixin,
""""""
name = 'pgp-policy-confirm-moderate'
- description = _('An subscription policy, for a PGP-enabled mailing list '
+ description = _('A subscription policy, for a PGP-enabled mailing list '
'that requires moderation after confirmation.')
initial_state = 'prepare'
save_attributes = (