def register(request, slug): logger = logging.getLogger(__name__) # # create a file handler logger.info('views::register() - start') event = get_object_or_404(Event, slug=slug) now = datetime.datetime.now() if event.start_registration > now or event.end_registration < now: return HttpResponse(_("Inschrijving gesloten.")) #SubscribeForm = SubscribeFormBuilder(event) if request.method == "POST": logger.info('views::register() - form POST') form = SubscribeForm(event, request.POST) if form.is_valid(): # Store the data subscription = fill_subscription(form, event) if not subscription: # Error Filling subscription error_str = "Error in saving form." logger.error(error_str) return HttpResponse(_(error_str)) if subscription.event_option.price <= 0: subscription.payed = True subscription.send_confirmation_email() subscription.save() logger.info('views::register() - registered for a free event.') return HttpResponse(_("Dank voor uw inschrijving")) # You need to pay response = mollie.fetch( settings.MOLLIE['partner_id'], # Partner id subscription.event_option.price, # Amount form.cleaned_data["issuer"].safe_id(), # Bank ID subscription.event_option.name, # Description settings.MOLLIE['report_url'], # Report url settings.MOLLIE['return_url'], # Return url settings.MOLLIE['profile_key'], # Return url ) err = mollie.get_error(response) if err: error_str = "views::register() - Technische fout, probeer later opnieuw." + "\n\n%d: %s" % (err[0], err[1]) logger.error(error_str) return HttpResponse(_(error_str)) subscription.trxid = response.order.transaction_id subscription.save() logger.info(response.order.URL) return HttpResponseRedirect(str(response.order.URL)) else: form = SubscribeForm(event) c = { "event": event, "request": request, "form": form, } c.update(csrf(request)) return render_to_response("form.html", c)
def detail(request, slug): subscribed = False if request.method == 'POST': subscribe_form = SubscribeForm(data=request.POST) if subscribe_form.is_valid(): subscribe = subscribe_form.save(commit=False) subscribe.save() subscribed = True else: subscribe_form = SubscribeForm() context_dict = {} try: title = Title.objects.get(slug=slug) details = Detail.objects.filter(title=title) context_dict['details'] = details context_dict['title'] = title context_dict['subscribed'] = subscribed context_dict['subscribe_form'] = subscribe_form #tagforblog = TagForBlog.objects.get(title=title) related_titles = Title.objects.exclude(slug=slug).filter( blog_type=title.blog_type).order_by('pub_date')[:6] related_titles_by_author = Title.objects.exclude(slug=slug).filter( publisher=title.publisher).order_by('-pub_date')[:3] context_dict['related_titles'] = related_titles context_dict['related_titles_by_author'] = related_titles_by_author nav_tips = Title.objects.filter(blog_type='tips')[:4] nav_tales = Title.objects.filter(blog_type='stories')[:4] nav_inspireds = Title.objects.filter(blog_type='inspired')[:4] nav_photoblogs = Title.objects.filter(blog_type='photoblog')[:4] context_dict['nav_tips'] = nav_tips context_dict['nav_tales'] = nav_tales context_dict['nav_inspireds'] = nav_inspireds context_dict['nav_photoblogs'] = nav_photoblogs except Title.DoesNotExist: raise Http404("Page does not exist") return render(request, 'blogs/blog_detail.html', context_dict)
def subscribe(request): if request.method == 'POST': form = SubscribeForm(request.POST) if form.is_valid(): print('form is valid') Subscribe.objects.create(email=form.cleaned_data['email']) return redirect('home:home') return redirect('home:home')
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) user = READ_User.objects.get(user_id=self.request.session.get('user')) subs = Subscribe.objects.filter(user=user) context['visible'] = 1 for sub in subs: if sub.video == context['video']: context['visible'] = 0 break context['form'] = SubscribeForm(self.request) return context
def subscribe_add(request): """ Add new subscriber :param request: request :return: json """ if request.method == 'POST': form = SubscribeForm(request.POST) if form.is_valid(): email_list = Subscriber.objects.filter( email=form.cleaned_data['email']) if len(email_list) == 0: Subscriber.objects.create(email=form.cleaned_data['email']) return JsonResponse({"result": "ok"}) else: return JsonResponse({"result": "error"})
def subsribe_form(): return {'subscribe_form': SubscribeForm()}