From 8cd9d11449091aed3d9fd065ba8dd91aee6c8609 Mon Sep 17 00:00:00 2001 From: Vaibhav Mule <vaibhavmule135@gmail.com> Date: Sat, 14 Mar 2020 17:08:16 +0530 Subject: [PATCH] show message on creation of reminder --- hypha/apply/activity/messaging.py | 2 ++ hypha/apply/activity/options.py | 1 + hypha/apply/funds/forms.py | 18 ++++++++++++++++-- hypha/apply/funds/views.py | 23 ++++++++++------------- 4 files changed, 29 insertions(+), 15 deletions(-) diff --git a/hypha/apply/activity/messaging.py b/hypha/apply/activity/messaging.py index d2c7b76cb..309b5829a 100644 --- a/hypha/apply/activity/messaging.py +++ b/hypha/apply/activity/messaging.py @@ -68,6 +68,7 @@ neat_related = { MESSAGES.SKIPPED_REPORT: 'report', MESSAGES.REPORT_FREQUENCY_CHANGED: 'config', MESSAGES.REPORT_NOTIFY: 'report', + MESSAGES.CREATED_REMINDER: 'reminder', } @@ -838,6 +839,7 @@ class DjangoMessagesAdapter(AdapterBase): MESSAGES.REMOVE_DOCUMENT: 'Successfully removed document', MESSAGES.SKIPPED_REPORT: 'handle_skipped_report', MESSAGES.REPORT_FREQUENCY_CHANGED: 'handle_report_frequency', + MESSAGES.CREATED_REMINDER: 'Reminder created', } def batch_reviewers_updated(self, added, sources, **kwargs): diff --git a/hypha/apply/activity/options.py b/hypha/apply/activity/options.py index c6b54450a..0e139c91b 100644 --- a/hypha/apply/activity/options.py +++ b/hypha/apply/activity/options.py @@ -46,6 +46,7 @@ class MESSAGES(Enum): SKIPPED_REPORT = 'Skipped Report' REPORT_FREQUENCY_CHANGED = 'Report Frequency Changed' REPORT_NOTIFY = 'Report Notify' + CREATED_REMINDER = 'CREATED_REMINDER' @classmethod def choices(cls): diff --git a/hypha/apply/funds/forms.py b/hypha/apply/funds/forms.py index 6827b9ef4..22ebd8906 100644 --- a/hypha/apply/funds/forms.py +++ b/hypha/apply/funds/forms.py @@ -411,10 +411,24 @@ class UpdateMetaTermsForm(ApplicationSubmissionModelForm): class CreateReminderForm(forms.ModelForm): - def __init__(self, user=None, *args, **kwargs): - self.user = user + submission = forms.ModelChoiceField( + queryset=ApplicationSubmission.objects.filter(), + widget=forms.HiddenInput(), + ) + time = forms.DateTimeField(input_formats=['%Y-%m-%dT%H:%M']) + + def __init__(self, instance=None, user=None, *args, **kwargs): super().__init__(*args, **kwargs) + self.user = user + + if instance: + self.fields['submission'].initial = instance.id + def save(self, *args, **kwargs): + return Reminder.objects.create( + time=self.cleaned_data['time'], + submission=self.cleaned_data['submission'], + user=self.user) class Meta: model = Reminder diff --git a/hypha/apply/funds/views.py b/hypha/apply/funds/views.py index 03fc6af29..42735eb13 100644 --- a/hypha/apply/funds/views.py +++ b/hypha/apply/funds/views.py @@ -588,21 +588,18 @@ class CreateReminderView(DelegatedViewMixin, CreateView): form_class = CreateReminderForm model = Reminder - # def form_valid(self, form): - # response = super().form_valid(form) - - # messenger( - # MESSAGES.CREATED_PROJECT, - # request=self.request, - # user=self.request.user, - # source=self.object, - # related=self.object.submission, - # ) + def form_valid(self, form): + response = super().form_valid(form) - # return response + messenger( + MESSAGES.CREATED_REMINDER, + request=self.request, + user=self.request.user, + source=self.object.submission, + related=self.object, + ) - # def get_success_url(self): - # return self.object.get_absolute_url() + return response class AdminSubmissionDetailView(ReviewContextMixin, ActivityContextMixin, DelegateableView, DetailView): -- GitLab