From 52aa24ba43d6970b9f4c91995a5f52ef506f4ed9 Mon Sep 17 00:00:00 2001 From: beingbiplov Date: Fri, 16 Oct 2020 12:06:48 +0545 Subject: [PATCH 1/5] setup edit option for weight entry --- wger/weight/templates/overview.html | 16 ++++++++++++++++ wger/weight/views.py | 3 ++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/wger/weight/templates/overview.html b/wger/weight/templates/overview.html index 6af4479d5..fcd6ba28b 100644 --- a/wger/weight/templates/overview.html +++ b/wger/weight/templates/overview.html @@ -72,6 +72,22 @@ -/- {% endif %} + +
+
+ + +
+
+ {% endfor %} diff --git a/wger/weight/views.py b/wger/weight/views.py index dd2d30a96..c34ff56dd 100644 --- a/wger/weight/views.py +++ b/wger/weight/views.py @@ -21,6 +21,7 @@ import logging # Django from django.contrib.auth.decorators import login_required +from django.contrib.auth.mixins import LoginRequiredMixin from django.db.models import ( Max, Min @@ -88,7 +89,7 @@ class WeightAddView(WgerFormMixin, CreateView): return reverse('weight:overview', kwargs={'username': self.object.user.username}) -class WeightUpdateView(WgerFormMixin, UpdateView): +class WeightUpdateView(WgerFormMixin, LoginRequiredMixin, UpdateView): """ Generic view to edit an existing weight entry """ From 657195477d81f77e2c4e078546455c6b8f85c9eb Mon Sep 17 00:00:00 2001 From: beingbiplov Date: Fri, 16 Oct 2020 12:27:04 +0545 Subject: [PATCH 2/5] fix typo --- wger/weight/templates/overview.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wger/weight/templates/overview.html b/wger/weight/templates/overview.html index fcd6ba28b..c3a1e13a2 100644 --- a/wger/weight/templates/overview.html +++ b/wger/weight/templates/overview.html @@ -82,7 +82,7 @@ From b09db07071e6899a77f6ae5afe3719fc503eba06 Mon Sep 17 00:00:00 2001 From: beingbiplov Date: Fri, 16 Oct 2020 14:12:37 +0545 Subject: [PATCH 3/5] setup views and test for weigh-entry delete option --- wger/weight/templates/overview.html | 5 +++++ wger/weight/tests/test_entry.py | 15 ++++++++++++++- wger/weight/urls.py | 4 ++++ wger/weight/views.py | 30 +++++++++++++++++++++++++++-- 4 files changed, 51 insertions(+), 3 deletions(-) diff --git a/wger/weight/templates/overview.html b/wger/weight/templates/overview.html index c3a1e13a2..56202f8c9 100644 --- a/wger/weight/templates/overview.html +++ b/wger/weight/templates/overview.html @@ -84,6 +84,11 @@ {% trans "Edit weight" %} + + + + {% trans "Delete" %} + diff --git a/wger/weight/tests/test_entry.py b/wger/weight/tests/test_entry.py index c622147d1..ec087f8a5 100644 --- a/wger/weight/tests/test_entry.py +++ b/wger/weight/tests/test_entry.py @@ -24,7 +24,8 @@ from wger.core.tests import api_base_test from wger.core.tests.base_testcase import ( WgerAddTestCase, WgerEditTestCase, - WgerTestCase + WgerTestCase, + WgerDeleteTestCase ) from wger.utils.constants import TWOPLACES from wger.weight.models import WeightEntry @@ -112,6 +113,18 @@ class EditWeightEntryTestCase(WgerEditTestCase): user_fail = 'admin' +class DeleteWeightEntryTestCase(WgerDeleteTestCase): + """ + Tests deleting a weight entry + """ + + object_class = WeightEntry + url = 'weight:delete' + pk = 1 + user_success = 'test' + user_fail = 'admin' + + class WeightEntryTestCase(api_base_test.ApiBaseResourceTestCase): """ Tests the weight entry overview resource diff --git a/wger/weight/urls.py b/wger/weight/urls.py index a6a288b92..2e9b99075 100644 --- a/wger/weight/urls.py +++ b/wger/weight/urls.py @@ -33,6 +33,10 @@ urlpatterns = [ login_required(views.WeightUpdateView.as_view()), name='edit'), + url(r'^(?P\d+)/delete/$', + views.WeightDeleteView.as_view(), + name='delete'), + url(r'^export-csv/$', views.export_csv, name='export-csv'), diff --git a/wger/weight/views.py b/wger/weight/views.py index c34ff56dd..39eb90a9e 100644 --- a/wger/weight/views.py +++ b/wger/weight/views.py @@ -38,7 +38,8 @@ from django.utils.translation import ( ) from django.views.generic import ( CreateView, - UpdateView + UpdateView, + DeleteView ) # Third Party @@ -47,7 +48,10 @@ from rest_framework.decorators import api_view from rest_framework.response import Response # wger -from wger.utils.generic_views import WgerFormMixin +from wger.utils.generic_views import ( + WgerFormMixin, + WgerDeleteMixin +) from wger.utils.helpers import check_access from wger.weight import helpers from wger.weight.forms import WeightForm @@ -109,6 +113,28 @@ class WeightUpdateView(WgerFormMixin, LoginRequiredMixin, UpdateView): return reverse('weight:overview', kwargs={'username': self.object.user.username}) +class WeightDeleteView(WgerDeleteMixin, LoginRequiredMixin, DeleteView): + """ + Generic view to delete a weight entry + """ + + model = WeightEntry + fields = ('weight',) + + messages = ugettext_lazy('Successfully deleted.') + + def get_context_data(self, **kwargs): + context = super(WeightDeleteView, self).get_context_data(**kwargs) + context['title'] = _('Delete weight entry for the %s') % self.object.date + return context + + def get_success_url(self): + """ + Return to overview with username + """ + return reverse('weight:overview', kwargs={'username': self.object.user.username}) + + @login_required def export_csv(request): """ From 2912fca63e4d8cb747a2464e2a013586cb4bfd08 Mon Sep 17 00:00:00 2001 From: beingbiplov Date: Fri, 16 Oct 2020 14:40:44 +0545 Subject: [PATCH 4/5] remove whitespace --- wger/weight/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wger/weight/views.py b/wger/weight/views.py index 39eb90a9e..94d095ef6 100644 --- a/wger/weight/views.py +++ b/wger/weight/views.py @@ -120,7 +120,7 @@ class WeightDeleteView(WgerDeleteMixin, LoginRequiredMixin, DeleteView): model = WeightEntry fields = ('weight',) - + messages = ugettext_lazy('Successfully deleted.') def get_context_data(self, **kwargs): From 5c04646d5954fc7bc3a0c72ba8e7ec7bcdc1ba65 Mon Sep 17 00:00:00 2001 From: beingbiplov Date: Fri, 16 Oct 2020 14:43:49 +0545 Subject: [PATCH 5/5] add to AUTHORS.rst --- AUTHORS.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/AUTHORS.rst b/AUTHORS.rst index a7fc3f50e..1146adc9e 100644 --- a/AUTHORS.rst +++ b/AUTHORS.rst @@ -29,6 +29,7 @@ Developers * Kevin Antonio Rateni Iatauro: https://github.com/WalkingPizza * Sven - https://github.com/Svn-Sp * Christopher OConnell - https://github.com/oconnelc +* Biplov - https://github.com/beingbiplov Translators -----------