bornhack-website/src/program/admin.py

68 lines
1.7 KiB
Python
Raw Normal View History

2016-07-13 17:13:47 +00:00
from django.contrib import admin
2017-04-16 00:10:24 +00:00
from .models import Event, Speaker, EventType, EventInstance, EventLocation, SpeakerProposal, EventProposal, Favorite
2017-03-12 14:43:41 +00:00
@admin.register(SpeakerProposal)
class SpeakerProposalAdmin(admin.ModelAdmin):
def mark_speakerproposal_as_approved(self, request, queryset):
for sp in queryset:
sp.mark_as_approved()
mark_speakerproposal_as_approved.description = 'Approve and create Speaker object(s)'
actions = ['mark_speakerproposal_as_approved']
2017-07-09 15:00:29 +00:00
list_filter = ('camp', 'proposal_status', 'user')
2017-03-12 14:43:41 +00:00
@admin.register(EventProposal)
class EventProposalAdmin(admin.ModelAdmin):
def mark_eventproposal_as_approved(self, request, queryset):
for ep in queryset:
ep.mark_as_approved()
mark_eventproposal_as_approved.description = 'Approve and create Event object(s)'
actions = ['mark_eventproposal_as_approved']
2017-07-09 15:00:29 +00:00
list_filter = ('camp', 'proposal_status', 'user')
@admin.register(EventLocation)
class EventLocationAdmin(admin.ModelAdmin):
pass
2016-07-13 19:44:09 +00:00
@admin.register(EventInstance)
class EventInstanceAdmin(admin.ModelAdmin):
pass
2016-07-13 19:44:09 +00:00
@admin.register(EventType)
class EventTypeAdmin(admin.ModelAdmin):
pass
@admin.register(Speaker)
class SpeakerAdmin(admin.ModelAdmin):
2017-07-09 13:48:29 +00:00
list_filter = ('camp',)
2017-04-16 00:10:24 +00:00
@admin.register(Favorite)
class FavoriteAdmin(admin.ModelAdmin):
raw_id_fields = ('event_instance',)
class SpeakerInline(admin.StackedInline):
model = Speaker.events.through
2016-07-13 19:44:09 +00:00
@admin.register(Event)
class EventAdmin(admin.ModelAdmin):
2017-07-09 13:48:29 +00:00
list_filter = ('camp', 'speakers')
2016-07-13 20:37:20 +00:00
list_display = [
'title',
'event_type',
]
inlines = [
SpeakerInline
]