2016-06-07 20:59:13 +00:00
|
|
|
from django.contrib import admin
|
2016-10-18 20:40:56 +00:00
|
|
|
from django.contrib.sites.shortcuts import get_current_site
|
2016-06-07 20:59:13 +00:00
|
|
|
|
2016-09-21 22:53:09 +00:00
|
|
|
from proposals.models import Conference, Talk, Topic, Track, Event
|
2016-10-18 20:40:56 +00:00
|
|
|
from planning.models import Room
|
2016-08-22 15:23:01 +00:00
|
|
|
|
2016-10-19 21:36:15 +00:00
|
|
|
from ponyconf.admin import SiteAdminMixin
|
2016-08-22 15:23:01 +00:00
|
|
|
|
2016-10-18 20:40:56 +00:00
|
|
|
|
|
|
|
|
|
|
|
class TalkAdmin(SiteAdminMixin, admin.ModelAdmin):
|
2016-08-22 15:23:01 +00:00
|
|
|
def get_form(self, request, obj=None, **kwargs):
|
|
|
|
form = super(TalkAdmin, self).get_form(request, obj, **kwargs)
|
2016-10-18 20:40:56 +00:00
|
|
|
site = get_current_site(request)
|
|
|
|
form.base_fields['topics'].queryset = Topic.objects.filter(site=site)
|
|
|
|
form.base_fields['track'].queryset = Track.objects.filter(site=site)
|
|
|
|
form.base_fields['event'].queryset = Event.objects.filter(site=site)
|
|
|
|
form.base_fields['room'].queryset = Room.objects.filter(site=site)
|
2016-08-22 15:23:01 +00:00
|
|
|
return form
|
2016-06-07 20:59:13 +00:00
|
|
|
|
2016-09-22 22:51:07 +00:00
|
|
|
|
2016-10-18 20:40:56 +00:00
|
|
|
class TopicAdmin(SiteAdminMixin, admin.ModelAdmin):
|
2016-09-22 22:51:07 +00:00
|
|
|
def get_form(self, request, obj=None, **kwargs):
|
|
|
|
form = super().get_form(request, obj, **kwargs)
|
2016-10-18 20:40:56 +00:00
|
|
|
site = get_current_site(request)
|
|
|
|
form.base_fields['track'].queryset = Track.objects.filter(site=site)
|
2016-09-22 22:51:07 +00:00
|
|
|
return form
|
|
|
|
|
2016-10-18 20:40:56 +00:00
|
|
|
|
|
|
|
class TrackAdmin(SiteAdminMixin, admin.ModelAdmin):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class EventAdmin(SiteAdminMixin, admin.ModelAdmin):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
2016-08-07 10:51:38 +00:00
|
|
|
admin.site.register(Conference)
|
2016-09-22 22:51:07 +00:00
|
|
|
admin.site.register(Topic, TopicAdmin)
|
2016-10-18 20:40:56 +00:00
|
|
|
admin.site.register(Track, TrackAdmin)
|
2016-08-22 15:23:01 +00:00
|
|
|
admin.site.register(Talk, TalkAdmin)
|
2016-10-18 20:40:56 +00:00
|
|
|
admin.site.register(Event, EventAdmin)
|