fix: can_user_edit теперь учитывает default_can_edit
Проблема: даже после включения default_can_edit=True обычные пользователи не могли создавать события в календаре. Причина: метод Calendar.can_user_edit() проверял только: - is_superuser/is_staff - is_owner() - subscription.can_edit НО НЕ проверял default_can_edit для случая когда подписки нет. Решение: добавлена проверка default_can_edit после проверки подписки. Теперь если подписки нет, но default_can_edit=True, пользователь может редактировать. Это позволяет создавать публичные календари, где ВСЕ пользователи могут создавать события без явных подписок.
This commit is contained in:
parent
2c70730a17
commit
8825434b7a
@ -251,6 +251,11 @@ class Calendar(models.Model):
|
||||
if subscription:
|
||||
return subscription.can_edit
|
||||
|
||||
# Если подписки нет, проверяем default_can_edit
|
||||
# (для публичных календарей, где пользователь может видеть, но не подписан)
|
||||
if self.default_can_edit:
|
||||
return True
|
||||
|
||||
return False
|
||||
|
||||
def can_user_manage(self, user):
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user