forked from Mirrors/Dispatcharr
Fixed bug in deleting stream profiles
This commit is contained in:
parent
656c9e9e14
commit
c4f470e8f7
3 changed files with 13 additions and 6 deletions
|
|
@ -5,3 +5,7 @@ import os, logging
|
|||
class CoreConfig(AppConfig):
|
||||
default_auto_field = 'django.db.models.BigAutoField'
|
||||
name = 'core'
|
||||
|
||||
def ready(self):
|
||||
# Import signals to ensure they get registered
|
||||
import core.signals
|
||||
|
|
|
|||
|
|
@ -58,12 +58,6 @@ class StreamProfile(models.Model):
|
|||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
def delete(self):
|
||||
if self.locked():
|
||||
raise ValueError("This profile is locked and cannot be deleted.")
|
||||
|
||||
self.delete()
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
if self.pk: # Only check existing records
|
||||
orig = StreamProfile.objects.get(pk=self.pk)
|
||||
|
|
|
|||
9
core/signals.py
Normal file
9
core/signals.py
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
from django.db.models.signals import pre_delete
|
||||
from django.dispatch import receiver
|
||||
from django.core.exceptions import ValidationError
|
||||
from .models import StreamProfile
|
||||
|
||||
@receiver(pre_delete, sender=StreamProfile)
|
||||
def prevent_deletion_if_locked(sender, instance, **kwargs):
|
||||
if instance.locked:
|
||||
raise ValidationError("This profile is locked and cannot be deleted.")
|
||||
Loading…
Add table
Add a link
Reference in a new issue