New payment retry policy.
[wolnelektury.git] / src / catalogue / models / book.py
index d3eddfd..2371103 100644 (file)
@@ -229,8 +229,15 @@ class Book(models.Model):
     def is_accessible_to(self, user):
         if not self.preview:
             return True
+        if not user.is_authenticated:
+            return False
         Membership = apps.get_model('club', 'Membership')
-        return Membership.is_active_for(user)
+        if Membership.is_active_for(user):
+            return True
+        Funding = apps.get_model('funding', 'Funding')
+        if Funding.objects.filter(user=user, offer__book=self):
+            return True
+        return False
 
     def save(self, force_insert=False, force_update=False, **kwargs):
         from sortify import sortify