diff options
author | luxagraf <sng@luxagraf.net> | 2023-07-24 13:31:20 -0500 |
---|---|---|
committer | luxagraf <sng@luxagraf.net> | 2023-07-24 13:31:20 -0500 |
commit | efcc50c5ecff2b62b80f0621752e2098014f9b08 (patch) | |
tree | cfde6548c118c76bfea7c5ace2ee7f1e53634c43 /app/notes/views.py | |
parent | c1a1272f489efdfed70853f4dd52badcb69efbc6 (diff) |
notes: split notes off into its own app
Diffstat (limited to 'app/notes/views.py')
-rw-r--r-- | app/notes/views.py | 46 |
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]) |