Ensure default footer actions' media is included

It was popped from the menu_items, so it's not in that list when we loop
through to collect the media files.

And add an early return if the default item is undefined (e.g. if a
construct hook caused the list to be empty), so it doesn't crash when it
tries to render to action menu.
pull/12425/head
Sage Abdullah 2024-10-17 12:00:51 +01:00 zatwierdzone przez Thibaud Colas
rodzic ea61e39728
commit b022ae135a
2 zmienionych plików z 5 dodań i 2 usunięć

Wyświetl plik

@ -317,6 +317,9 @@ class PageActionMenu:
self.default_item = None
def render_html(self):
if not self.default_item:
return ""
rendered_menu_items = [
menu_item.render_html(self.context) for menu_item in self.menu_items
]
@ -335,7 +338,7 @@ class PageActionMenu:
@cached_property
def media(self):
media = Media()
media = self.default_item.media if self.default_item else Media()
for item in self.menu_items:
media += item.media
return media

Wyświetl plik

@ -368,7 +368,7 @@ class SnippetActionMenu:
@cached_property
def media(self):
media = Media()
media = self.default_item.media if self.default_item else Media()
for item in self.menu_items:
media += item.media
return media