Fix error in SMTP settings when not changing password

This commit is contained in:
Raphael Michel
2022-03-15 16:06:11 +01:00
parent 0adddb3084
commit 31eda01464
2 changed files with 6 additions and 1 deletions

View File

@@ -113,10 +113,13 @@ class SettingsForm(i18nfield.forms.I18nFormMixin, HierarkeyForm):
if isinstance(f, (RelativeDateTimeField, RelativeDateField)):
f.set_event(self.obj)
def save(self):
def _unmask_secret_fields(self):
for k, v in self.cleaned_data.items():
if isinstance(self.fields.get(k), SecretKeySettingsField) and self.cleaned_data.get(k) == SECRET_REDACTED:
self.cleaned_data[k] = self.initial[k]
def save(self):
self._unmask_secret_fields()
return super().save()
def clean(self):

View File

@@ -243,6 +243,8 @@ class MailSettingsSetupView(TemplateView):
messages.success(request, _('Your changes have been saved.'))
return redirect(self.get_success_url())
else:
self.smtp_form._unmask_secret_fields()
backend = get_connection(
backend=settings.EMAIL_CUSTOM_SMTP_BACKEND,
host=self.smtp_form.cleaned_data['smtp_host'],