diff --git a/users/forms/login.py b/users/forms/login.py
index c5c1b0d..fd9ed9e 100644
--- a/users/forms/login.py
+++ b/users/forms/login.py
@@ -2,8 +2,16 @@ from django import forms
from django.contrib.auth.forms import AuthenticationForm, UsernameField
from django.utils.text import gettext_lazy as _
+from web.mixins import StylingMixin
+
+
+class LoginForm(StylingMixin, AuthenticationForm):
+ styled_fields = ['username', 'password', ]
+ placeholder_for_field = {
+ "username": _("pablo@shoppy.com"),
+ "password": "********"
+ }
-class LoginForm(AuthenticationForm):
username = UsernameField(
widget=forms.EmailInput(
attrs={
diff --git a/users/forms/register.py b/users/forms/register.py
index bf3cc74..db46d92 100644
--- a/users/forms/register.py
+++ b/users/forms/register.py
@@ -2,10 +2,21 @@ from django import forms
from django.contrib.auth.forms import BaseUserCreationForm, SetPasswordMixin
from django.contrib.auth.models import User
from django.forms import EmailField
+from django.utils.text import gettext_lazy as _
+
+from web.mixins import StylingMixin
-class RegisterForm(BaseUserCreationForm, SetPasswordMixin):
+class RegisterForm(StylingMixin, BaseUserCreationForm, SetPasswordMixin):
password1, password2 = SetPasswordMixin.create_password_fields()
+ styled_fields = ["email", "first_name", "last_name", "password1", "password2"]
+ placeholder_for_field = {
+ "email": _('pablo@shoppy.com'),
+ "first_name": _("Pablo"),
+ "last_name": _("Moreno"),
+ "password1": "********",
+ "password2": "********",
+ }
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
diff --git a/users/forms/reset_password.py b/users/forms/reset_password.py
index 9508b55..a9c22e3 100644
--- a/users/forms/reset_password.py
+++ b/users/forms/reset_password.py
@@ -5,12 +5,23 @@ from django.contrib.auth.tokens import default_token_generator
from django.core.exceptions import ValidationError
from django.utils.text import gettext_lazy as _
-
-class PasswordResetForm(BasePasswordResetForm):
- pass
+from web.mixins import StylingMixin
-class SetPasswordForm(BaseSetPasswordForm):
+class PasswordResetForm(StylingMixin, BasePasswordResetForm):
+ styled_fields = ['email', ]
+ placeholder_for_field = {
+ "email": _("pablo@shoppy.com"),
+ }
+
+
+class SetPasswordForm(StylingMixin, BaseSetPasswordForm):
+ styled_fields = ['new_password1', 'new_password2', ]
+ placeholder_for_field = {
+ "new_password1": "********",
+ "new_password2": "********",
+ }
+
token = forms.CharField(
required=True,
widget=forms.HiddenInput(),
diff --git a/web/context_processors.py b/web/context_processors.py
index 3334d14..bdddd4f 100644
--- a/web/context_processors.py
+++ b/web/context_processors.py
@@ -9,6 +9,7 @@ def web_settings(request):
)
return {
+ "web_title": settings.web_title,
"logo": settings.logo.url if settings.logo else "",
"navbar_categories": navbar_categories,
}
diff --git a/web/mixins.py b/web/mixins.py
index f0b87a4..97f24ed 100644
--- a/web/mixins.py
+++ b/web/mixins.py
@@ -1,5 +1,6 @@
from django.conf import settings
from django.core.paginator import Paginator
+from django.utils.text import gettext_lazy as _
class FilteredQuerysetMixin:
@@ -25,3 +26,32 @@ class PaginatedQuerysetMixin:
page = self.request.GET.get("page", 1)
qs = paginator.get_page(page)
return qs
+
+
+class StylingMixin:
+ placeholder_for_field = {}
+ styled_fields = []
+
+ def __init__(self, *args, **kwargs):
+ super().__init__(*args, **kwargs)
+ self.style_fields()
+
+ def style_fields(self):
+ for field_name in self.styled_fields:
+ field = self.fields[field_name]
+ field.required = True
+ field.widget.attrs.update(
+ {
+ "class": "my-2 bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg "
+ "focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 "
+ "dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-primary-500 "
+ "dark:focus:border-primary-500"
+ }
+ )
+
+ if self.placeholder_for_field.get(field_name):
+ field.widget.attrs.update(
+ {
+ "placeholder": self.placeholder_for_field.get(field_name),
+ }
+ )
diff --git a/web/templates/mails/reset_password.txt b/web/templates/mails/reset_password.txt
deleted file mode 100644
index ba35d17..0000000
--- a/web/templates/mails/reset_password.txt
+++ /dev/null
@@ -1 +0,0 @@
-Hola madafaka
diff --git a/web/templates/mails/subject_reset_password.txt b/web/templates/mails/subject_reset_password.txt
index e69de29..eb30fcb 100644
--- a/web/templates/mails/subject_reset_password.txt
+++ b/web/templates/mails/subject_reset_password.txt
@@ -0,0 +1,3 @@
+{% load i18n %}{% autoescape off %}
+{% blocktranslate %}Password reset on {{ site_name }}{% endblocktranslate %}
+{% endautoescape %}
\ No newline at end of file
diff --git a/web/templates/users/login.html b/web/templates/users/login.html
index 95f9092..a61cf78 100644
--- a/web/templates/users/login.html
+++ b/web/templates/users/login.html
@@ -8,7 +8,7 @@
- {{ title }}
+ {{ web_title }}