parent
b3f4576f86
commit
f3ebc52679
8 changed files with 435 additions and 6 deletions
|
|
@ -13,7 +13,7 @@ from django.utils.translation import get_language
|
|||
from djangocms_blog.models import Post
|
||||
from django.contrib import messages
|
||||
from django.http import JsonResponse
|
||||
from django.views.generic import View, DetailView, ListView
|
||||
from django.views.generic import View, DetailView, ListView, DeleteView
|
||||
|
||||
|
||||
from .models import Supporter
|
||||
|
|
@ -34,7 +34,7 @@ from utils.models import UserBillingAddress
|
|||
|
||||
|
||||
from .forms import LoginForm, SignupForm, MembershipBillingForm, BookingDateForm,\
|
||||
BookingBillingForm
|
||||
BookingBillingForm, CancelBookingForm
|
||||
|
||||
from .models import MembershipType, Membership, MembershipOrder, Booking, BookingPrice,\
|
||||
BookingOrder
|
||||
|
|
@ -568,14 +568,63 @@ class OrdersMembershipDetailView(LoginRequiredMixin, DetailView):
|
|||
return context
|
||||
|
||||
|
||||
class OrdersBookingDetailView(LoginRequiredMixin, DetailView):
|
||||
# class BookingCancelView(FormView):
|
||||
# success_message = "Your booking has been cancelled"
|
||||
# model = BookingOrder
|
||||
# form_class = CancelBookingForm
|
||||
|
||||
# def get_success_url(self):
|
||||
# pk = self.kwargs.get(self.pk_url_kwarg)
|
||||
# return reverse_lazy('digitalglarus:booking_orders_list', kwargs={'pk': pk})
|
||||
|
||||
# def form_valid(self, form):
|
||||
# booking_order = self.get_object()
|
||||
# # booking_order.cancel()
|
||||
# request = self.request
|
||||
|
||||
# return HttpResponseRedirect(self.get_success_url())
|
||||
|
||||
|
||||
class OrdersBookingDetailView(LoginRequiredMixin, UpdateView):
|
||||
template_name = "digitalglarus/booking_orders_detail.html"
|
||||
context_object_name = "order"
|
||||
login_url = reverse_lazy('digitalglarus:login')
|
||||
form_class = CancelBookingForm
|
||||
success_message = "You booking has been cancelled"
|
||||
# permission_required = ['view_hostingorder']
|
||||
model = BookingOrder
|
||||
|
||||
def get_context_data(self, *args, **kwargs):
|
||||
def get_success_url(self):
|
||||
pk = self.kwargs.get(self.pk_url_kwarg)
|
||||
return reverse_lazy('digitalglarus:booking_orders_detail', kwargs={'pk': pk})
|
||||
|
||||
def form_valid(self, form):
|
||||
|
||||
booking_order = self.get_object()
|
||||
booking_order.cancel()
|
||||
request = self.request
|
||||
|
||||
context = {
|
||||
'order': booking_order,
|
||||
'booking': booking_order.booking,
|
||||
'base_url': "{0}://{1}".format(request.scheme, request.get_host())
|
||||
|
||||
}
|
||||
email_data = {
|
||||
'subject': 'Your membership has been charged',
|
||||
'to': request.user.email,
|
||||
'context': context,
|
||||
'template_name': 'booking_cancellation',
|
||||
'template_path': 'digitalglarus/emails/'
|
||||
}
|
||||
email = BaseEmail(**email_data)
|
||||
email.send()
|
||||
|
||||
messages.add_message(self.request, messages.SUCCESS, self.success_message)
|
||||
|
||||
return HttpResponseRedirect(self.get_success_url())
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
|
||||
context = super(OrdersBookingDetailView, self).get_context_data(**kwargs)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue