Source code for shuup.admin.modules.media
from django.utils.translation import gettext_lazy as _
from shuup.admin.base import AdminModule, MenuEntry
from shuup.admin.menu import CONTENT_MENU_CATEGORY
from shuup.admin.utils.urls import admin_url
[docs]
class MediaModule(AdminModule):
"""
A module for handling site media.
Basically a frontend for the Django-Filer app.
"""
name = _("Media")
[docs]
def get_urls(self):
return [
admin_url(
"^media/$",
"shuup.admin.modules.media.views.MediaBrowserView",
name="media.browse",
),
admin_url(
r"^media/folder/(?P<pk>\d+)/$",
"shuup.admin.modules.media.views.MediaFolderEditView",
name="media.edit-access",
),
admin_url(
"^media/upload/$",
"shuup.admin.modules.media.views.media_upload",
name="media.upload",
),
]
[docs]
def get_extra_permissions(self):
permissions = super().get_extra_permissions()
permissions += (
# Allows the users to view all folders, not limited to the once that they have access to.
"media.view-all",
# Allows the user to create a folder anywhere, not limited to folders under their root folder.
"media.create-folder",
# Allows the user to rename all folders, not limited to folders under their root folder.
"media.rename-folder",
# Allows the user to delete all folders, not limited to folders under their root folder.
"media.delete-folder",
# Allows the user to upload content to all folders, not limited to folders under their root folder.
"media.upload-to-folder",
# Allows the user to rename all files, not limeted to files that the user has uploaded.
"media.rename-file",
# Allows the user to delete all files, not limeted to files that the user has uploaded.
"media.delete-file",
)
return permissions