From afc368e9dd6cf470a3aaa547a5f6a63e2768e816 Mon Sep 17 00:00:00 2001 From: PCoder Date: Sun, 24 Sep 2017 15:49:40 +0530 Subject: [PATCH 01/24] Added ResendActivationEmailView --- hosting/views.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/hosting/views.py b/hosting/views.py index d7c4c168..02e68bbd 100644 --- a/hosting/views.py +++ b/hosting/views.py @@ -33,12 +33,15 @@ from membership.models import CustomUser, StripeCustomer from opennebula_api.models import OpenNebulaManager from opennebula_api.serializers import VirtualMachineSerializer, \ VirtualMachineTemplateSerializer, VMTemplateSerializer -from utils.forms import BillingAddressForm, PasswordResetRequestForm, \ - UserBillingAddressForm +from utils.forms import ( + BillingAddressForm, PasswordResetRequestForm, UserBillingAddressForm, + ResendActivationEmailForm +) from utils.mailer import BaseEmail from utils.stripe_utils import StripeUtils from utils.views import ( - PasswordResetViewMixin, PasswordResetConfirmViewMixin, LoginViewMixin + PasswordResetViewMixin, PasswordResetConfirmViewMixin, LoginViewMixin, + ResendActivationLinkViewMixin ) from .forms import HostingUserSignupForm, HostingUserLoginForm, \ UserHostingKeyForm, generate_ssh_key_name @@ -282,6 +285,14 @@ class SignupValidatedView(SignupValidateView): return context +class ResendActivationEmailView(ResendActivationLinkViewMixin): + template_name = 'hosting/resend_activation_link.html' + form_class = ResendActivationEmailForm + success_url = reverse_lazy('hosting:login') + email_template_path = 'datacenterlight/emails/' + email_template_name = 'user_activation' + + class PasswordResetView(PasswordResetViewMixin): site = 'dcl' template_name = 'hosting/reset_password.html' From 324761613752d77a2824df67feec22047b445722 Mon Sep 17 00:00:00 2001 From: PCoder Date: Sun, 24 Sep 2017 15:53:08 +0530 Subject: [PATCH 02/24] Added resend activation link url --- hosting/urls.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/hosting/urls.py b/hosting/urls.py index 2868c717..f40e803a 100644 --- a/hosting/urls.py +++ b/hosting/urls.py @@ -8,8 +8,7 @@ from .views import ( MarkAsReadNotificationView, PasswordResetView, PasswordResetConfirmView, HostingPricingView, CreateVirtualMachinesView, HostingBillListView, HostingBillDetailView, SSHKeyDeleteView, SSHKeyCreateView, SSHKeyListView, - SSHKeyChoiceView, DashboardView, SettingsView) - + SSHKeyChoiceView, DashboardView, SettingsView, ResendActivationEmailView) urlpatterns = [ url(r'index/?$', IndexView.as_view(), name='index'), @@ -52,6 +51,8 @@ urlpatterns = [ url(r'signup/?$', SignupView.as_view(), name='signup'), url(r'signup-validate/?$', SignupValidateView.as_view(), name='signup-validate'), + url(r'resend-activation-link/?$', ResendActivationEmailView.as_view(), + name='resend_activation_link'), url(r'reset-password/?$', PasswordResetView.as_view(), name='reset_password'), url(r'reset-password-confirm/(?P[0-9A-Za-z]+)-(?P.+)/$', From af426c5b7a19f943f95a174f51924c5d52360c78 Mon Sep 17 00:00:00 2001 From: PCoder Date: Sun, 24 Sep 2017 15:54:38 +0530 Subject: [PATCH 03/24] Added ResendActivationEmailForm and translation function to untranslated texts --- utils/forms.py | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/utils/forms.py b/utils/forms.py index c3f3b6db..a12034dd 100644 --- a/utils/forms.py +++ b/utils/forms.py @@ -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): From 3e32e5127be5eebc9107edd7c791ad3f87f9a1c9 Mon Sep 17 00:00:00 2001 From: PCoder Date: Sun, 24 Sep 2017 15:55:52 +0530 Subject: [PATCH 04/24] Added ResendActivationLinkViewMixin --- utils/views.py | 45 +++++++++++++++++++++++++++++++++++++++------ 1 file changed, 39 insertions(+), 6 deletions(-) diff --git a/utils/views.py b/utils/views.py index 3150fa6d..4ec39bce 100644 --- a/utils/views.py +++ b/utils/views.py @@ -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) From 24522908e0332b6135fadc7c789df662a591d85f Mon Sep 17 00:00:00 2001 From: PCoder Date: Sun, 24 Sep 2017 16:02:06 +0530 Subject: [PATCH 05/24] Added resend activation link to login page --- hosting/templates/hosting/login.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hosting/templates/hosting/login.html b/hosting/templates/hosting/login.html index 9f18fda9..82056d2f 100644 --- a/hosting/templates/hosting/login.html +++ b/hosting/templates/hosting/login.html @@ -44,6 +44,8 @@ {% trans "Sign up"%} or {% trans "Forgot your password ? "%} + or
+ {% trans "Resend activation link"%} From 84db1606a346707ec50464a5c7d9dd16a95ffec1 Mon Sep 17 00:00:00 2001 From: PCoder Date: Sun, 24 Sep 2017 18:04:11 +0530 Subject: [PATCH 06/24] Added resend_activation_link.html template file --- .../hosting/resend_activation_link.html | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 hosting/templates/hosting/resend_activation_link.html diff --git a/hosting/templates/hosting/resend_activation_link.html b/hosting/templates/hosting/resend_activation_link.html new file mode 100644 index 00000000..fffb6e59 --- /dev/null +++ b/hosting/templates/hosting/resend_activation_link.html @@ -0,0 +1,36 @@ +{% extends "hosting/base_short.html" %} +{% load staticfiles bootstrap3%} +{% load i18n %} + +{% block navbar %} + {% include 'hosting/includes/_navbar_transparent.html' %} +{% endblock navbar %} + + +{% block content %} +
+
+
+
+

{% trans "Your VM hosted in Switzerland"%}

+
+
+ +
+
+
+{% endblock %} From cd5607b44e9f062707450601026e99fcdf9f0246 Mon Sep 17 00:00:00 2001 From: PCoder Date: Sun, 24 Sep 2017 19:04:18 +0530 Subject: [PATCH 07/24] Updated hosting django.po --- hosting/locale/de/LC_MESSAGES/django.po | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/hosting/locale/de/LC_MESSAGES/django.po b/hosting/locale/de/LC_MESSAGES/django.po index b273dbcf..0db6580d 100644 --- a/hosting/locale/de/LC_MESSAGES/django.po +++ b/hosting/locale/de/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-09-23 19:00+0530\n" +"POT-Creation-Date: 2017-09-24 12:34+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -306,6 +306,9 @@ msgstr "Registrieren" msgid "Forgot your password ? " msgstr "Passwort vergessen?" +msgid "Resend activation link" +msgstr "" + msgid "Notifications" msgstr "Benachrichtigungen" @@ -601,8 +604,11 @@ msgstr "" #, python-format msgid "" -"Your Virtual Machine %(virtual_machine.name)s is successfully terminated!" -msgstr "Deine Virtuelle Machine (VM) %(virtual_machine.name)s wurde erfolgreich beendet!" +"Your Virtual Machine %(machine_name)s is successfully " +"terminated!" +msgstr "" +"Deine Virtuelle Machine (VM) %(machine_name)s wurde erfolgreich " +"beendet!" msgid "Virtual Machines" msgstr "Virtuelle Maschinen" From 70d5efb21a230c53de61f1c51219a75567d63d5f Mon Sep 17 00:00:00 2001 From: PCoder Date: Mon, 25 Sep 2017 02:09:49 +0530 Subject: [PATCH 08/24] Update hosting django.po with a de translation --- hosting/locale/de/LC_MESSAGES/django.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hosting/locale/de/LC_MESSAGES/django.po b/hosting/locale/de/LC_MESSAGES/django.po index 0db6580d..ec11986b 100644 --- a/hosting/locale/de/LC_MESSAGES/django.po +++ b/hosting/locale/de/LC_MESSAGES/django.po @@ -307,7 +307,7 @@ msgid "Forgot your password ? " msgstr "Passwort vergessen?" msgid "Resend activation link" -msgstr "" +msgstr "Aktivierungslink noch einmal senden" msgid "Notifications" msgstr "Benachrichtigungen" From a73bcaef05053ee585fe5d08e03716ab964bc0f2 Mon Sep 17 00:00:00 2001 From: "M.Ravi" Date: Mon, 25 Sep 2017 09:35:18 +0200 Subject: [PATCH 09/24] Store hash --- hosting/views.py | 2 +- opennebula_api/models.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/hosting/views.py b/hosting/views.py index d7c4c168..887a4bb6 100644 --- a/hosting/views.py +++ b/hosting/views.py @@ -319,7 +319,7 @@ class PasswordResetConfirmView(PasswordResetConfirmViewMixin): messages.success(request, _('Password has been reset.')) # Change opennebula password - opennebula_client.change_user_password(new_password) + opennebula_client.change_user_password(user.password) return self.form_valid(form) else: diff --git a/opennebula_api/models.py b/opennebula_api/models.py index d584bf26..057139c0 100644 --- a/opennebula_api/models.py +++ b/opennebula_api/models.py @@ -438,11 +438,11 @@ class OpenNebulaManager(): self.oneadmin_client.call(oca.VmTemplate.METHODS[ 'delete'], template_id, False) - def change_user_password(self, new_password): + def change_user_password(self, passwd_hash): self.oneadmin_client.call( oca.User.METHODS['passwd'], self.opennebula_user.id, - new_password + passwd_hash ) def add_public_key(self, user, public_key='', merge=False): From 04c29d0622f491641f0633c3054d49164fe86495 Mon Sep 17 00:00:00 2001 From: verysanghee Date: Mon, 25 Sep 2017 20:17:12 +0200 Subject: [PATCH 10/24] Update django.po --- utils/locale/de/LC_MESSAGES/django.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/locale/de/LC_MESSAGES/django.po b/utils/locale/de/LC_MESSAGES/django.po index fdc21502..92593c40 100644 --- a/utils/locale/de/LC_MESSAGES/django.po +++ b/utils/locale/de/LC_MESSAGES/django.po @@ -772,13 +772,13 @@ 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" 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." From bb8c1a72fde2f7da13cfbc63e6abb08637b16b8f Mon Sep 17 00:00:00 2001 From: PCoder Date: Mon, 25 Sep 2017 23:52:40 +0530 Subject: [PATCH 11/24] Add missing import get_language --- hosting/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hosting/views.py b/hosting/views.py index d7c4c168..7ce66e57 100644 --- a/hosting/views.py +++ b/hosting/views.py @@ -16,7 +16,7 @@ from django.http import Http404, HttpResponseRedirect, HttpResponse from django.shortcuts import redirect, render from django.utils.http import urlsafe_base64_decode from django.utils.safestring import mark_safe -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import get_language, ugettext_lazy as _ from django.utils.translation import ugettext from django.views.generic import ( View, CreateView, FormView, ListView, DetailView, DeleteView, From c2844d25ed53ee5b1834b2bc47176698cc05c9b4 Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 00:06:17 +0530 Subject: [PATCH 12/24] Corrected a de spelling --- utils/locale/de/LC_MESSAGES/django.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/locale/de/LC_MESSAGES/django.po b/utils/locale/de/LC_MESSAGES/django.po index 92593c40..794b5fd9 100644 --- a/utils/locale/de/LC_MESSAGES/django.po +++ b/utils/locale/de/LC_MESSAGES/django.po @@ -769,7 +769,7 @@ msgid "Message" msgstr "Nachricht" 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 "Passwort zurücksetzen" From e2779314b053c142764839c2f545ddc1b2474ac5 Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 00:25:54 +0530 Subject: [PATCH 13/24] Fix cancel vm modal text translation --- hosting/locale/de/LC_MESSAGES/django.po | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hosting/locale/de/LC_MESSAGES/django.po b/hosting/locale/de/LC_MESSAGES/django.po index b273dbcf..f28fe9db 100644 --- a/hosting/locale/de/LC_MESSAGES/django.po +++ b/hosting/locale/de/LC_MESSAGES/django.po @@ -602,7 +602,8 @@ msgstr "" #, python-format msgid "" "Your Virtual Machine %(virtual_machine.name)s is successfully terminated!" -msgstr "Deine Virtuelle Machine (VM) %(virtual_machine.name)s wurde erfolgreich beendet!" +msgstr "" +"Deine Virtuelle Machine (VM) %(virtual_machine.name)s wurde erfolgreich beendet!" msgid "Virtual Machines" msgstr "Virtuelle Maschinen" From 889d737c7ca779c4285967020d5b21d622008693 Mon Sep 17 00:00:00 2001 From: verysanghee Date: Mon, 25 Sep 2017 20:58:59 +0200 Subject: [PATCH 14/24] Update django.po --- hosting/locale/de/LC_MESSAGES/django.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hosting/locale/de/LC_MESSAGES/django.po b/hosting/locale/de/LC_MESSAGES/django.po index b273dbcf..8d4db60e 100644 --- a/hosting/locale/de/LC_MESSAGES/django.po +++ b/hosting/locale/de/LC_MESSAGES/django.po @@ -644,13 +644,13 @@ msgid "Sorry. Your request is invalid." msgstr "Entschuldigung, deine Anfrage ist ungültig." msgid "Password has been reset." -msgstr "" +msgstr "Dein Passwort wurde erfolgreich zurückgesetzt." msgid "Password reset has not been successful." -msgstr "" +msgstr "Dein Passwort konnte nicht zurückgesetzt werden." msgid "The reset password link is no longer valid." -msgstr "" +msgstr "Der Link zum Zurücksetzen Deines Passwortes ist nicht mehr gültig." msgid "Invalid credit card" msgstr "Ungültige Kreditkarte" From a9755ccbff787df6f85d471f01ea7570f7c89125 Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 00:34:33 +0530 Subject: [PATCH 15/24] Updated hosting django.po --- hosting/locale/de/LC_MESSAGES/django.po | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/hosting/locale/de/LC_MESSAGES/django.po b/hosting/locale/de/LC_MESSAGES/django.po index 8d4db60e..d6b01d6e 100644 --- a/hosting/locale/de/LC_MESSAGES/django.po +++ b/hosting/locale/de/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-09-23 19:00+0530\n" +"POT-Creation-Date: 2017-09-25 19:00+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -601,8 +601,11 @@ msgstr "" #, python-format msgid "" -"Your Virtual Machine %(virtual_machine.name)s is successfully terminated!" -msgstr "Deine Virtuelle Machine (VM) %(virtual_machine.name)s wurde erfolgreich beendet!" +"Your Virtual Machine %(machine_name)s is successfully " +"terminated!" +msgstr "" +"Deine Virtuelle Machine (VM) %(machine_name)s wurde erfolgreich " +"beendet!" msgid "Virtual Machines" msgstr "Virtuelle Maschinen" From 2f4b7bb7492bd43d78e3c887de6d2834de327c8f Mon Sep 17 00:00:00 2001 From: verysanghee Date: Mon, 25 Sep 2017 21:07:33 +0200 Subject: [PATCH 16/24] Update django.po --- hosting/locale/de/LC_MESSAGES/django.po | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/hosting/locale/de/LC_MESSAGES/django.po b/hosting/locale/de/LC_MESSAGES/django.po index 8d4db60e..34129d5b 100644 --- a/hosting/locale/de/LC_MESSAGES/django.po +++ b/hosting/locale/de/LC_MESSAGES/django.po @@ -353,7 +353,7 @@ msgid "Order summary" msgstr "Bestellungsübersicht" msgid "Product" -msgstr "" +msgstr "Produkt" msgid "Cores" msgstr "Prozessorkerne" @@ -588,7 +588,7 @@ msgid "We are here to help you!" msgstr "Wir sind hier, um Dir zu helfen!" msgid "CONTACT" -msgstr "KONTACT" +msgstr "KONTAKT" msgid "Terminate your Virtual Machine" msgstr "Deine Virtuelle Maschine beenden" @@ -707,7 +707,7 @@ msgstr "VM Kündigung" #~ msgstr "VM %(VM_ID)s erfolgreich beendet" #~ msgid "days" -#~ msgstr "tage" +#~ msgstr "Tage" #~ msgid "New Virtual Machine" #~ msgstr "Neue virtuelle Maschine" @@ -740,7 +740,7 @@ msgstr "VM Kündigung" #~ msgstr "Meine Bestellungen" #~ msgid "SSH Keys" -#~ msgstr "SSH Key" +#~ msgstr "SSH Keys" #~ msgid "Notifications " #~ msgstr "Benachrichtigungen" @@ -788,19 +788,19 @@ msgstr "VM Kündigung" #~ msgstr "Hinzufügen" #~ msgid "Keys" -#~ msgstr "Schlüssel" +#~ msgstr "Keys" #~ msgid "Log in" #~ msgstr "Anmelden" #~ msgid "You haven been logged out" -#~ msgstr "Sie wurden abgmeldet" +#~ msgstr "Du wurdest abgemeldet" #~ msgid "How it works" #~ msgstr "So funktioniert es" #~ msgid "Your infrastructure" -#~ msgstr "deine Infrastruktur" +#~ msgstr "Deine Infrastruktur" #~ msgid "Our inftrastructure" #~ msgstr "Unsere Infrastruktur" @@ -808,11 +808,11 @@ msgstr "VM Kündigung" #~ msgid "Pricing" #~ msgstr "Preise" -#~ msgid "Access Key" -#~ msgstr "Zugriffsschlüssel" +#~ msgid "SSH Key" +#~ msgstr "SSH Key" #~ msgid "Upload your own key. " -#~ msgstr "Lade deinen Key hoch" +#~ msgstr "Lade Deinen Key hoch" #~ msgid "Generate Key Pair" #~ msgstr "Schlüsselpaar generieren" @@ -836,5 +836,5 @@ msgstr "VM Kündigung" #~ "Your SSH private key was already generated and downloaded, if you lost " #~ "it, contact us. " #~ msgstr "" -#~ "Dein privater SSH Schlüssel wurde bereits generiert und heruntergeladen. " -#~ "Falls du ihn verloren hast, kontaktiere uns." +#~ "Dein privater SSH Key wurde bereits generiert und heruntergeladen. " +#~ "Falls Du ihn verloren hast, kontaktiere uns." From e85a7c9e2a2a8ac52362c6e07f7650ab75c28800 Mon Sep 17 00:00:00 2001 From: verysanghee Date: Mon, 25 Sep 2017 21:14:19 +0200 Subject: [PATCH 17/24] Update django.po --- hosting/locale/de/LC_MESSAGES/django.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hosting/locale/de/LC_MESSAGES/django.po b/hosting/locale/de/LC_MESSAGES/django.po index 34129d5b..e4300f27 100644 --- a/hosting/locale/de/LC_MESSAGES/django.po +++ b/hosting/locale/de/LC_MESSAGES/django.po @@ -28,10 +28,10 @@ msgid "User does not exist" msgstr "Der Benutzer existiert nicht" msgid "Paste here your public key" -msgstr "Füge deinen Public Key ein" +msgstr "Füge Deinen Public Key ein" msgid "Give a name to your key" -msgstr "Gebe deinem SSH-Key einen Name" +msgstr "Gebe Deinem SSH-Key einen Name" msgid "Key name" msgstr "Key-Name" @@ -808,7 +808,7 @@ msgstr "VM Kündigung" #~ msgid "Pricing" #~ msgstr "Preise" -#~ msgid "SSH Key" +#~ msgid "Access Key" #~ msgstr "SSH Key" #~ msgid "Upload your own key. " From f35663b5ac4bde37b7095b203298d11f45a956c6 Mon Sep 17 00:00:00 2001 From: verysanghee Date: Mon, 25 Sep 2017 21:18:46 +0200 Subject: [PATCH 18/24] Update django.po --- hosting/locale/de/LC_MESSAGES/django.po | 30 ++++++++++++------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/hosting/locale/de/LC_MESSAGES/django.po b/hosting/locale/de/LC_MESSAGES/django.po index e4300f27..27ff9bb2 100644 --- a/hosting/locale/de/LC_MESSAGES/django.po +++ b/hosting/locale/de/LC_MESSAGES/django.po @@ -156,10 +156,10 @@ msgid "Upload" msgstr "Hochladen" msgid "Your VM hosted in Switzerland" -msgstr "deine VM in der Schweiz" +msgstr "Deine VM in der Schweiz" msgid "Set your new password" -msgstr "Setze dein neues Passwort" +msgstr "Setze Dein neues Passwort" msgid "Reset" msgstr "Zurücksetzen" @@ -180,7 +180,7 @@ msgid "My VMs" msgstr "Meine VMs" msgid "My SSH Keys" -msgstr "Meine SSH Keys" +msgstr "Meine SSH-Keys" msgid "My Bills" msgstr "Meine Rechnungen" @@ -229,10 +229,10 @@ msgid "" "Thank you!\n" msgstr "" "\n" -"Du erhälst diese E-Mail da du dein Passwort für deinen Account bei " +"Du erhälst diese E-Mail da Du Dein Passwort für Deinen Account bei " "%(site_name)s zurücksetzen möchtest.
\n" "Bitte folge diesem Link und wähle ein neues Passwort: %(base_url)s" -"%(password_reset_url)s Solltest du kein neues Passwort angefordert haben, " +"%(password_reset_url)s Solltest Du kein neues Passwort angefordert haben, " "dann ignoriere diese E-Mail.
\n" "Dankeschön!\n" @@ -245,10 +245,10 @@ msgid "" "If you didn't request a new password, ignore this e-mail.\n" "Thank you!\n" msgstr "" -"Du erhälst diese E-Mail da du dein Passwort für deinen Account bei " +"Du erhälst diese E-Mail da Du Dein Passwort für Deinen Account bei " "%(site_name)s zurücksetzen möchtest.\n" "Bitte folge diesem Link und wähle ein neues Passwort: %(base_url)s" -"%(password_reset_url)s Solltest du kein neues Passwort angefordert haben, " +"%(password_reset_url)s Solltest Du kein neues Passwort angefordert haben, " "dann ignoriere diese E-Mail.\n" "Dankeschön!\n" @@ -260,11 +260,11 @@ msgid "" "If you want to order a new virtual machine, you can do it by clicking this link.
\n" msgstr "" -"Du erhälst diese E-Mail, da deine virtuelle Maschine [%(vm_name)s] gekündigt " +"Du erhälst diese E-Mail, Da Deine virtuelle Maschine [%(vm_name)s] gekündigt " "wurde.
\n" -"Um deinen Auftragsstatus zu sehen, klicke auf die [my VM page] unten.
\n" -"Falls du eine neue virtuelle Maschine bestellen möchtest, kannst du dies " -"tun, indem du diesen " +"Um Deinen Auftragsstatus zu sehen, klicke auf die [my VM page] unten.
\n" +"Falls Du eine neue virtuelle Maschine bestellen möchtest, kannst Du dies " +"tun, indem Du
diesen " "Link klickst.
\n" msgid "My VM page" @@ -280,12 +280,12 @@ msgid "" "link.\n" "%(base_url)s%(my_virtual_machines_url)s\n" msgstr "" -"Du erhälst diese E-Mail, da deine virtuelle Maschine [%(vm_name)s] gekündigt " +"Du erhälst diese E-Mail, da Deine virtuelle Maschine [%(vm_name)s] gekündigt " "wurde.\n" -"Um deinen Auftragsstatus zu sehen, klicke hier.\n" +"Um Deinen Auftragsstatus zu sehen, klicke hier.\n" "%(base_url)s%(vm_order_url)s\n" -"Falls du eine neue virtuelle Maschine bestellen möchtest, kannst du dies " -"tun, indem du diesen Link klickst.\n" +"Falls Du eine neue virtuelle Maschine bestellen möchtest, kannst Du dies " +"tun, indem Du diesen Link klickst.\n" "%(base_url)s%(my_virtual_machines_url)s\n" msgid "Toggle navigation" From 25f3118126f8777ed166e93c46b9b48f1060355d Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 01:06:35 +0530 Subject: [PATCH 19/24] Updated Changelog --- Changelog | 1 + 1 file changed, 1 insertion(+) diff --git a/Changelog b/Changelog index 33184f98..7ba5e634 100644 --- a/Changelog +++ b/Changelog @@ -6,6 +6,7 @@ Pre-changelog: 1.2.3 2017-09-20 * #3786: [hosting] Redesigned the hosting invoice and order-confirmation page * #3728: [hosting] VM Termination animation added * #3777: [hosting] Create new VM calculator added like dcl landing + * #3806: [hosting] Fix can not create VMs after password reset * Feature: [cms, blog] Added /cms prefix for all the django-cms generated urls * Bugfix: [dcl, hosting] added host to celery error mails * Bugfix: [ungleich] Fixed wrong subdomain digitalglarus.ungleich.ch From 75ff7e4ea86f14bce202d2cf0dc202734a1e2872 Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 01:53:19 +0530 Subject: [PATCH 20/24] Added some translations --- utils/locale/de/LC_MESSAGES/django.po | 30 +++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/utils/locale/de/LC_MESSAGES/django.po b/utils/locale/de/LC_MESSAGES/django.po index 794b5fd9..04d1f4dc 100644 --- a/utils/locale/de/LC_MESSAGES/django.po +++ b/utils/locale/de/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: LANGUAGE \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 "" + +msgid "The two password fields didn't match." +msgstr "" + +msgid "New password" +msgstr "" + +msgid "New password confirmation" +msgstr "" + msgid "Cardholder Name" msgstr "Name des Kartenbesitzer" @@ -768,8 +786,16 @@ 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 "Passwort zurücksetzen" From 6bf89669eff4b8faef57eba42097a97778a5e33c Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 02:07:28 +0530 Subject: [PATCH 21/24] some more de translations --- utils/locale/de/LC_MESSAGES/django.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/locale/de/LC_MESSAGES/django.po b/utils/locale/de/LC_MESSAGES/django.po index 04d1f4dc..f8374e4e 100644 --- a/utils/locale/de/LC_MESSAGES/django.po +++ b/utils/locale/de/LC_MESSAGES/django.po @@ -745,16 +745,16 @@ msgid "User does not exist" msgstr "Der Benutzer existiert nicht" msgid "The account is already active." -msgstr "" +msgstr "Das Benutzerkonto ist bereits aktiv." msgid "The two password fields didn't match." -msgstr "" +msgstr "Die beiden Passwörter stimmen nicht überein." msgid "New password" -msgstr "" +msgstr "Neues Passwort" msgid "New password confirmation" -msgstr "" +msgstr "Neues Passwort Bestätigung" msgid "Cardholder Name" msgstr "Name des Kartenbesitzer" From 7933584942bee21a167c46e21c0f06f75410249d Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 02:13:49 +0530 Subject: [PATCH 22/24] Updated changelog --- Changelog | 1 + 1 file changed, 1 insertion(+) diff --git a/Changelog b/Changelog index 7ba5e634..7f4394dd 100644 --- a/Changelog +++ b/Changelog @@ -6,6 +6,7 @@ Pre-changelog: 1.2.3 2017-09-20 * #3786: [hosting] Redesigned the hosting invoice and order-confirmation page * #3728: [hosting] VM Termination animation added * #3777: [hosting] Create new VM calculator added like dcl landing + * #3781: [hosting] Resend activation mail * #3806: [hosting] Fix can not create VMs after password reset * Feature: [cms, blog] Added /cms prefix for all the django-cms generated urls * Bugfix: [dcl, hosting] added host to celery error mails From 29a45e81bf943beeeaf43260b096f0c38bbc32af Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 02:24:17 +0530 Subject: [PATCH 23/24] Include cdist 4.7.0 in requirements.txt --- requirements.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 6446a5c9..89285c83 100644 --- a/requirements.txt +++ b/requirements.txt @@ -96,5 +96,4 @@ pyflakes==1.5.0 billiard==3.5.0.3 amqp==2.2.1 vine==1.1.4 -#git+https://github.com/ungleich/cdist.git#egg=cdist -file:///home/app/cdist#egg=cdist +cdist==4.7.0 From 543465e89bbb154d0845f3287d64967e0320ca77 Mon Sep 17 00:00:00 2001 From: PCoder Date: Tue, 26 Sep 2017 02:34:10 +0530 Subject: [PATCH 24/24] Update Changelog for 1.2.3 --- Changelog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Changelog b/Changelog index 7f4394dd..f03a04ed 100644 --- a/Changelog +++ b/Changelog @@ -1,4 +1,4 @@ -Pre-changelog: 1.2.3 2017-09-20 +1.2.3: 2017-09-25 * #3484: [dcl, hosting] Refactored account activation, password reset, VM order and cancellation email * #3731: [dcl, hosting] Added cdist ssh key handler * #3628: [dcl] on hosting, VM is created at credit card info submit