-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathadmin.py
More file actions
87 lines (55 loc) Β· 2.44 KB
/
Copy pathadmin.py
File metadata and controls
87 lines (55 loc) Β· 2.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
from django import forms
from django.contrib import admin
from django_summernote.admin import SummernoteModelAdmin
from pyconkr.admin import SummernoteWidgetWithCustomToolbar
from modeltranslation.admin import TranslationAdmin
from sorl.thumbnail.admin import AdminImageMixin
from import_export.admin import ImportExportModelAdmin
from .models import ProgramCategory, Proposal, OpenReview, LightningTalk, Sprint
class ProgramCategoryAdmin(TranslationAdmin, ImportExportModelAdmin):
list_display = ('id', 'name', 'slug', 'visible',)
admin.site.register(ProgramCategory, ProgramCategoryAdmin)
class ProposalAdminForm(forms.ModelForm):
class Meta:
model = Proposal
fields = '__all__'
widgets = {
'desc': SummernoteWidgetWithCustomToolbar(),
'comment': SummernoteWidgetWithCustomToolbar(),
'introduction': SummernoteWidgetWithCustomToolbar(),
}
class ProposalAdmin(ImportExportModelAdmin, admin.ModelAdmin):
form = ProposalAdminForm
list_display = ('id', 'user', 'title', 'accepted', 'category', 'video_open_at', 'track_num',)
list_filter = ('accepted',)
autocomplete_fields = ('user',)
actions = ('to_track1', 'to_track2', 'to_track3',)
def to_track1(self, request, queryset):
queryset.update(track_num=1)
to_track1.short_description = "νΈλ 1λ²μΌλ‘ μ€μ "
def to_track2(self, request, queryset):
queryset.update(track_num=2)
to_track2.short_description = "νΈλ 2λ²μΌλ‘ μ€μ "
def to_track3(self, request, queryset):
queryset.update(track_num=3)
to_track3.short_description = "νΈλ 3λ²μΌλ‘ μ€μ "
admin.site.register(Proposal, ProposalAdmin)
class OpenReviewAdmin(admin.ModelAdmin):
list_display = ('id', 'title', 'user', 'category', 'submitted',)
list_filter = ('submitted',)
def title(self, obj):
return obj.proposal.title
def user(self, obj):
return obj.user.name
admin.site.register(OpenReview, OpenReviewAdmin)
class LightningTalkAdminForm(forms.ModelForm):
class Meta:
model = LightningTalk
fields = '__all__'
class LightningTalkAdmin(admin.ModelAdmin):
form = LightningTalkAdminForm
list_display = ('owner', 'title', 'day', 'accepted', 'created_at',)
admin.site.register(LightningTalk, LightningTalkAdmin)
class SprintAdmin(admin.ModelAdmin):
list_display = ('creator', 'title', 'language', 'url',)
admin.site.register(Sprint, SprintAdmin)