diff options
author | Christian Pointner <equinox@helsinki.at> | 2016-08-03 17:49:19 (GMT) |
---|---|---|
committer | Christian Pointner <equinox@helsinki.at> | 2016-08-03 17:49:19 (GMT) |
commit | 31406aa5c3c53341cdadbc760b95d234ccdc20c6 (patch) | |
tree | 1538fc4e320f7a31add2f259c0da5bb6837d07be /program/admin.py | |
parent | 8b02218b9c1f524d37e2a20a613a7301a7aa7689 (diff) | |
parent | abadb84db12788af3ecf525d6c2fb9c72efc2595 (diff) |
Merge branch 'master' into stable
Diffstat (limited to 'program/admin.py')
-rw-r--r-- | program/admin.py | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/program/admin.py b/program/admin.py index d871e16..591c363 100644 --- a/program/admin.py +++ b/program/admin.py @@ -8,7 +8,7 @@ from datetime import date, datetime, timedelta class BroadcastFormatAdmin(admin.ModelAdmin): - list_display = ('format', 'enabled', 'admin_color') + list_display = ('format', 'admin_color', 'enabled') prepopulated_fields = {'slug': ('format',)} @@ -29,8 +29,8 @@ class ShowTopicAdmin(admin.ModelAdmin): class HostAdmin(admin.ModelAdmin): - list_display = ('name',) - list_filter = ('is_always_visible', 'is_active') + list_display = ('name', 'is_active') + list_filter = ('is_active', 'is_always_visible') class NoteAdmin(admin.ModelAdmin): @@ -45,10 +45,17 @@ class NoteAdmin(admin.ModelAdmin): return super(NoteAdmin, self).get_queryset(request).filter(show__in=shows) def formfield_for_foreignkey(self, db_field, request=None, **kwargs): - four_weeks = datetime.now() - timedelta(weeks=4) + four_weeks_ago = datetime.now() - timedelta(weeks=4) + in_eight_weeks = datetime.now() + timedelta(weeks=8) if db_field.name == 'timeslot': - shows = request.user.shows.all() - kwargs['queryset'] = TimeSlot.objects.filter(show__in=shows, start__gt=four_weeks) + try: + timeslot_id = int(request.get_full_path().split('/')[-2]) + except ValueError: + shows = request.user.shows.all() + kwargs['queryset'] = TimeSlot.objects.filter(show__in=shows, note__isnull=True, start__gt=four_weeks_ago, + start__lt=in_eight_weeks) + else: + kwargs['queryset'] = TimeSlot.objects.filter(note=timeslot_id) return super(NoteAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) @@ -66,7 +73,7 @@ class ProgramSlotAdmin(admin.ModelAdmin): inlines = (TimeSlotInline,) fields = (('rrule', 'byweekday'), ('dstart', 'tstart', 'tend'), 'until', 'is_repetition', 'automation_id') list_display = ('get_show_name', 'byweekday', 'rrule', 'tstart', 'tend', 'until') - list_filter = ('byweekday', 'rrule', 'is_repetition', 'is_active') + list_filter = ('is_active', 'byweekday', 'rrule', 'is_repetition') ordering = ('byweekday', 'dstart') save_on_top = True search_fields = ('show__name',) @@ -96,8 +103,8 @@ class ProgramSlotInline(admin.TabularInline): class ShowAdmin(admin.ModelAdmin): filter_horizontal = ('hosts', 'owners', 'musicfocus', 'showinformation', 'showtopic') inlines = (ProgramSlotInline,) - list_display = ('name', 'short_description', 'broadcastformat') - list_filter = ('broadcastformat', 'showinformation', 'showtopic', 'musicfocus', 'is_active') + list_display = ('name', 'short_description', 'is_active') + list_filter = ('is_active', 'broadcastformat', 'showinformation', 'showtopic', 'musicfocus') ordering = ('slug',) prepopulated_fields = {'slug': ('name',)} search_fields = ('name', 'short_description', 'description') |