"""
Señales — App Ratings
======================
Recalcula el promedio global al guardar/eliminar valoraciones.
"""

from django.db.models.signals import post_delete, post_save
from django.dispatch import receiver

from .models import PromedioGlobal, Valoracion


@receiver(post_save, sender=Valoracion)
def recalcular_promedio_on_save(sender, instance, **kwargs):
    PromedioGlobal.get_instance().recalcular()


@receiver(post_delete, sender=Valoracion)
def recalcular_promedio_on_delete(sender, instance, **kwargs):
    PromedioGlobal.get_instance().recalcular()
