Merge master into task/3730/refactor_price_parameter
This commit is contained in:
		
				commit
				
					
						c17604e5c1
					
				
			
		
					 11 changed files with 199 additions and 64 deletions
				
			
		|  | @ -18,7 +18,8 @@ class SignupFormMixin(forms.ModelForm): | |||
|         model = CustomUser | ||||
|         fields = ['name', 'email', 'password'] | ||||
|         widgets = { | ||||
|             'name': forms.TextInput(attrs={'placeholder': _('Enter your name or company name')}), | ||||
|             'name': forms.TextInput( | ||||
|                 attrs={'placeholder': _('Enter your name or company name')}), | ||||
|         } | ||||
| 
 | ||||
|     def clean_confirm_password(self): | ||||
|  | @ -42,7 +43,7 @@ class LoginFormMixin(forms.Form): | |||
|         is_auth = authenticate(email=email, password=password) | ||||
|         if not is_auth: | ||||
|             raise forms.ValidationError( | ||||
|                 "Your username and/or password were incorrect.") | ||||
|                 _("Your username and/or password were incorrect.")) | ||||
|         return self.cleaned_data | ||||
| 
 | ||||
|     def clean_email(self): | ||||
|  | @ -51,7 +52,24 @@ class LoginFormMixin(forms.Form): | |||
|             CustomUser.objects.get(email=email) | ||||
|             return email | ||||
|         except CustomUser.DoesNotExist: | ||||
|             raise forms.ValidationError("User does not exist") | ||||
|             raise forms.ValidationError(_("User does not exist")) | ||||
| 
 | ||||
| 
 | ||||
| class ResendActivationEmailForm(forms.Form): | ||||
|     email = forms.CharField(widget=forms.EmailInput()) | ||||
| 
 | ||||
|     class Meta: | ||||
|         fields = ['email'] | ||||
| 
 | ||||
|     def clean_email(self): | ||||
|         email = self.cleaned_data.get('email') | ||||
|         try: | ||||
|             c = CustomUser.objects.get(email=email) | ||||
|             if c.validated == 1: | ||||
|                 raise forms.ValidationError(_("The account is already active.")) | ||||
|             return email | ||||
|         except CustomUser.DoesNotExist: | ||||
|             raise forms.ValidationError(_("User does not exist")) | ||||
| 
 | ||||
| 
 | ||||
| class PasswordResetRequestForm(forms.Form): | ||||
|  | @ -66,7 +84,7 @@ class PasswordResetRequestForm(forms.Form): | |||
|             CustomUser.objects.get(email=email) | ||||
|             return email | ||||
|         except CustomUser.DoesNotExist: | ||||
|             raise forms.ValidationError("User does not exist") | ||||
|             raise forms.ValidationError(_("User does not exist")) | ||||
| 
 | ||||
| 
 | ||||
