25 lines
927 B
Python
25 lines
927 B
Python
|
|
from django.contrib import admin
|
||
|
|
from .models import AdSurface, AdPlacement
|
||
|
|
|
||
|
|
|
||
|
|
@admin.register(AdSurface)
|
||
|
|
class AdSurfaceAdmin(admin.ModelAdmin):
|
||
|
|
list_display = ('key', 'name', 'max_slots', 'layout_type', 'sort_behavior', 'is_active', 'active_count')
|
||
|
|
list_filter = ('is_active', 'layout_type')
|
||
|
|
search_fields = ('key', 'name')
|
||
|
|
readonly_fields = ('created_at',)
|
||
|
|
|
||
|
|
|
||
|
|
@admin.register(AdPlacement)
|
||
|
|
class AdPlacementAdmin(admin.ModelAdmin):
|
||
|
|
list_display = (
|
||
|
|
'id', 'event', 'surface', 'status', 'scope', 'priority',
|
||
|
|
'rank', 'boost_label', 'start_at', 'end_at', 'created_at',
|
||
|
|
)
|
||
|
|
list_filter = ('status', 'scope', 'priority', 'surface')
|
||
|
|
list_editable = ('status', 'scope', 'rank')
|
||
|
|
search_fields = ('event__name', 'event__title', 'boost_label')
|
||
|
|
raw_id_fields = ('event', 'created_by', 'updated_by')
|
||
|
|
readonly_fields = ('created_at', 'updated_at')
|
||
|
|
ordering = ('surface', 'rank')
|