Code Duplication    Length = 18-18 lines in 2 locations

django-data/image/common/views.py 1 location

@@ 171-188 (lines=18) @@
168
class DeleteMaterialMixin(OwnerMixin):
169
    """A common DeleteMixin for Material classes (Sample/Animal)"""
170
171
    def dispatch(self, request, *args, **kwargs):
172
        handler = super(DeleteMaterialMixin, self).dispatch(
173
                request, *args, **kwargs)
174
175
        # here I've done get_queryset. Check for submission status
176
        if hasattr(self, "object") and not self.object.can_delete():
177
            message = "Cannot delete %s: submission status is: %s" % (
178
                    self.object, self.object.submission.get_status_display())
179
180
            logger.warning(message)
181
            messages.warning(
182
                request=self.request,
183
                message=message,
184
                extra_tags="alert alert-dismissible alert-warning")
185
186
            return redirect(self.object.get_absolute_url())
187
188
        return handler
189
190
    def get_success_url(self):
191
        return reverse(

django-data/image/submissions/views.py 1 location

@@ 462-479 (lines=18) @@
459
class DeleteSubmissionMixin():
460
    """Prevent a delete relying on statuses"""
461
462
    def dispatch(self, request, *args, **kwargs):
463
        handler = super(DeleteSubmissionMixin, self).dispatch(
464
                request, *args, **kwargs)
465
466
        # here I've done get_queryset. Check for submission status
467
        if hasattr(self, "object") and not self.object.can_delete():
468
            message = "Cannot delete %s: submission status is: %s" % (
469
                    self.object, self.object.get_status_display())
470
471
            logger.warning(message)
472
            messages.warning(
473
                request=self.request,
474
                message=message,
475
                extra_tags="alert alert-dismissible alert-warning")
476
477
            return redirect(self.object.get_absolute_url())
478
479
        return handler
480
481
482
class BatchDeleteMixin(