feat: rebuild theme on web settings changed
This commit is contained in:
@@ -4,3 +4,6 @@ from django.apps import AppConfig
|
||||
class WebConfig(AppConfig):
|
||||
default_auto_field = "django.db.models.BigAutoField"
|
||||
name = "web"
|
||||
|
||||
def ready(self):
|
||||
from .signals import rebuild_theme
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
# Generated by Django 5.1.4 on 2025-01-21 11:16
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("web", "0002_remove_websettings_logo_240_websettings_logo_256"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="websettings",
|
||||
name="theme_colors",
|
||||
field=models.JSONField(
|
||||
default=dict, verbose_name="colores del tema", blank=True
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -86,6 +86,9 @@ class WebSettings(SingletonModel):
|
||||
logo_128 = models.ImageField(
|
||||
upload_to="assets", blank=True, null=True, verbose_name=_("logo 128x128")
|
||||
)
|
||||
theme_colors = models.JSONField(
|
||||
default=dict, verbose_name=_("colores del tema"), blank=True
|
||||
)
|
||||
|
||||
def get_resized_logo(self, size):
|
||||
width, height = size
|
||||
|
||||
+11
-1
@@ -1,7 +1,9 @@
|
||||
from django.db.models.signals import post_save
|
||||
from django.dispatch import receiver
|
||||
|
||||
from django.core.management import call_command
|
||||
from shop.models import Cart, CartItem
|
||||
from shop.signals import clear_cart, send_order_email
|
||||
from web.models import WebSettings
|
||||
|
||||
|
||||
@receiver(clear_cart, dispatch_uid="clear_cart")
|
||||
@@ -13,3 +15,11 @@ def create_payment_from_redsys(sender, **kwargs):
|
||||
@receiver(send_order_email, dispatch_uid="send_order_email")
|
||||
def create_payment_from_redsys(sender, **kwargs):
|
||||
pass
|
||||
|
||||
|
||||
@receiver(post_save, sender=WebSettings)
|
||||
def rebuild_theme(sender, instance: WebSettings, **kwargs):
|
||||
try:
|
||||
call_command("build_tailwind_theme")
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
+2
-1
@@ -11,7 +11,8 @@ from web.views.components import (
|
||||
list_wishlisted_products,
|
||||
update_customer_address,
|
||||
user_info_component,
|
||||
wishlist_button, change_password_component,
|
||||
wishlist_button,
|
||||
change_password_component,
|
||||
)
|
||||
from web.views.users import (
|
||||
login,
|
||||
|
||||
Reference in New Issue
Block a user