adjust registered by to managed by on db aslo remove url and api key on adding sites for gm
This commit is contained in:
1 parent
64b37b6b6d
commit
521f36d22d
15 files changed
+112
-75
No files matched your search
@@ -2,9 +2,9 @@
|
||||
|
||||
- director / director_admin: all sites / active sites / GMs
|
||||
- buh / bu_admin: only GMs (and gm_admins) they manage, plus those GMs' sites
|
||||
- gm / gm_admin: only their own sites / active sites they registered
|
||||
- gm / gm_admin: only their own sites / active sites they manage
|
||||
|
||||
Farm Site rows are only visible to non-directors when linked to an active
|
||||
Farm Site rows are only visible to non-directors when linked to an enabled
|
||||
ActiveSite in the viewer's Pengaturan registry.
|
||||
"""
|
||||
|
||||
@@ -61,7 +61,7 @@ def managed_gm_ids(buh: User) -> list[int]:
|
||||
|
||||
def visible_owner_ids(user: User) -> list[int] | None:
|
||||
"""
|
||||
Site.user / ActiveSite.registered_by ids this viewer may see.
|
||||
Site.user / ActiveSite.managed_by ids this viewer may see.
|
||||
|
||||
Returns None when there is no restriction (director / superuser).
|
||||
"""
|
||||
@@ -89,7 +89,7 @@ def visible_active_site_ids(user: User) -> list[int] | None:
|
||||
return []
|
||||
return list(
|
||||
ActiveSite.objects.filter(
|
||||
registered_by_id__in=owners,
|
||||
managed_by_id__in=owners,
|
||||
is_active=True,
|
||||
).values_list("pk", flat=True)
|
||||
)
|
||||
@@ -132,7 +132,7 @@ def filter_active_sites_queryset(qs: QuerySet, viewer: User) -> QuerySet:
|
||||
return qs
|
||||
if not owners:
|
||||
return qs.none()
|
||||
return qs.filter(registered_by_id__in=owners)
|
||||
return qs.filter(managed_by_id__in=owners)
|
||||
|
||||
|
||||
def filter_kandangs_queryset(qs: QuerySet, viewer: User) -> QuerySet:
|
||||
|
||||
@@ -31,13 +31,13 @@ class VisibilityScopeTests(TestCase):
|
||||
code="a",
|
||||
name="Site A",
|
||||
api_base_url="https://a.example/api/v1",
|
||||
registered_by=self.gm,
|
||||
managed_by=self.gm,
|
||||
)
|
||||
self.active_b = ActiveSite.objects.create(
|
||||
code="b",
|
||||
name="Site B",
|
||||
api_base_url="https://b.example/api/v1",
|
||||
registered_by=self.gm_other,
|
||||
managed_by=self.gm_other,
|
||||
)
|
||||
self.site = Site.objects.create(
|
||||
site_name="Site A", user=self.gm, active_site=self.active_a
|
||||
@@ -98,7 +98,6 @@ class VisibilityScopeTests(TestCase):
|
||||
{
|
||||
"code": "orphan-seed",
|
||||
"name": "Orphan Seed",
|
||||
"api_base_url": "https://orphan.example/api/v1",
|
||||
"is_active": True,
|
||||
},
|
||||
format="json",
|
||||
|
||||
Reference in new issue
Block a user