med/media/admin.py

46 lines
1.5 KiB
Python

# -*- mode: python; coding: utf-8 -*-
# Copyright (C) 2017-2019 by BDE ENS Paris-Saclay
# SPDX-License-Identifier: GPL-3.0-or-later
from reversion.admin import VersionAdmin
from med.admin import admin_site
from .models import Auteur, Emprunt, Jeu, Media
class AuteurAdmin(VersionAdmin):
list_display = ('nom',)
search_fields = ('nom',)
class MediaAdmin(VersionAdmin):
list_display = ('titre', 'authors', 'cote')
search_fields = ('titre', 'auteur__nom', 'cote')
autocomplete_fields = ('auteur',)
def authors(self, obj):
return ", ".join([a.nom for a in obj.auteur.all()])
class EmpruntAdmin(VersionAdmin):
list_display = ('media', 'user', 'date_emprunt', 'date_rendu',
'permanencier_emprunt', 'permanencier_rendu')
search_fields = ('media__titre', 'media__cote', 'user__username',
'date_emprunt', 'date_rendu')
date_hierarchy = 'date_emprunt'
autocomplete_fields = ('media', 'user', 'permanencier_emprunt',
'permanencier_rendu')
class JeuAdmin(VersionAdmin):
list_display = ('nom', 'proprietaire', 'duree', 'nombre_joueurs_min',
'nombre_joueurs_max', 'comment')
search_fields = ('nom', 'proprietaire__username', 'duree', 'comment')
autocomplete_fields = ('proprietaire',)
admin_site.register(Auteur, AuteurAdmin)
admin_site.register(Media, MediaAdmin)
admin_site.register(Emprunt, EmpruntAdmin)
admin_site.register(Jeu, JeuAdmin)