summaryrefslogtreecommitdiff
path: root/app/notes/views.py
diff options
context:
space:
mode:
authorluxagraf <sng@luxagraf.net>2023-07-24 13:31:20 -0500
committerluxagraf <sng@luxagraf.net>2023-07-24 13:31:20 -0500
commitefcc50c5ecff2b62b80f0621752e2098014f9b08 (patch)
treecfde6548c118c76bfea7c5ace2ee7f1e53634c43 /app/notes/views.py
parentc1a1272f489efdfed70853f4dd52badcb69efbc6 (diff)
notes: split notes off into its own app
Diffstat (limited to 'app/notes/views.py')
-rw-r--r--app/notes/views.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/app/notes/views.py b/app/notes/views.py
new file mode 100644
index 0000000..70f20c6
--- /dev/null
+++ b/app/notes/views.py
@@ -0,0 +1,46 @@
+from django.views.generic import UpdateView, DetailView, ListView
+from django.views.generic.edit import CreateView, DeleteView, UpdateView
+from django.utils.decorators import method_decorator
+from django.contrib.auth.decorators import login_required
+from django.urls import reverse
+
+from .models import Note
+from .forms import NoteCreateForm
+
+
+class NoteCreateView(CreateView):
+ model = Note
+ form_class = NoteCreateForm
+
+ def get_form_kwargs(self):
+ kwargs = super(NoteCreateView, self).get_form_kwargs()
+ kwargs.update({'user': self.request.user})
+ return kwargs
+
+ def get_success_url(self):
+ return reverse('posts:detail', kwargs={"pk": self.object.post.pk})
+
+
+class NoteUpdateView(UpdateView):
+ model = Note
+ fields = ['title', 'url', 'body_markdown', 'post', 'status', 'user']
+
+ def get_context_data(self, **kwargs):
+ context = super(NoteUpdateView, self).get_context_data(**kwargs)
+ context['is_update'] = True
+ return context
+
+ def get_success_url(self):
+ return reverse('posts:detail', kwargs={"pk": self.object.post.pk})
+
+
+class NoteListView(ListView):
+ model = Note
+
+ def get_queryset(self):
+ if self.kwargs['status'] == "todo":
+ status = "Call In"
+ else:
+ status = self.kwargs['status']
+ status_reverse = dict((v, k) for k, v in Note.STATUS)
+ return Note.objects.filter(user=self.request.user).filter(status=status_reverse[status])