Skip to content

Commit 706a3eb

Browse files
committed
DREF revisions via frontend calls
1 parent d3622c2 commit 706a3eb

File tree

3 files changed

+12
-7
lines changed

3 files changed

+12
-7
lines changed

dref/admin.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from django.contrib import admin
2+
from reversion_compare.admin import CompareVersionAdmin
23

34
from lang.admin import TranslationAdmin
45
from .models import (
@@ -15,7 +16,7 @@ class DrefFileAdmin(admin.ModelAdmin):
1516

1617

1718
@admin.register(Dref)
18-
class DrefAdmin(TranslationAdmin, admin.ModelAdmin):
19+
class DrefAdmin(CompareVersionAdmin, TranslationAdmin, admin.ModelAdmin):
1920
search_fields = ('title',)
2021
list_display = ('title', 'national_society', 'disaster_type',
2122
'ns_request_date', 'submission_to_geneva', 'status',)
@@ -39,7 +40,7 @@ def get_queryset(self, request):
3940

4041

4142
@admin.register(DrefOperationalUpdate)
42-
class DrefOperationalUpdateAdmin(admin.ModelAdmin):
43+
class DrefOperationalUpdateAdmin(CompareVersionAdmin, admin.ModelAdmin):
4344
list_display = ('title', 'national_society', 'disaster_type')
4445
autocomplete_fields = (
4546
'national_society',
@@ -62,7 +63,7 @@ def get_queryset(self, request):
6263
)
6364

6465
@admin.register(DrefFinalReport)
65-
class DrefFinalReportAdmin(admin.ModelAdmin):
66+
class DrefFinalReportAdmin(CompareVersionAdmin, admin.ModelAdmin):
6667
list_display = ('title', 'national_society', 'disaster_type')
6768
autocomplete_fields = (
6869
'national_society',

dref/models.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -658,6 +658,9 @@ def save(self, *args, **kwargs):
658658
self.__budget_file_id = self.budget_file_id
659659
super().save(*args, **kwargs)
660660

661+
def __str__(self):
662+
return f'{self.title}{self.status}'
663+
661664

662665
class DrefFile(models.Model):
663666
file = models.FileField(

dref/views.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from django.db import models
22
from django.contrib.auth.models import User
33
from django.utils.translation import gettext
4+
from reversion.views import RevisionMixin
45

56
from rest_framework import (
67
views,
@@ -34,7 +35,7 @@
3435
from dref.permissions import DrefOperationalUpdateCreatePermission
3536

3637

37-
class DrefViewSet(viewsets.ModelViewSet):
38+
class DrefViewSet(RevisionMixin, viewsets.ModelViewSet):
3839
serializer_class = DrefSerializer
3940
permission_classes = [permissions.IsAuthenticated]
4041
filterset_class = DrefFilter
@@ -68,7 +69,7 @@ def get_published(self, request, pk=None, version=None):
6869
return response.Response(serializer.data)
6970

7071

71-
class DrefOperationalUpdateViewSet(viewsets.ModelViewSet):
72+
class DrefOperationalUpdateViewSet(RevisionMixin, viewsets.ModelViewSet):
7273
serializer_class = DrefOperationalUpdateSerializer
7374
permission_classes = [permissions.IsAuthenticated, DrefOperationalUpdateCreatePermission]
7475
filterset_class = DrefOperationalUpdateFilter
@@ -113,7 +114,7 @@ def get_published(self, request, pk=None, version=None):
113114
return response.Response(serializer.data)
114115

115116

116-
class DrefFinalReportViewSet(viewsets.ModelViewSet):
117+
class DrefFinalReportViewSet(RevisionMixin, viewsets.ModelViewSet):
117118
serializer_class = DrefFinalReportSerializer
118119
permission_classes = [permissions.IsAuthenticated]
119120

@@ -148,7 +149,7 @@ def get_published(self, request, pk=None, version=None):
148149

149150
class DrefOptionsView(views.APIView):
150151
"""
151-
Options for various attrivute related to Dref
152+
Options for various attribute related to Dref
152153
"""
153154
permission_classes = [permissions.IsAuthenticated]
154155

0 commit comments

Comments
 (0)