diff --git a/lohrothek/core/models.py b/lohrothek/core/models.py
index c0f83c61e2fe827014f35e93f9482ba97a7f1cf1..8b8d2108740dc08170ddc33efe8a067bf50bec74 100644
--- a/lohrothek/core/models.py
+++ b/lohrothek/core/models.py
@@ -143,7 +143,12 @@ class SoftDeleteManager(models.Manager):
 class SoftDeleteModel(models.Model):
     """add this to your class to get Soft-Delete-Capability"""
 
+    # By default Model.objects will return only non-deleted objects
+    # If we explicit have to look for deleted objects, use `objects_all`
+    # Example `Episode.objects_with_soft_deleted.filter(...)`
+
     objects = SoftDeleteManager()
+    objects_with_soft_deleted = models.Manager()
     admin_objects = models.Manager()
     deletion_time = models.DateTimeField(
         "Löschung (Datum/Uhrzeit)", null=True, blank=True
@@ -161,7 +166,16 @@ class SoftDeleteModel(models.Model):
 
     def hard_delete(self):
         """call this if you want the object actual removed from the database"""
-        super().delete(self)
+        super(SoftDeleteModel, self).delete()
+
+    def restore(self):
+        """restore a soft-deleted object"""
+        self.deletion_time = None
+        self.save()
+
+    @property
+    def is_deleted(self):
+        return self.deletion_time is not None
 
 
 class Profile(models.Model):