diff --git a/allianceauth/authentication/admin.py b/allianceauth/authentication/admin.py index 80fd53bc..6da117e2 100644 --- a/allianceauth/authentication/admin.py +++ b/allianceauth/authentication/admin.py @@ -288,7 +288,7 @@ class UserAdmin(BaseUserAdmin): Behavior of groups and characters columns can be configured via settings """ - inlines = BaseUserAdmin.inlines + [UserProfileInline] + inlines = [UserProfileInline] ordering = ('username', ) list_select_related = ('profile__state', 'profile__main_character') show_full_result_count = True diff --git a/allianceauth/authentication/decorators.py b/allianceauth/authentication/decorators.py index 88742fd7..33bbf2e3 100644 --- a/allianceauth/authentication/decorators.py +++ b/allianceauth/authentication/decorators.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.contrib.auth.decorators import user_passes_test from django.core.exceptions import PermissionDenied from functools import wraps diff --git a/allianceauth/authentication/hmac_urls.py b/allianceauth/authentication/hmac_urls.py index e7c03d11..23c48ac1 100644 --- a/allianceauth/authentication/hmac_urls.py +++ b/allianceauth/authentication/hmac_urls.py @@ -1,6 +1,5 @@ -from django.conf.urls import include - from allianceauth.authentication import views +from django.urls import include from django.urls import re_path from django.urls import path diff --git a/allianceauth/eveonline/autogroups/admin.py b/allianceauth/eveonline/autogroups/admin.py index 7f2ebabe..240d4578 100644 --- a/allianceauth/eveonline/autogroups/admin.py +++ b/allianceauth/eveonline/autogroups/admin.py @@ -14,6 +14,7 @@ def sync_user_groups(modeladmin, request, queryset): agc.update_all_states_group_membership() +@admin.register(AutogroupsConfig) class AutogroupsConfigAdmin(admin.ModelAdmin): formfield_overrides = { models.CharField: {'strip': False} @@ -36,6 +37,5 @@ class AutogroupsConfigAdmin(admin.ModelAdmin): return actions -admin.site.register(AutogroupsConfig, AutogroupsConfigAdmin) admin.site.register(ManagedCorpGroup) admin.site.register(ManagedAllianceGroup) diff --git a/allianceauth/eveonline/autogroups/tests/test_models.py b/allianceauth/eveonline/autogroups/tests/test_models.py index 45044608..c6b966a3 100644 --- a/allianceauth/eveonline/autogroups/tests/test_models.py +++ b/allianceauth/eveonline/autogroups/tests/test_models.py @@ -93,7 +93,7 @@ class AutogroupsConfigTestCase(TestCase): group_qs = Group.objects.filter(pk=group.pk) self.assertIn(group, self.member.groups.all()) - self.assertQuerysetEqual(self.member.groups.all(), map(repr, pre_groups | group_qs), ordered=False) + self.assertQuerySetEqual(self.member.groups.all(), map(repr, pre_groups | group_qs), ordered=False) def test_update_alliance_group_membership_no_main_character(self): obj = AutogroupsConfig.objects.create() @@ -172,7 +172,7 @@ class AutogroupsConfigTestCase(TestCase): group_qs = Group.objects.filter(pk=group.pk) self.assertIn(group, self.member.groups.all()) - self.assertQuerysetEqual(self.member.groups.all(), map(repr, pre_groups | group_qs), ordered=False) + self.assertQuerySetEqual(self.member.groups.all(), map(repr, pre_groups | group_qs), ordered=False) def test_update_corp_group_membership_no_state(self): obj = AutogroupsConfig.objects.create(corp_groups=True) diff --git a/allianceauth/fleetactivitytracking/migrations/0002_auto_20160905_2220.py b/allianceauth/fleetactivitytracking/migrations/0002_auto_20160905_2220.py index 563b1e90..813a7f84 100644 --- a/allianceauth/fleetactivitytracking/migrations/0002_auto_20160905_2220.py +++ b/allianceauth/fleetactivitytracking/migrations/0002_auto_20160905_2220.py @@ -2,7 +2,6 @@ import datetime from django.db import migrations, models -from django.utils.timezone import utc class Migration(migrations.Migration): @@ -15,6 +14,6 @@ class Migration(migrations.Migration): migrations.AlterField( model_name='fatlink', name='fatdatetime', - field=models.DateTimeField(default=datetime.datetime(2016, 9, 5, 22, 20, 2, 999041, tzinfo=utc)), + field=models.DateTimeField(default=datetime.datetime(2016, 9, 5, 22, 20, 2, 999041, tzinfo=datetime.timezone.utc)), ), ] diff --git a/allianceauth/hrapplications/admin.py b/allianceauth/hrapplications/admin.py index de3cff38..538d3ffa 100755 --- a/allianceauth/hrapplications/admin.py +++ b/allianceauth/hrapplications/admin.py @@ -10,6 +10,7 @@ class ChoiceInline(admin.TabularInline): verbose_name_plural = 'Choices (optional)' verbose_name= 'Choice' +@admin.register(ApplicationQuestion) class QuestionAdmin(admin.ModelAdmin): fieldsets = [ (None, {'fields': ['title', 'help_text', 'multi_select']}), @@ -18,6 +19,5 @@ class QuestionAdmin(admin.ModelAdmin): admin.site.register(Application) admin.site.register(ApplicationComment) -admin.site.register(ApplicationQuestion, QuestionAdmin) admin.site.register(ApplicationForm) admin.site.register(ApplicationResponse) diff --git a/allianceauth/notifications/__init__.py b/allianceauth/notifications/__init__.py index e22e6ad7..1a7c9e01 100644 --- a/allianceauth/notifications/__init__.py +++ b/allianceauth/notifications/__init__.py @@ -1,3 +1 @@ from .core import notify # noqa: F401 - -default_app_config = 'allianceauth.notifications.apps.NotificationsConfig' diff --git a/allianceauth/notifications/admin.py b/allianceauth/notifications/admin.py index 03f1dd4e..3fb3242a 100644 --- a/allianceauth/notifications/admin.py +++ b/allianceauth/notifications/admin.py @@ -15,18 +15,22 @@ class NotificationAdmin(admin.ModelAdmin): ordering = ("-timestamp", ) search_fields = ["user__username", "user__profile__main_character__character_name"] + @admin.display( + ordering="user__profile__main_character__character_name" + ) def _main(self, obj): try: return obj.user.profile.main_character except AttributeError: return obj.user - _main.admin_order_field = "user__profile__main_character__character_name" + @admin.display( + ordering="user__profile__state__name" + ) def _state(self, obj): return obj.user.profile.state - _state.admin_order_field = "user__profile__state__name" def has_change_permission(self, request, obj=None): return False diff --git a/allianceauth/project_template/project_name/urls.py b/allianceauth/project_template/project_name/urls.py index 803ef102..58d40642 100644 --- a/allianceauth/project_template/project_name/urls.py +++ b/allianceauth/project_template/project_name/urls.py @@ -1,9 +1,8 @@ -from django.conf.urls import include from allianceauth import urls -from django.urls import re_path +from django.urls import include, path urlpatterns = [ - re_path(r'', include(urls)), + path('', include(urls)), ] handler500 = 'allianceauth.views.Generic500Redirect' diff --git a/allianceauth/services/admin.py b/allianceauth/services/admin.py index b204938b..f2c64573 100644 --- a/allianceauth/services/admin.py +++ b/allianceauth/services/admin.py @@ -66,6 +66,8 @@ class NameFormatConfigAdmin(admin.ModelAdmin): form = NameFormatConfigForm list_display = ('service_name', 'get_state_display_string') + @admin.display( + description='States' + ) def get_state_display_string(self, obj): return ', '.join([state.name for state in obj.states.all()]) - get_state_display_string.short_description = 'States' diff --git a/allianceauth/services/hooks.py b/allianceauth/services/hooks.py index 59595a84..789bc6bc 100644 --- a/allianceauth/services/hooks.py +++ b/allianceauth/services/hooks.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import re_path from django.core.exceptions import ObjectDoesNotExist from django.template.loader import render_to_string diff --git a/allianceauth/services/modules/discord/urls.py b/allianceauth/services/modules/discord/urls.py index 749a8090..de82a91c 100644 --- a/allianceauth/services/modules/discord/urls.py +++ b/allianceauth/services/modules/discord/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path from . import views diff --git a/allianceauth/services/modules/example/urls.py b/allianceauth/services/modules/example/urls.py index cefb0650..c8a427e5 100644 --- a/allianceauth/services/modules/example/urls.py +++ b/allianceauth/services/modules/example/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path app_name = 'example' diff --git a/allianceauth/services/modules/ips4/admin.py b/allianceauth/services/modules/ips4/admin.py index d70aeede..38ad5f50 100644 --- a/allianceauth/services/modules/ips4/admin.py +++ b/allianceauth/services/modules/ips4/admin.py @@ -2,8 +2,7 @@ from django.contrib import admin from .models import Ips4User +@admin.register(Ips4User) class Ips4UserAdmin(admin.ModelAdmin): list_display = ('user', 'username', 'id') search_fields = ('user__username', 'username', 'id') - -admin.site.register(Ips4User, Ips4UserAdmin) diff --git a/allianceauth/services/modules/ips4/urls.py b/allianceauth/services/modules/ips4/urls.py index 87c9ca31..a11bbd1b 100644 --- a/allianceauth/services/modules/ips4/urls.py +++ b/allianceauth/services/modules/ips4/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path from . import views diff --git a/allianceauth/services/modules/mumble/urls.py b/allianceauth/services/modules/mumble/urls.py index 6c403fc2..dfa77c79 100644 --- a/allianceauth/services/modules/mumble/urls.py +++ b/allianceauth/services/modules/mumble/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path from . import views diff --git a/allianceauth/services/modules/openfire/urls.py b/allianceauth/services/modules/openfire/urls.py index 8823ad18..99ce6713 100644 --- a/allianceauth/services/modules/openfire/urls.py +++ b/allianceauth/services/modules/openfire/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path from . import views diff --git a/allianceauth/services/modules/phpbb3/urls.py b/allianceauth/services/modules/phpbb3/urls.py index d7d7bce9..5fcaba55 100644 --- a/allianceauth/services/modules/phpbb3/urls.py +++ b/allianceauth/services/modules/phpbb3/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path from . import views diff --git a/allianceauth/services/modules/smf/urls.py b/allianceauth/services/modules/smf/urls.py index 92aba143..1dedc8d2 100644 --- a/allianceauth/services/modules/smf/urls.py +++ b/allianceauth/services/modules/smf/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path from . import views diff --git a/allianceauth/services/modules/teamspeak3/admin.py b/allianceauth/services/modules/teamspeak3/admin.py index dbba1cb1..92a1fcfe 100644 --- a/allianceauth/services/modules/teamspeak3/admin.py +++ b/allianceauth/services/modules/teamspeak3/admin.py @@ -36,10 +36,12 @@ class AuthTSgroupAdmin(admin.ModelAdmin): kwargs['queryset'] = TSgroup.objects.exclude(ts_group_name__in=ReservedGroupName.objects.values_list('name', flat=True)) return super().formfield_for_manytomany(db_field, request, **kwargs) + @admin.display( + description='ts groups' + ) def _ts_group(self, obj): return [x for x in obj.ts_group.all().order_by('ts_group_id')] - _ts_group.short_description = 'ts groups' # _ts_group.admin_order_field = 'profile__state' diff --git a/allianceauth/services/modules/teamspeak3/tests.py b/allianceauth/services/modules/teamspeak3/tests.py index eb3866af..f0f8d1c3 100644 --- a/allianceauth/services/modules/teamspeak3/tests.py +++ b/allianceauth/services/modules/teamspeak3/tests.py @@ -462,12 +462,12 @@ class Teamspeak3AdminTestCase(TestCase): def test_field_queryset_no_reserved_names(self): """Ensure all groups are listed when no reserved names""" form = self.admin.get_form(request) - self.assertQuerysetEqual(form.base_fields['auth_group']._get_queryset(), Group.objects.all()) - self.assertQuerysetEqual(form.base_fields['ts_group']._get_queryset(), TSgroup.objects.all()) + self.assertQuerySetEqual(form.base_fields['auth_group']._get_queryset(), Group.objects.all()) + self.assertQuerySetEqual(form.base_fields['ts_group']._get_queryset(), TSgroup.objects.all()) def test_field_queryset_reserved_names(self): """Ensure reserved group names are filtered out""" ReservedGroupName.objects.bulk_create([ReservedGroupName(name='test', reason='tests', created_by='Bob')]) form = self.admin.get_form(request) - self.assertQuerysetEqual(form.base_fields['auth_group']._get_queryset(), Group.objects.none()) - self.assertQuerysetEqual(form.base_fields['ts_group']._get_queryset(), TSgroup.objects.none()) + self.assertQuerySetEqual(form.base_fields['auth_group']._get_queryset(), Group.objects.none()) + self.assertQuerySetEqual(form.base_fields['ts_group']._get_queryset(), TSgroup.objects.none()) diff --git a/allianceauth/services/modules/teamspeak3/urls.py b/allianceauth/services/modules/teamspeak3/urls.py index 4c6831e3..92c3093e 100644 --- a/allianceauth/services/modules/teamspeak3/urls.py +++ b/allianceauth/services/modules/teamspeak3/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path from . import views diff --git a/allianceauth/services/modules/xenforo/urls.py b/allianceauth/services/modules/xenforo/urls.py index 9bad105e..fe684e9f 100644 --- a/allianceauth/services/modules/xenforo/urls.py +++ b/allianceauth/services/modules/xenforo/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from django.urls import path from . import views diff --git a/allianceauth/services/urls.py b/allianceauth/services/urls.py index e43b0e30..9c8a8141 100644 --- a/allianceauth/services/urls.py +++ b/allianceauth/services/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import include +from django.urls import include from allianceauth.hooks import get_hooks from django.urls import path diff --git a/allianceauth/urls.py b/allianceauth/urls.py index 3a8ea22c..e9361cdf 100755 --- a/allianceauth/urls.py +++ b/allianceauth/urls.py @@ -1,7 +1,7 @@ from django.urls import path import esi.urls -from django.conf.urls import include +from django.urls import include from django.contrib import admin from django.views.generic.base import TemplateView