mirror of
https://github.com/ae-utbm/sith.git
synced 2025-06-20 10:05:20 +00:00
Merge pull request #1132 from ae-utbm/missing-perm
Missing SAS permission
This commit is contained in:
commit
a1ae67da7d
19
sas/migrations/0005_alter_sasfile_options.py
Normal file
19
sas/migrations/0005_alter_sasfile_options.py
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
# Generated by Django 5.2.3 on 2025-06-17 18:53
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
dependencies = [("sas", "0004_picturemoderationrequest_and_more")]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterModelOptions(
|
||||||
|
name="sasfile",
|
||||||
|
options={
|
||||||
|
"permissions": [
|
||||||
|
("moderate_sasfile", "Can moderate SAS files"),
|
||||||
|
("view_unmoderated_sasfile", "Can view not moderated SAS files"),
|
||||||
|
]
|
||||||
|
},
|
||||||
|
),
|
||||||
|
]
|
@ -41,6 +41,10 @@ class SasFile(SithFile):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
proxy = True
|
proxy = True
|
||||||
|
permissions = [
|
||||||
|
("moderate_sasfile", "Can moderate SAS files"),
|
||||||
|
("view_unmoderated_sasfile", "Can view not moderated SAS files"),
|
||||||
|
]
|
||||||
|
|
||||||
def can_be_viewed_by(self, user):
|
def can_be_viewed_by(self, user):
|
||||||
if user.is_anonymous:
|
if user.is_anonymous:
|
||||||
@ -59,7 +63,7 @@ class SasFile(SithFile):
|
|||||||
return self.id in viewable
|
return self.id in viewable
|
||||||
|
|
||||||
def can_be_edited_by(self, user):
|
def can_be_edited_by(self, user):
|
||||||
return user.is_root or user.is_in_group(pk=settings.SITH_GROUP_SAS_ADMIN_ID)
|
return user.has_perm("sas.change_sasfile")
|
||||||
|
|
||||||
|
|
||||||
class PictureQuerySet(models.QuerySet):
|
class PictureQuerySet(models.QuerySet):
|
||||||
@ -69,7 +73,7 @@ class PictureQuerySet(models.QuerySet):
|
|||||||
Warning:
|
Warning:
|
||||||
Calling this queryset method may add several additional requests.
|
Calling this queryset method may add several additional requests.
|
||||||
"""
|
"""
|
||||||
if user.is_root or user.is_in_group(pk=settings.SITH_GROUP_SAS_ADMIN_ID):
|
if user.has_perm("sas.moderate_sasfile"):
|
||||||
return self.all()
|
return self.all()
|
||||||
if user.was_subscribed:
|
if user.was_subscribed:
|
||||||
return self.filter(Q(is_moderated=True) | Q(owner=user))
|
return self.filter(Q(is_moderated=True) | Q(owner=user))
|
||||||
@ -182,7 +186,7 @@ class AlbumQuerySet(models.QuerySet):
|
|||||||
Warning:
|
Warning:
|
||||||
Calling this queryset method may add several additional requests.
|
Calling this queryset method may add several additional requests.
|
||||||
"""
|
"""
|
||||||
if user.is_root or user.is_in_group(pk=settings.SITH_GROUP_SAS_ADMIN_ID):
|
if user.has_perm("sas.moderate_sasfile"):
|
||||||
return self.all()
|
return self.all()
|
||||||
if user.was_subscribed:
|
if user.was_subscribed:
|
||||||
return self.filter(Q(is_moderated=True) | Q(owner=user))
|
return self.filter(Q(is_moderated=True) | Q(owner=user))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user