| 86 | |
| 87 | @staticmethod |
| 88 | def encode_url( |
| 89 | action: UnsubscribeAction, data: Union[int, UnsubscribeOriginalData] |
| 90 | ) -> str: |
| 91 | if action == UnsubscribeAction.DisableAlias: |
| 92 | return f"{config.URL}/dashboard/unsubscribe/{data}" |
| 93 | if action == UnsubscribeAction.DisableContact: |
| 94 | return f"{config.URL}/dashboard/block_contact/{data}" |
| 95 | if action in ( |
| 96 | UnsubscribeAction.UnsubscribeNewsletter, |
| 97 | UnsubscribeAction.OriginalUnsubscribeMailto, |
| 98 | ): |
| 99 | encoded = UnsubscribeEncoder.encode_subject(action, data) |
| 100 | return f"{config.URL}/dashboard/unsubscribe/encoded/{encoded}" |
| 101 | |
| 102 | @staticmethod |
| 103 | def _get_signer() -> itsdangerous.Signer: |