|
1 from django import forms |
|
2 from django.contrib import admin |
|
3 from django.core.urlresolvers import reverse |
|
4 from .models import Renkan, Revision, Workspace |
|
5 |
|
6 class RenkanAdmin(admin.ModelAdmin): |
|
7 list_display = ('renkan_guid', 'current_revision_link', 'title', 'creator', 'creation_date') |
|
8 ordering = ('creation_date',) |
|
9 readonly_fields = ('current_revision_link', 'source_revision', 'title', 'content', 'is_copy', 'revision_count', 'creation_date') |
|
10 fieldsets = ( |
|
11 (None, {'fields': ('renkan_guid',)}), |
|
12 ("Révision courante", {'fields': ('current_revision_link', 'title', 'content')}), |
|
13 ("Copie", {'fields': ( 'is_copy', 'source_revision',)}), |
|
14 ("Création", {'fields': ('creator', 'creation_date')}), |
|
15 ) |
|
16 |
|
17 def current_revision_link(self, obj): |
|
18 return '<a href="%s">%s</a>' % (reverse("admin:renkanmanager_revision_change", args=(obj.current_revision.id,)), obj.current_revision.revision_guid) |
|
19 current_revision_link.allow_tags = True |
|
20 current_revision_link.short_description = "Révision courante" |
|
21 |
|
22 class RevisionAdmin(admin.ModelAdmin): |
|
23 list_display = ('revision_guid', 'parent_renkan_link', 'creator', 'title', 'creation_date') |
|
24 ordering = ('creation_date',) |
|
25 readonly_fields = ('parent_renkan_link', 'creation_date', 'modification_date',) |
|
26 fieldsets = ( |
|
27 (None, {'fields': ('revision_guid', 'parent_renkan',)}), |
|
28 ("Contenu", {'fields': ('title', 'content',)}), |
|
29 ("Création", {'fields': ('creator', 'creation_date')}), |
|
30 ("Edition", {'fields': ('last_updated_by', 'modification_date')}) |
|
31 ) |
|
32 |
|
33 def parent_renkan_link(self, obj): |
|
34 return '<a href="%s">%s</a>' % (reverse("admin:renkanmanager_renkan_change", args=(obj.parent_renkan.id,)), obj.parent_renkan.renkan_guid) |
|
35 |
|
36 parent_renkan_link.allow_tags = True |
|
37 parent_renkan_link.short_description = "Renkan associé" |
|
38 |
|
39 class WorkspaceAdmin(admin.ModelAdmin): |
|
40 pass |
|
41 |
|
42 admin.site.register(Renkan, RenkanAdmin) |
|
43 admin.site.register(Revision, RevisionAdmin) |
|
44 admin.site.register(Workspace) |