feat: improved styling
This commit is contained in:
@@ -11,6 +11,7 @@ class HTMXFormComponent(TemplateView):
|
|||||||
template_name: str = "components/default/form.html"
|
template_name: str = "components/default/form.html"
|
||||||
hx_trigger = ""
|
hx_trigger = ""
|
||||||
view_name = ""
|
view_name = ""
|
||||||
|
save_button_text = ""
|
||||||
|
|
||||||
def get_view_name(self):
|
def get_view_name(self):
|
||||||
return self.view_name
|
return self.view_name
|
||||||
@@ -38,6 +39,7 @@ class HTMXFormComponent(TemplateView):
|
|||||||
return {
|
return {
|
||||||
"form": form,
|
"form": form,
|
||||||
"url": self.get_view_name(),
|
"url": self.get_view_name(),
|
||||||
|
"save_button_text": self.save_button_text,
|
||||||
}
|
}
|
||||||
|
|
||||||
def post(self, request, *args, **kwargs):
|
def post(self, request, *args, **kwargs):
|
||||||
|
|||||||
@@ -16,10 +16,13 @@
|
|||||||
<span class="flex justify-center mb-2 text-sm font-medium text-red-900 dark:text-red-400">{{ error }}</span>
|
<span class="flex justify-center mb-2 text-sm font-medium text-red-900 dark:text-red-400">{{ error }}</span>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
|
<footer class="flex justify-end">
|
||||||
<button class="text-white bg-primary-600 hover:bg-primary-700 focus:ring-4 focus:outline-none
|
<button class="text-white bg-primary-600 hover:bg-primary-700 focus:ring-4 focus:outline-none
|
||||||
focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-primary-600
|
focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-primary-600
|
||||||
dark:hover:bg-primary-700 dark:focus:ring-primary-800"
|
dark:hover:bg-primary-700 dark:focus:ring-primary-800"
|
||||||
>
|
>
|
||||||
{% translate 'Guardar' %}
|
{{ save_button_text }}
|
||||||
</button>
|
</button>
|
||||||
|
</footer>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|||||||
@@ -9,18 +9,33 @@
|
|||||||
>
|
>
|
||||||
{% translate 'Mi cuenta' %}
|
{% translate 'Mi cuenta' %}
|
||||||
</h2>
|
</h2>
|
||||||
<div
|
<div class="md:grid md:grid-cols-2 md:gap-4">
|
||||||
class="mt-4 p-6 border border-gray-100 rounded-md dark:border-gray-600"
|
<section
|
||||||
hx-get="{% url 'web:user_info_component' %}" hx-trigger="load, updated_user_info"
|
class="p-6 border border-gray-100 rounded-md dark:border-gray-600"
|
||||||
>
|
|
||||||
|
|
||||||
|
>
|
||||||
|
<h2 class="mb-4 text-xl font-semibold text-gray-900 dark:text-white sm:text-2xl md:mb-6">
|
||||||
|
{% translate 'Datos de usuario' %}
|
||||||
|
</h2>
|
||||||
|
<div hx-get="{% url 'web:user_info_component' %}" hx-trigger="load, updated_user_info">
|
||||||
|
<div class="flex justify-center items-center">
|
||||||
|
{% include 'components/generic/spinner.html' %}
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
<div
|
<section
|
||||||
class="mt-4 p-6 border border-gray-100 rounded-md dark:border-gray-600"
|
class="p-6 border border-gray-100 rounded-md dark:border-gray-600 mt-4 md:mt-0"
|
||||||
hx-get="{% url 'web:change_password_component' %}" hx-trigger="load, changed_password"
|
|
||||||
>
|
>
|
||||||
|
<h2 class="mb-4 text-xl font-semibold text-gray-900 dark:text-white sm:text-2xl md:mb-6">
|
||||||
|
{% translate 'Contraseña' %}
|
||||||
|
</h2>
|
||||||
|
<div hx-get="{% url 'web:change_password_component' %}" hx-trigger="load, changed_password">
|
||||||
|
<div class="flex justify-center items-center">
|
||||||
|
{% include 'components/generic/spinner.html' %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="mt-4 p-6 border border-gray-100 rounded-md dark:border-gray-600">
|
<div class="mt-4 p-6 border border-gray-100 rounded-md dark:border-gray-600">
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ from django.db import models
|
|||||||
from django.http import HttpResponse
|
from django.http import HttpResponse
|
||||||
from django.shortcuts import get_object_or_404, render
|
from django.shortcuts import get_object_or_404, render
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
|
from django.utils.text import gettext_lazy as _
|
||||||
from django.views.generic import TemplateView
|
from django.views.generic import TemplateView
|
||||||
|
|
||||||
from config.mixins import HTMXFormComponent
|
from config.mixins import HTMXFormComponent
|
||||||
@@ -152,6 +153,7 @@ class WishlistButton(TemplateView):
|
|||||||
class UserInfoFormComponentView(HTMXFormComponent):
|
class UserInfoFormComponentView(HTMXFormComponent):
|
||||||
form_class = UserInfoForm
|
form_class = UserInfoForm
|
||||||
hx_trigger = "updated_user_info"
|
hx_trigger = "updated_user_info"
|
||||||
|
save_button_text = _("Actualizar datos")
|
||||||
|
|
||||||
def get_object(self) -> models.Model:
|
def get_object(self) -> models.Model:
|
||||||
return self.request.user
|
return self.request.user
|
||||||
@@ -170,6 +172,7 @@ class UserInfoFormComponentView(HTMXFormComponent):
|
|||||||
class ChangePasswordFormComponentView(HTMXFormComponent):
|
class ChangePasswordFormComponentView(HTMXFormComponent):
|
||||||
form_class = ChangePasswordForm
|
form_class = ChangePasswordForm
|
||||||
hx_trigger = "changed_password"
|
hx_trigger = "changed_password"
|
||||||
|
save_button_text = _("Cambiar contraseña")
|
||||||
|
|
||||||
def get_form(self, initial=True):
|
def get_form(self, initial=True):
|
||||||
if initial:
|
if initial:
|
||||||
|
|||||||
Reference in New Issue
Block a user