summaryrefslogtreecommitdiff
path: root/app/posts/admin.py
blob: abe5a5c07f8054c3105e2871249124923e5af5ee (plain)
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
from django.contrib import admin

from .models import Post, Note
from utils.widgets import AdminImageWidget, LGEntryForm

from django.contrib.auth.models import User
from django.contrib.admin import SimpleListFilter


@admin.register(Post)
class PostAdmin(admin.ModelAdmin):
    form = LGEntryForm
    list_display = ('title', 'admin_url', 'author', 'date_last_pub', 'post_type', 'update_frequency', 'needs_update', 'days_overdue')
    search_fields = ['title']
    list_filter = ['needs_update', 'author', 'post_type']

    class Media:
        js = ('image-loader.js', 'next-prev-links.js')
        css = {
            "all": ("my_styles.css",)
        }


@admin.register(Note)
class NoteAdmin(admin.ModelAdmin):
    def get_form(self, request, obj=None, change=False, **kwargs):
        form = super().get_form(request, obj=obj, change=change, **kwargs)
        form.base_fields['post'].queryset = Post.objects.filter(
            user=request.user
        )
        return form

    list_display = ('date_created', 'title', 'post')
    search_fields = ['title']
    list_filter = ['date_created']

    class Media:
        js = ('image-loader.js', 'next-prev-links.js')
        css = {
            "all": ("my_styles.css",)
        }