Exemplo n.º 1
0
def validate_user(first_name: str, email: str, source: str) -> UserSignupForm:
    """
    Validate a user
    :param first_name:
    :param email:
    :param source:
    :return:
    """
    data = {'first_name': first_name, 'email': email, 'source': source}

    form = UserSignupForm(data)
    if not form.is_valid():
        raise UserCreationException(form)
    return form
Exemplo n.º 2
0
def _lead_form(request, *args, **kwargs):
    if request.method == 'GET':
        form = UserSignupForm()
        return render(request,
                      'core/lead_form_errors.html',
                      context={'form': form})

    source = request.GET.get('utm_source', default='unknown')
    first_name = request.POST.get('first_name')
    email = request.POST.get('email')
    tags = [kwargs.get('offer_tag', 'offer-funnel-0')]
    for key, value in request.GET.items():
        if key.startswith('utm_'):
            tags.append(f"{key}={value}")

    try:
        user = user_domain.register_lead(first_name, email, source, tags=tags)
    except user_domain.UserCreationException as e:
        return render(request,
                      'core/lead_form_errors.html',
                      context={'form': e.form},
                      status=400)

    login(request, user)

    return redirect(reverse('core:thanks'))
Exemplo n.º 3
0
def _lead_form(request, redirect_to_OTO=True, *args, **kwargs):
    if request.method == 'GET':
        form = UserSignupForm()
        return render(request,
                      'core/lead_form_errors.html',
                      context={'form': form})

    source = request.GET.get('utm_source', default='unknown')
    first_name = request.POST.get('first_name')
    email = request.POST.get('email')

    try:
        user = user_facade.register_lead(first_name, email, source)
    except user_facade.UserCreationException as e:
        return render(request,
                      'core/lead_form_errors.html',
                      context={'form': e.form},
                      status=400)

    login(request, user)

    if redirect_to_OTO:
        return redirect(reverse('payments:client_landing_page_oto'))
    else:
        return redirect(reverse('core:thanks'))
Exemplo n.º 4
0
def programmer_week_ty(request):
    """
    View with lead landing page
    :param request:
    :return:
    """
    return render(request, 'core/lead_landing_page.html', context={'form': UserSignupForm()})
Exemplo n.º 5
0
def index(request):
    if request.user.is_authenticated:
        return redirect(reverse('dashboard:home'))

    return render(request, 'core/index.html', {
        'form': UserSignupForm(),
        'is_launch_open': is_launch_open()
    })
Exemplo n.º 6
0
def lead_form(request):
    if request.method == 'GET':
        form = UserSignupForm()
        return render(request, 'core/lead_form_errors.html', context={'form': form})
    source = request.GET.get('utm_source', default='unknown')
    first_name = request.POST.get('first_name')
    email = request.POST.get('email')
    try:
        user = user_facade.register_lead(first_name, email, source)
    except user_facade.UserCreationException as e:
        return render(request, 'core/lead_form_errors.html', context={'form': e.form})
    login(request, user)
    return redirect(reverse('core:lead_change_password'))
Exemplo n.º 7
0
def lead_form(request):
    if request.method == 'GET':
        form = UserSignupForm()
        return render(request,
                      'core/lead_form_errors.html',
                      context={'form': form})
    form = UserSignupForm(request.POST)
    if form.is_valid():
        user = form.save()
        assign_role(user, 'lead')
        facade.create_or_update_lead(user.first_name, user.email)
        return redirect(reverse('core:thanks'))
    return render(request,
                  'core/lead_form_errors.html',
                  context={'form': form})
Exemplo n.º 8
0
def _lead_form(request, *args, **kwargs):
    if request.method == 'GET':
        form = UserSignupForm()
        return render(request, 'core/lead_form_errors.html', context={'form': form})

    source = request.GET.get('utm_source', default='unknown')
    first_name = request.POST.get('first_name')
    email = request.POST.get('email')
    tags = [kwargs.get('offer_tag', 'offer-funnel-0')]
    for key, value in request.GET.items():
        if key.startswith('utm_'):
            tags.append(f"{key}={value}")

    try:
        user = user_domain.register_lead(first_name, email, source, tags=tags)
    except user_domain.UserCreationException as e:
        return render(request, 'core/lead_form_errors.html', context={'form': e.form}, status=400)

    login(request, user)

    # Redirect retorna após campanha L7
    # return redirect('https://pythonpro.com.br')
    return redirect('https://pythonpro.com.br/jornada-rumo-a-primeira-vaga-inscricao-l7-v2/?' +
                    'utm_source=iscas&utm_medium=trafego-organico&utm_campaign=L7')
Exemplo n.º 9
0
def index(request):
    return render(request, 'core/index.html', {'form': UserSignupForm()})