view gpp/forums/admin.py @ 201:bc958bc3c6eb

Futzing with CSS side blocks
author Brian Neal <bgneal@gmail.com>
date Mon, 12 Apr 2010 02:56:31 +0000
parents 500e5875a306
children b4305e18d3af
line wrap: on
line source
"""
This file contains the admin definitions for the forums application.
"""
from django.contrib import admin

from forums.models import Category
from forums.models import Forum
from forums.models import Topic
from forums.models import Post
from forums.models import FlaggedPost
from forums.models import TopicLastVisit


class CategoryAdmin(admin.ModelAdmin):
    list_display = ('name', 'position', )
    prepopulated_fields = { 'slug': ('name', ) }
    save_on_top = True


class ForumAdmin(admin.ModelAdmin):
    list_display = ('name', 'category', 'position', 'topic_count', 'post_count')
    prepopulated_fields = { 'slug': ('name', ) }
    raw_id_fields = ('last_post', )
    save_on_top = True


class TopicAdmin(admin.ModelAdmin):
    list_display = ('name', 'forum', 'creation_date', 'update_date', 'user', 'sticky', 'locked',
            'post_count')
    raw_id_fields = ('user', 'last_post', 'subscribers')
    search_fields = ('name', )
    date_hierarchy = 'creation_date'
    list_filter = ('creation_date', 'update_date', )
    save_on_top = True


class PostAdmin(admin.ModelAdmin):
    list_display = ('topic', 'user', 'creation_date', 'update_date', 'summary')
    raw_id_fields = ('topic', 'user', )
    exclude = ('html', )
    search_fields = ('body', )
    date_hierarchy = 'creation_date'
    list_filter = ('creation_date', 'update_date', )
    ordering = ('-creation_date', )
    save_on_top = True


class FlaggedPostAdmin(admin.ModelAdmin):
    list_display = ('__unicode__', 'flag_date', 'get_post_url')


class TopicLastVisitAdmin(admin.ModelAdmin):
    raw_id_fields = ('user', 'topic')
    list_display = ('user', 'topic', 'last_visit')


admin.site.register(Category, CategoryAdmin)
admin.site.register(Forum, ForumAdmin)
admin.site.register(Topic, TopicAdmin)
admin.site.register(Post, PostAdmin)
admin.site.register(FlaggedPost, FlaggedPostAdmin)
admin.site.register(TopicLastVisit, TopicLastVisitAdmin)