From d8849114ba6f4d14b4059953f825d016d911c987 Mon Sep 17 00:00:00 2001 From: Johannes Keyser Date: Fri, 21 Jul 2017 16:34:25 +0200 Subject: [PATCH] letsencrypt: delete button also disables certificate renewal mngmt --- plinth/modules/letsencrypt/views.py | 31 +++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/plinth/modules/letsencrypt/views.py b/plinth/modules/letsencrypt/views.py index a3b1ea7b5..81a744526 100644 --- a/plinth/modules/letsencrypt/views.py +++ b/plinth/modules/letsencrypt/views.py @@ -71,7 +71,6 @@ def obtain(request, domain): """Obtain and install a certificate for a given domain.""" try: actions.superuser_run('letsencrypt', ['obtain', '--domain', domain]) - actions.superuser_run('letsencrypt', ['manage_hooks', 'enable']) messages.success( request, _('Certificate successfully obtained for domain {domain}') .format(domain=domain)) @@ -87,13 +86,14 @@ def obtain(request, domain): try: actions.superuser_run('letsencrypt', ['manage_hooks', 'enable']) messages.success( - request, _('Certificate management enabled for {domain}.') + request, + _('Certificate renewal management enabled for {domain}.') .format(domain=domain)) except ActionError as exception: messages.error( request, - _('Failed to enable certificate management for {domain}: ' - '{error}') + _('Failed to enable certificate renewal management for ' + '{domain}: {error}') .format(domain=domain, error=exception.args[2])) return redirect(reverse_lazy('letsencrypt:index')) @@ -105,13 +105,18 @@ def toggle_hooks(request, domain): subcommand = 'disable' if _hooks_manage_enabled() else 'enable' try: actions.superuser_run('letsencrypt', ['manage_hooks', subcommand]) - messages.success( - request, _('Certificate management changed for domain {domain}') - .format(domain=domain)) + if subcommand == 'enable': + msg = _('Certificate renewal management enabled for {domain}.')\ + .format(domain=domain) + else: + msg = _('Certificate renewal management disabled for {domain}.')\ + .format(domain=domain) + messages.success(request, msg) except ActionError as exception: messages.error( request, - _('Failed to switch certificate management for {domain}: {error}') + _('Failed to switch certificate renewal management for {domain}: ' + '{error}') .format(domain=domain, error=exception.args[2])) return redirect(reverse_lazy('letsencrypt:index')) @@ -120,6 +125,16 @@ def toggle_hooks(request, domain): @require_POST def delete(request, domain): """Delete a certificate for a given domain.""" + try: # also delete any potential left-over renewal config backup + actions.superuser_run('letsencrypt', ['manage_hooks', 'disable', + '--domain', domain]) + except ActionError as exception: + messages.error( + request, + _('Failed to disable certificate renewal management for {domain}: ' + '{error}') + .format(domain=domain, error=exception.args[2])) + try: actions.superuser_run('letsencrypt', ['delete', '--domain', domain]) messages.success(