Skip to content

Commit d4b811d

Browse files
fsbraunvinitkumar
andauthored
fix: Sites menu was empty in the page tree (#8064)
* Update make-release.yml * Update make-release.yml * Update make-release.yml * Update make-release.yml * Update make-release.yml * Update make-release * Update make-release * fix: `tree.sites` was missing from the page tree context * Undo unwante dchanges * More undo --------- Co-authored-by: Vinit Kumar <mail@vinitkumar.me>
1 parent a348c7d commit d4b811d

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

cms/admin/pageadmin.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1018,6 +1018,14 @@ def has_delete_translation_permission(self, request, language, obj=None):
10181018
)
10191019
return has_perm
10201020

1021+
def get_sites_for_user(self, user):
1022+
sites = Site.objects.order_by('name')
1023+
1024+
if not get_cms_setting('PERMISSION') or user.is_superuser:
1025+
return sites
1026+
_has_perm = page_permissions.user_can_change_at_least_one_page
1027+
return [site for site in sites if _has_perm(user, site)]
1028+
10211029
def changelist_view(self, request, extra_context=None):
10221030
from django.contrib.admin.views.main import ERROR_FLAG
10231031

@@ -1090,6 +1098,7 @@ def changelist_view(self, request, extra_context=None):
10901098
'admin': self,
10911099
'tree': {
10921100
'site': site,
1101+
'sites': self.get_sites_for_user(request.user),
10931102
'query': query,
10941103
'is_filtered': changelist_form.is_filtered(),
10951104
'items': pages,

cms/tests/test_admin.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -736,7 +736,7 @@ def test_tree_view_queries(self):
736736

737737
user = self.get_superuser()
738738
with self.login_user_context(user):
739-
with self.assertNumQueries(6):
739+
with self.assertNumQueries(7):
740740
force_str(self.client.get(self.get_pages_admin_list_uri('en')))
741741

742742
def test_smart_link_pages(self):

0 commit comments

Comments
 (0)