| class SetPasswordForm(forms.Form): | ||||
|  | @ -75,11 +93,11 @@ class SetPasswordForm(forms.Form): | |||
|     password | ||||
|     """ | ||||
|     error_messages = { | ||||
|         'password_mismatch': ("The two password fields didn't match."), | ||||
|         'password_mismatch': _("The two password fields didn't match."), | ||||
|     } | ||||
|     new_password1 = forms.CharField(label=("New password"), | ||||
|     new_password1 = forms.CharField(label=_("New password"), | ||||
|                                     widget=forms.PasswordInput) | ||||
|     new_password2 = forms.CharField(label=("New password confirmation"), | ||||
|     new_password2 = forms.CharField(label=_("New password confirmation"), | ||||
|                                     widget=forms.PasswordInput) | ||||
| 
 | ||||
|     def clean_new_password2(self): | ||||
|  |  | |||
|  | @ -8,7 +8,7 @@ msgid "" | |||
| msgstr "" | ||||
| "Project-Id-Version: PACKAGE VERSION\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2017-09-02 11:50+0000\n" | ||||
| "POT-Creation-Date: 2017-09-25 20:11+0000\n" | ||||
| "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | ||||
| "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | ||||
| "Language-Team: LANGUAGE <LL@li.org>\n" | ||||
|  | @ -738,6 +738,24 @@ msgstr "" | |||
| msgid "Enter your name or company name" | ||||
| msgstr "Geben Sie Ihren Namen oder der Ihrer Firma ein" | ||||
| 
 | ||||
| msgid "Your username and/or password were incorrect." | ||||
| msgstr "Dein Benutzername und/oder Dein Passwort ist falsch." | ||||
| 
 | ||||
| msgid "User does not exist" | ||||
| msgstr "Der Benutzer existiert nicht" | ||||
| 
 | ||||
| msgid "The account is already active." | ||||
| msgstr "Das Benutzerkonto ist bereits aktiv." | ||||
| 
 | ||||
| msgid "The two password fields didn't match." | ||||
| msgstr "Die beiden Passwörter stimmen nicht überein." | ||||
| 
 | ||||
| msgid "New password" | ||||
| msgstr "Neues Passwort" | ||||
| 
 | ||||
| msgid "New password confirmation" | ||||
| msgstr "Neues Passwort Bestätigung" | ||||
| 
 | ||||
| msgid "Cardholder Name" | ||||
| msgstr "Name des Kartenbesitzer" | ||||
| 
 | ||||
|  | @ -768,17 +786,25 @@ msgstr "Telefon" | |||
| msgid "Message" | ||||
| msgstr "Nachricht" | ||||
| 
 | ||||
| msgid "An email with the activation link has been sent to your email" | ||||
| msgstr "" | ||||
| "Der Link zum Zurücksetzen deines Passwortes wurde an deine E-Mail gesendet" | ||||
| 
 | ||||
| msgid "Account Activation" | ||||
| msgstr "Accountaktivierung" | ||||
| 
 | ||||
| msgid "The link to reset your email has been sent to your email" | ||||
| msgstr "Der Link zum Zur?cksetzen deines Passwortes wurde an deine E-Mail gesendet" | ||||
| msgstr "" | ||||
| "Der Link zum Zurücksetzen deines Passwortes wurde an deine E-Mail gesendet" | ||||
| 
 | ||||
| msgid "Password Reset" | ||||
| msgstr "" | ||||
| msgstr "Passwort zurücksetzen" | ||||
| 
 | ||||
| msgid "Password has been reset." | ||||
| msgstr "Das Passwort wurde zur?ckgesetzt." | ||||
| msgstr "Das Passwort wurde zurückgesetzt." | ||||
| 
 | ||||
| msgid "Password reset has not been successful." | ||||
| msgstr "Das Zur?cksetzen war nicht erfolgreich." | ||||
| msgstr "Das Zurücksetzen war nicht erfolgreich." | ||||
| 
 | ||||
| msgid "The reset password link is no longer valid." | ||||
| msgstr "Der Link zum Zur?cksetzen deines Passwortes ist nicht l?nger g?ltig." | ||||
| msgstr "Der Link zum Zurücksetzen Deines Passwortes ist nicht länger gültig." | ||||
|  |  | |||
|  | @ -2,6 +2,7 @@ from django.conf import settings | |||
| from django.contrib import messages | ||||
| from django.contrib.auth import authenticate, login | ||||
| from django.contrib.auth.tokens import default_token_generator | ||||
| from django.core.urlresolvers import reverse_lazy | ||||
| from django.http import HttpResponseRedirect | ||||
| from django.utils.encoding import force_bytes | ||||
| from django.utils.http import urlsafe_base64_encode, urlsafe_base64_decode | ||||
|  | @ -63,9 +64,45 @@ class LoginViewMixin(FormView): | |||
|         return super(LoginViewMixin, self).get(request, *args, **kwargs) | ||||
| 
 | ||||
| 
 | ||||
| class ResendActivationLinkViewMixin(FormView): | ||||
|     success_message = _( | ||||
|         "An email with the activation link has been sent to your email") | ||||
| 
 | ||||
|     def generate_email_context(self, user): | ||||
|         context = { | ||||
|             'base_url': "{0}://{1}".format(self.request.scheme, | ||||
|                                            self.request.get_host()), | ||||
|             'activation_link': reverse_lazy( | ||||
|                 'hosting:validate', | ||||
|                 kwargs={'validate_slug': user.validation_slug} | ||||
|             ), | ||||
|             'dcl_text': settings.DCL_TEXT, | ||||
|         } | ||||
|         return context | ||||
| 
 | ||||
|     def form_valid(self, form): | ||||
|         email = form.cleaned_data.get('email') | ||||
|         user = CustomUser.objects.get(email=email) | ||||
|         messages.add_message(self.request, messages.SUCCESS, | ||||
|                              self.success_message) | ||||
|         context = self.generate_email_context(user) | ||||
|         email_data = { | ||||
|             'subject': '{dcl_text} {account_activation}'.format( | ||||
|                 dcl_text=settings.DCL_TEXT, | ||||
|                 account_activation=_('Account Activation') | ||||
|             ), | ||||
|             'to': email, | ||||
|             'context': context, | ||||
|             'template_name': self.email_template_name, | ||||
|             'template_path': self.email_template_path, | ||||
|             'from_address': settings.DCL_SUPPORT_FROM_ADDRESS | ||||
|         } | ||||
|         email = BaseEmail(**email_data) | ||||
|         email.send() | ||||
|         return HttpResponseRedirect(self.get_success_url()) | ||||
| 
 | ||||
| 
 | ||||
| class PasswordResetViewMixin(FormView): | ||||
|     # template_name = 'hosting/reset_password.html' | ||||
|     # form_class = PasswordResetRequestForm | ||||
|     success_message = _( | ||||
|         "The link to reset your email has been sent to your email") | ||||
|     site = '' | ||||
|  | @ -78,7 +115,6 @@ class PasswordResetViewMixin(FormView): | |||
|             'site_name': 'ungleich' if self.site != 'dcl' else settings.DCL_TEXT, | ||||
|             'base_url': "{0}://{1}".format(self.request.scheme, | ||||
|                                            self.request.get_host()) | ||||
| 
 | ||||
|         } | ||||
|         return context | ||||
| 
 | ||||
|  | @ -104,11 +140,8 @@ class PasswordResetViewMixin(FormView): | |||
| 
 | ||||
| 
 | ||||
| class PasswordResetConfirmViewMixin(FormView): | ||||
|     # template_name = 'hosting/confirm_reset_password.html' | ||||
|     form_class = SetPasswordForm | ||||
| 
 | ||||
|     # success_url = reverse_lazy('hosting:login') | ||||
| 
 | ||||
|     def post(self, request, uidb64=None, token=None, *arg, **kwargs): | ||||
|         try: | ||||
|             uid = urlsafe_base64_decode(uidb64) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue