|
|
@@ -17,6 +17,7 @@ from django.views.generic import View
|
|
|
from django_tables2.export import TableExport
|
|
|
|
|
|
from extras.models import ExportTemplate
|
|
|
+from extras.signals import clear_webhooks
|
|
|
from utilities.error_handlers import handle_protectederror
|
|
|
from utilities.exceptions import AbortTransaction, PermissionsViolation
|
|
|
from utilities.forms import (
|
|
|
@@ -302,6 +303,7 @@ class ObjectEditView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View):
|
|
|
msg = "Object save failed due to object-level permissions violation"
|
|
|
logger.debug(msg)
|
|
|
form.add_error(None, msg)
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
else:
|
|
|
logger.debug("Form validation failed")
|
|
|
@@ -580,12 +582,13 @@ class ObjectImportView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View):
|
|
|
raise ObjectDoesNotExist
|
|
|
|
|
|
except AbortTransaction:
|
|
|
- pass
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
except PermissionsViolation:
|
|
|
msg = "Object creation failed due to object-level permissions violation"
|
|
|
logger.debug(msg)
|
|
|
form.add_error(None, msg)
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
if not model_form.errors:
|
|
|
logger.info(f"Import object {obj} (PK: {obj.pk})")
|
|
|
@@ -728,12 +731,13 @@ class BulkImportView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View):
|
|
|
})
|
|
|
|
|
|
except ValidationError:
|
|
|
- pass
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
except PermissionsViolation:
|
|
|
msg = "Object import failed due to object-level permissions violation"
|
|
|
logger.debug(msg)
|
|
|
form.add_error(None, msg)
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
else:
|
|
|
logger.debug("Form validation failed")
|
|
|
@@ -856,11 +860,13 @@ class BulkEditView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View):
|
|
|
|
|
|
except ValidationError as e:
|
|
|
messages.error(self.request, "{} failed validation: {}".format(obj, ", ".join(e.messages)))
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
except PermissionsViolation:
|
|
|
msg = "Object update failed due to object-level permissions violation"
|
|
|
logger.debug(msg)
|
|
|
form.add_error(None, msg)
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
else:
|
|
|
logger.debug("Form validation failed")
|
|
|
@@ -964,6 +970,7 @@ class BulkRenameView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View):
|
|
|
msg = "Object update failed due to object-level permissions violation"
|
|
|
logger.debug(msg)
|
|
|
form.add_error(None, msg)
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
else:
|
|
|
form = self.form(initial={'pk': request.POST.getlist('pk')})
|
|
|
@@ -1177,6 +1184,8 @@ class ComponentCreateView(GetReturnURLMixin, ObjectPermissionRequiredMixin, View
|
|
|
msg = "Component creation failed due to object-level permissions violation"
|
|
|
logger.debug(msg)
|
|
|
form.add_error(None, msg)
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
+
|
|
|
return None
|
|
|
|
|
|
|
|
|
@@ -1253,12 +1262,13 @@ class BulkComponentCreateView(GetReturnURLMixin, ObjectPermissionRequiredMixin,
|
|
|
raise PermissionsViolation
|
|
|
|
|
|
except IntegrityError:
|
|
|
- pass
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
except PermissionsViolation:
|
|
|
msg = "Component creation failed due to object-level permissions violation"
|
|
|
logger.debug(msg)
|
|
|
form.add_error(None, msg)
|
|
|
+ clear_webhooks.send(sender=self)
|
|
|
|
|
|
if not form.errors:
|
|
|
msg = "Added {} {} to {} {}.".format(
|