|
4 | 4 | from django.conf import settings |
5 | 5 | from django.contrib import admin, messages |
6 | 6 | from django.contrib.auth.admin import UserAdmin |
7 | | -from django.contrib.auth.models import User |
| 7 | +from django.contrib.auth.models import Permission, User |
8 | 8 | from django.contrib.gis import admin as geoadmin |
9 | 9 | from django.core.exceptions import ValidationError |
10 | 10 | from django.http import HttpResponse, HttpResponseRedirect |
@@ -1052,6 +1052,40 @@ class ExportTokenAdmin(admin.ModelAdmin): |
1052 | 1052 | pass |
1053 | 1053 |
|
1054 | 1054 |
|
| 1055 | +try: |
| 1056 | + admin.site.unregister(Permission) |
| 1057 | +except admin.sites.NotRegistered: |
| 1058 | + pass |
| 1059 | + |
| 1060 | + |
| 1061 | +@admin.register(Permission) |
| 1062 | +class PermissionReportAdmin(admin.ModelAdmin): |
| 1063 | + # Show the menu entry, but route to the Users-per-permission report. |
| 1064 | + def has_module_permission(self, request): |
| 1065 | + from api.admin_reports import _user_has_access |
| 1066 | + |
| 1067 | + return _user_has_access(request.user) |
| 1068 | + |
| 1069 | + def has_view_permission(self, request, obj=None): |
| 1070 | + from api.admin_reports import _user_has_access |
| 1071 | + |
| 1072 | + return _user_has_access(request.user) |
| 1073 | + |
| 1074 | + def has_add_permission(self, request): |
| 1075 | + return False |
| 1076 | + |
| 1077 | + def has_change_permission(self, request, obj=None): |
| 1078 | + return False |
| 1079 | + |
| 1080 | + def has_delete_permission(self, request, obj=None): |
| 1081 | + return False |
| 1082 | + |
| 1083 | + def changelist_view(self, request, extra_context=None): |
| 1084 | + from api.admin_reports import users_per_permission_view |
| 1085 | + |
| 1086 | + return users_per_permission_view(request) |
| 1087 | + |
| 1088 | + |
1055 | 1089 | admin.site.register(models.DisasterType, DisasterTypeAdmin) |
1056 | 1090 | admin.site.register(models.Event, EventAdmin) |
1057 | 1091 | admin.site.register(models.GDACSEvent, GdacsAdmin) |
|
0 commit comments