Пример #1
0
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)
Пример #2
0
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)
Пример #3
0
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')
Пример #4
0
    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
Пример #5
0
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"})
Пример #6
0
def subsribe_form():
    return {'subscribe_form': SubscribeForm()}