readthedocs.org/readthedocs/projects/admin.py

40 lines
1.1 KiB
Python
Raw Normal View History

"""Django administration interface for `~projects.models.Project`
and related models.
"""
from builds.models import Version
2010-08-14 05:22:52 +00:00
from django.contrib import admin
2013-04-07 02:40:30 +00:00
from projects.models import (Project, ImportedFile, ProjectRelationship,
EmailHook, WebHook)
2012-10-14 02:14:15 +00:00
from guardian.admin import GuardedModelAdmin
2010-08-14 05:22:52 +00:00
2013-04-07 02:40:30 +00:00
2011-10-10 03:55:59 +00:00
class ProjectRelationshipInline(admin.TabularInline):
model = ProjectRelationship
fk_name = 'parent'
2013-04-07 02:40:30 +00:00
class VersionInline(admin.TabularInline):
model = Version
2012-10-14 02:14:15 +00:00
class ProjectAdmin(GuardedModelAdmin):
2010-08-14 06:27:15 +00:00
prepopulated_fields = {'slug': ('name',)}
list_display = ('name', 'repo', 'repo_type', 'featured', 'theme')
2012-10-20 01:34:58 +00:00
list_filter = ('repo_type', 'featured', 'privacy_level')
list_editable = ('featured',)
search_fields = ('name', 'repo')
2011-10-10 03:55:59 +00:00
inlines = [ProjectRelationshipInline, VersionInline]
2011-09-18 23:47:24 +00:00
raw_id_fields = ('users',)
2010-08-14 05:22:52 +00:00
2012-03-13 02:50:31 +00:00
class ImportedFileAdmin(admin.ModelAdmin):
list_display = ('name', 'version')
2012-03-13 02:50:31 +00:00
list_filter = ('project',)
2010-08-14 05:22:52 +00:00
2013-04-07 02:40:30 +00:00
2010-08-14 05:22:52 +00:00
admin.site.register(Project, ProjectAdmin)
2012-03-13 02:50:31 +00:00
admin.site.register(ImportedFile, ImportedFileAdmin)
2012-12-14 22:02:15 +00:00
admin.site.register(EmailHook)
admin.site.register(WebHook)