from django.contrib import admin from .models import Club, TeamScore, Tournament, CustomUser, Event, Round, GroupStage, Match, TeamRegistration, PlayerRegistration, Purchase, Court, DateInterval from django.contrib.auth.admin import UserAdmin from django.contrib.auth.forms import UserCreationForm, UserChangeForm from .forms import CustomUserCreationForm, CustomUserChangeForm class CustomUserAdmin(UserAdmin): form = CustomUserChangeForm add_form = CustomUserCreationForm model = CustomUser list_display = ['email', 'username', 'is_active', 'is_staff', 'first_name', 'last_name', ] fieldsets = [ (None, {'fields': ['id', 'username', 'email', 'password', 'first_name', 'last_name', 'is_active', 'clubs', 'country', 'phone', 'licence_id', 'umpire_code', 'summons_message_body', 'summons_message_signature', 'summons_available_payment_methods', 'summons_display_format', 'summons_display_entry_fee', 'summons_use_full_custom_message', 'match_formats_default_duration', 'bracket_match_format_preference', 'group_stage_match_format_preference', 'loser_bracket_match_format_preference', ]}), ] add_fieldsets = [ ( None, { "classes": ["wide"], "fields": ['username', 'email', 'password1', 'password2', 'first_name', 'last_name', 'clubs', 'country', 'phone', 'licence_id', 'umpire_code', ], }, ), ] class TeamRegistrationAdmin(admin.ModelAdmin): list_display = ['player_names', 'group_stage_position', 'name', 'tournament'] class TournamentAdmin(admin.ModelAdmin): list_display = ['display_name', 'event', 'is_private', 'start_date'] class TeamScoreAdmin(admin.ModelAdmin): list_display = ['team_registration', 'match', 'score', 'walk_out'] class RoundAdmin(admin.ModelAdmin): list_display = ['tournament', 'name', 'index', 'parent'] class PlayerRegistrationAdmin(admin.ModelAdmin): list_display = ['first_name', 'last_name', 'licence_id', 'rank'] class MatchAdmin(admin.ModelAdmin): list_display = ['__str__', 'round', 'group_stage', 'start_date', 'index'] class GroupStageAdmin(admin.ModelAdmin): list_display = ['tournament', 'index', 'start_date'] class EventAdmin(admin.ModelAdmin): list_display = ['name', 'club', 'creation_date', 'creator'] class ClubAdmin(admin.ModelAdmin): list_display = ['name', 'acronym', 'events_count'] class PurchaseAdmin(admin.ModelAdmin): list_display = ['user', 'identifier', 'purchase_date', 'product_id', 'quantity'] class CourtAdmin(admin.ModelAdmin): list_display = ['index', 'name', 'club'] class DateIntervalAdmin(admin.ModelAdmin): list_display = ['court_index', 'event'] admin.site.register(CustomUser, CustomUserAdmin) admin.site.register(Club, ClubAdmin) admin.site.register(Event, EventAdmin) admin.site.register(Round, RoundAdmin) admin.site.register(GroupStage, GroupStageAdmin) admin.site.register(Match, MatchAdmin) admin.site.register(TeamScore, TeamScoreAdmin) admin.site.register(TeamRegistration, TeamRegistrationAdmin) admin.site.register(Tournament, TournamentAdmin) admin.site.register(PlayerRegistration, PlayerRegistrationAdmin) admin.site.register(Purchase, PurchaseAdmin) admin.site.register(Court, CourtAdmin) admin.site.register(DateInterval, DateIntervalAdmin)