ref: move into trigger subfolder
This commit is contained in:
0
app/base/views/trigger/__init__.py
Executable file
0
app/base/views/trigger/__init__.py
Executable file
27
app/base/views/trigger/toggle_checkin.py
Executable file
27
app/base/views/trigger/toggle_checkin.py
Executable file
@@ -0,0 +1,27 @@
|
||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||
from django.shortcuts import redirect
|
||||
from django.utils import timezone
|
||||
from django.views import View
|
||||
|
||||
from app.base.models import Person, Booking, BookingType
|
||||
|
||||
|
||||
class ToggleCheckinView(LoginRequiredMixin, View):
|
||||
def get(self, *args, **kwargs):
|
||||
user = Person.objects.get(id=kwargs['user_id'])
|
||||
next = self.request.GET.get('next')
|
||||
booking = user.current_checkin # performs db query
|
||||
|
||||
if booking:
|
||||
booking.end_time = timezone.now()
|
||||
booking.save()
|
||||
else:
|
||||
plan = self.request.GET.get('plan')
|
||||
# get() throws exception if not-exist. This is intended behavior!
|
||||
# If you need `None` instead, use `filter().first()`
|
||||
book_type = BookingType.objects.get(key=plan)
|
||||
Booking.objects.create(
|
||||
user=user, type=book_type, begin_time=timezone.now()
|
||||
)
|
||||
|
||||
return redirect(next)
|
||||
20
app/base/views/trigger/update_note.py
Executable file
20
app/base/views/trigger/update_note.py
Executable file
@@ -0,0 +1,20 @@
|
||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||
from django.shortcuts import redirect
|
||||
from django.views import View
|
||||
|
||||
from app.base.models import Person
|
||||
from app.base.models.note import Note
|
||||
|
||||
|
||||
class UpdateNoteView(LoginRequiredMixin, View):
|
||||
def post(self, *args, **kwargs):
|
||||
user = Person.objects.get(id=kwargs['user_id'])
|
||||
text = self.request.POST.get('text', '').strip()
|
||||
if text:
|
||||
Note.objects.update_or_create(user=user, defaults={'text': text})
|
||||
else:
|
||||
try:
|
||||
user.note.delete()
|
||||
except Person.note.RelatedObjectDoesNotExist:
|
||||
pass
|
||||
return redirect(user.get_absolute_url())
|
||||
Reference in New Issue
Block a user