~widelands-dev/widelands-website/django_staticfiles

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
# -*- coding: utf-8 -*-

from django.contrib import admin
from wiki.models import Article, ChangeSet
from wlimages.models import Image
from django.contrib.contenttypes.admin import GenericTabularInline


class InlineImages(GenericTabularInline):
    model = Image
    extra = 0
    fields = ('name', 'image', 'user', 'date_submitted')
    raw_id_fields = ('user',)


class ArticleAdmin(admin.ModelAdmin):
    # Do not show 'Action' to prevent deleting:
    actions = None
    search_fields = ['title']
    list_display = ('title', 'creator', 'last_update',)
    list_filter = ('title',)
    ordering = ['-last_update']
    fieldsets = (
        (None, {'fields': ('title', 'content', 'creator', 'markup')}),
    )
    raw_id_fields = ('creator',)
    inlines = [InlineImages]

admin.site.register(Article, ArticleAdmin)


class ChangeSetAdmin(admin.ModelAdmin):
    search_fields = ['old_title']
    list_display = ('article', 'old_title', 'old_markup',
                    'editor', 'reverted', 'modified',
                    'comment')
    list_filter = ('article__title',)
    ordering = ('-modified',)
    fieldsets = (
        ('Article', {'fields': ('article', 'editor')}),
        ('Differences', {'fields': ('old_title', 'old_markup',
                                    'content_diff')}),
        ('Other', {'fields': ('comment', 'modified', 'revision', 'reverted'),
                   'classes': ('collapse', 'wide')}),
    )
    raw_id_fields = ('editor',)

admin.site.register(ChangeSet, ChangeSetAdmin)