Sith/core/admin.py

69 lines
2.3 KiB
Python
Raw Normal View History

# -*- coding:utf-8 -*
#
# Copyright 2016,2017
# - Skia <skia@libskia.so>
# - Nabos <gnikwo@hotmail.com>
#
# Ce fichier fait partie du site de l'Association des Étudiants de l'UTBM,
# http://ae.utbm.fr.
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License a published by the Free Software
# Foundation; either version 3 of the License, or (at your option) any later
# version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Sofware Foundation, Inc., 59 Temple
# Place - Suite 330, Boston, MA 02111-1307, USA.
#
#
2015-11-18 08:44:06 +00:00
from django.contrib import admin
2016-11-25 12:47:09 +00:00
from ajax_select import make_ajax_form
2016-08-10 03:48:06 +00:00
from core.models import User, Page, RealGroup, SithFile
from django.contrib.auth.models import Group as AuthGroup
2017-10-10 21:33:15 +00:00
from haystack.admin import SearchModelAdmin
2015-11-18 08:44:06 +00:00
@admin.register(SithFile)
class SithFileAdmin(admin.ModelAdmin):
form = make_ajax_form(SithFile, {
'parent': 'files', # ManyToManyField
})
2015-11-18 08:44:06 +00:00
2017-10-10 21:33:15 +00:00
class UserAdmin(SearchModelAdmin):
list_display = ["first_name", "last_name", "username", "email", "nick_name"]
form = make_ajax_form(User, {
'godfathers': 'users',
'home': 'files', # ManyToManyField
'profile_pict': 'files', # ManyToManyField
'avatar_pict': 'files', # ManyToManyField
'scrub_pict': 'files', # ManyToManyField
})
2017-10-10 21:33:15 +00:00
search_fields = ["first_name", "last_name", "username"]
admin.site.register(User, UserAdmin)
search_fields = ['username', 'first_name', 'last_name']
list_display = ('username', 'first_name', 'last_name')
list_filter = ['department', 'promo', 'groups']
list_per_page = 20
@admin.register(Page)
class PageAdmin(admin.ModelAdmin):
form = make_ajax_form(Page, {
'lock_user': 'users',
'owner_group': 'groups',
'edit_groups': 'groups',
'view_groups': 'groups',
})
2017-06-12 07:42:03 +00:00
admin.site.register(User, UserAdmin)
admin.site.unregister(AuthGroup)
admin.site.register(RealGroup)