gremmie@1
|
1 """
|
gremmie@1
|
2 This file contains the automatic admin site definitions for the News models.
|
gremmie@1
|
3 """
|
bgneal@204
|
4 import datetime
|
gremmie@1
|
5
|
gremmie@1
|
6 from django.contrib import admin
|
bgneal@7
|
7 from django.conf import settings
|
bgneal@7
|
8
|
gremmie@1
|
9 from news.models import PendingStory
|
gremmie@1
|
10 from news.models import Story
|
gremmie@1
|
11 from news.models import Category
|
gremmie@1
|
12
|
bgneal@240
|
13
|
bgneal@240
|
14 class CategoryAdmin(admin.ModelAdmin):
|
bgneal@240
|
15 prepopulated_fields = {'slug': ("title", )}
|
bgneal@240
|
16 list_display = ('title', 'slug')
|
bgneal@240
|
17
|
bgneal@240
|
18
|
gremmie@1
|
19 class PendingStoryAdmin(admin.ModelAdmin):
|
bgneal@204
|
20 list_display = ('title', 'date_submitted', 'submitter')
|
bgneal@204
|
21 list_filter = ('date_submitted', )
|
bgneal@204
|
22 search_fields = ('title', 'short_text', 'long_text')
|
bgneal@204
|
23 date_hierarchy = 'date_submitted'
|
bgneal@204
|
24 actions = ('approve_story', )
|
bgneal@277
|
25 readonly_fields = ('update_date', )
|
gremmie@1
|
26
|
bgneal@204
|
27 def approve_story(self, request, qs):
|
bgneal@204
|
28 for pending_story in qs:
|
bgneal@204
|
29 story = Story(
|
bgneal@204
|
30 title=pending_story.title,
|
bgneal@204
|
31 submitter=pending_story.submitter,
|
bgneal@204
|
32 category=pending_story.category,
|
bgneal@204
|
33 short_text=pending_story.short_text,
|
bgneal@204
|
34 long_text=pending_story.long_text,
|
bgneal@277
|
35 date_submitted=pending_story.date_submitted,
|
bgneal@204
|
36 allow_comments=pending_story.allow_comments,
|
bgneal@218
|
37 tags=pending_story.tags,
|
bgneal@218
|
38 front_page_expiration=pending_story.front_page_expiration)
|
bgneal@204
|
39 story.save()
|
bgneal@204
|
40 pending_story.delete()
|
bgneal@204
|
41
|
bgneal@204
|
42 approve_story.short_description = "Approve selected pending stories"
|
bgneal@204
|
43
|
bgneal@204
|
44 class Media:
|
bgneal@204
|
45 js = settings.GPP_THIRD_PARTY_JS['tiny_mce']
|
gremmie@1
|
46
|
gremmie@1
|
47
|
gremmie@1
|
48 class StoryAdmin(admin.ModelAdmin):
|
bgneal@204
|
49 list_display = ('title', 'date_submitted', 'submitter', 'category')
|
bgneal@204
|
50 list_filter = ('date_submitted', 'category')
|
bgneal@204
|
51 search_fields = ('title', 'short_text', 'long_text')
|
bgneal@204
|
52 date_hierarchy = 'date_submitted'
|
bgneal@277
|
53 readonly_fields = ('update_date', )
|
gremmie@1
|
54
|
bgneal@204
|
55 class Media:
|
bgneal@204
|
56 js = settings.GPP_THIRD_PARTY_JS['tiny_mce']
|
gremmie@1
|
57
|
gremmie@1
|
58
|
bgneal@240
|
59 admin.site.register(Category, CategoryAdmin)
|
gremmie@1
|
60 admin.site.register(Story, StoryAdmin)
|
gremmie@1
|
61 admin.site.register(PendingStory, PendingStoryAdmin)
|