labs/filebrowser/admin.py

36 lines
1022 B
Python

from django.urls import re_path
from django.contrib import admin
try:
from django.urls import reverse
except ImportError:
from django.core.urlresolvers import reverse
from django.http import HttpResponseRedirect
from .models import FileBrowser
from .settings import SHOW_IN_DASHBOARD
class FileBrowserAdmin(admin.ModelAdmin):
actions = []
def has_add_permission(self, request):
return False
def has_delete_permission(self, request, obj=None):
return False
def get_urls(self):
opts = self.model._meta
info = opts.app_label, (opts.model_name if hasattr(
opts, 'model_name') else opts.module_name)
return [
re_path('^$', self.admin_site.admin_view(
self.filebrowser_view), name='{0}_{1}_changelist'.format(*info)),
]
def filebrowser_view(self, request):
return HttpResponseRedirect(reverse('filebrowser:fb_browse'))
if SHOW_IN_DASHBOARD:
admin.site.register(FileBrowser, FileBrowserAdmin)