Exemple #1
0
def verify(request):
    form = forms.VerifyPinForm()
    if request.method == "POST":
        form = forms.VerifyPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            return http.HttpResponseRedirect(get_payment_url())
    return render(request, "pin/verify.html", {"form": form})
Exemple #2
0
def reset_cancel(request):
    try:
        client.set_needs_pin_reset(get_user(request), False)
    except ResourceModified:
        return system_error(request, code=msg.RESOURCE_MODIFIED)
    request.session['uuid_needs_pin_reset'] = False
    return http.HttpResponseRedirect(reverse('pin.verify'))
Exemple #3
0
def create(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.CreatePinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            if getattr(form, 'buyer_exists', False):
                try:
                    res = client.change_pin(form.uuid,
                                            form.cleaned_data['pin'],
                                            etag=form.buyer_etag)
                except ResourceModified:
                    return system_error(request, code=msg.RESOURCE_MODIFIED)
            else:
                res = client.create_buyer(form.uuid, form.cleaned_data['pin'])
            if form.handle_client_errors(res):
                set_user_has_pin(request, True)
                return http.HttpResponseRedirect(reverse('pin.confirm'))
    form.no_pin = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Create a Pin'),
                  'action': reverse('pin.create'),
                  'pin_form_tracking' : {
                      'pin_error_codes': form.pin_error_codes,
                  },
                  'track_cancel': {
                      'action': 'pin cancel',
                      'label': 'Create Pin Page',
                  }})
Exemple #4
0
def reset_new_pin(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.ResetPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            try:
                res = client.set_new_pin(form.uuid, form.cleaned_data['pin'])
            except ResourceModified:
                return system_error(request, code=msg.RESOURCE_MODIFIED)
            if form.handle_client_errors(res):
                request.session['uuid_has_new_pin'] = True
                return http.HttpResponseRedirect(reverse('pin.reset_confirm'))

    form.reset_flow = True
    return render(
        request, 'pin/pin_form.html', {
            'form': form,
            'title': _('Reset Pin'),
            'action': reverse('pin.reset_new_pin'),
            'pin_form_tracking': {
                'pin_error_codes': form.pin_error_codes,
            },
            'track_cancel': {
                'action': 'pin cancel',
                'label': 'Reset Pin page',
            }
        })
Exemple #5
0
def was_locked(request):
    try:
        client.unset_was_locked(uuid=get_user(request))
    except ResourceModified:
        return system_error(request, code=msg.RESOURCE_MODIFIED)
    request.session['uuid_pin_was_locked'] = False
    return render(request, 'pin/pin_was_locked.html')
Exemple #6
0
def reset_cancel(request):
    try:
        client.set_needs_pin_reset(get_user(request), False)
    except ResourceModified:
        return system_error(request, code=msg.RESOURCE_MODIFIED)
    request.session['uuid_needs_pin_reset'] = False
    return http.HttpResponseRedirect(reverse('pin.verify'))
Exemple #7
0
def reset_confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ResetConfirmPinForm(uuid=get_user(request),
                                         data=request.POST)
        if form.is_valid():
            # Clear reverification state since this PIN reset is finished.
            request.session['was_reverified'] = False
            messages.success(request, _('Pin reset'))
            # Copy pin into place is handled in solitude, webpay
            # merely asked solitude to verify the new pin which
            # happens in validation of the form.
            return http.HttpResponseRedirect(get_wait_url(request))
    form.reset_flow = True
    return render(
        request, 'pin/pin_form.html', {
            'form': form,
            'title': _('Confirm Pin'),
            'action': reverse('pin.reset_confirm'),
            'pin_form_tracking': {
                'pin_error_codes': form.pin_error_codes,
            },
            'track_cancel': {
                'action': 'pin cancel',
                'label': 'Reset Pin page',
            }
        })
Exemple #8
0
def create(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.CreatePinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            if getattr(form, 'buyer_exists', False):
                try:
                    res = client.change_pin(form.uuid,
                                            form.cleaned_data['pin'],
                                            etag=form.buyer_etag)
                except ResourceModified:
                    return system_error(request, code=msg.RESOURCE_MODIFIED)
            else:
                res = client.create_buyer(form.uuid, form.cleaned_data['pin'])
            if form.handle_client_errors(res):
                set_user_has_pin(request, True)
                return http.HttpResponseRedirect(reverse('pin.confirm'))
    form.no_pin = True
    return render(
        request, 'pin/pin_form.html', {
            'form': form,
            'title': _('Create a Pin'),
            'action': reverse('pin.create'),
            'pin_form_tracking': {
                'pin_error_codes': form.pin_error_codes,
            },
            'track_cancel': {
                'action': 'pin cancel',
                'label': 'Create Pin Page',
            }
        })
Exemple #9
0
def was_locked(request):
    try:
        client.unset_was_locked(uuid=get_user(request))
    except ResourceModified:
        return system_error(request, code=msg.RESOURCE_MODIFIED)
    request.session['uuid_pin_was_locked'] = False
    return render(request, 'pin/pin_was_locked.html')
Exemple #10
0
def confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ConfirmPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            return http.HttpResponseRedirect(get_payment_url())
    return render(request, 'pin/pin_form.html', { 'form': form,
                  'title': _('Confirm your PIN:'),
                  'action': reverse('pin.confirm') })
Exemple #11
0
def reset_start(request):
    client.set_needs_pin_reset(get_user(request))
    request.session['uuid_needs_pin_reset'] = True
    form = forms.CreatePinForm()
    form.reset_flow = True
    return render(request, 'pin/reset_start.html',
                  {'title': _('Reset Pin'),
                   'action': reverse('pin.reset_new_pin'),
                   'form': form})
Exemple #12
0
def reset_start(request):
    request.session['was_reverified'] = False
    client.set_needs_pin_reset(get_user(request))
    request.session['uuid_needs_pin_reset'] = True
    form = forms.CreatePinForm()
    form.reset_flow = True
    return render(request, 'pin/reset_start.html',
                  {'title': _('Reset Pin'),
                   'action': reverse('pin.reset_new_pin'),
                   'form': form})
Exemple #13
0
def reset_new_pin(request):
    form = forms.CreatePinForm()
    if request.method == "POST":
        form = forms.CreatePinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            res = client.set_new_pin(form.buyer, form.cleaned_data["pin"])
            if form.handle_client_errors(res):
                set_user_has_pin(request, True)
                return http.HttpResponseRedirect(reverse("pin.reset_confirm"))
    return render(request, "pin/reset_create.html", {"form": form})
Exemple #14
0
def reset_confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == "POST":
        form = forms.ResetConfirmPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            # Copy pin into place is handled in solitude, webpay
            # merely asked solitude to verify the new pin which
            # happens in validation of the form.
            return http.HttpResponseRedirect(get_payment_url())
    return render(request, "pin/reset_confirm.html", {"form": form})
Exemple #15
0
def verify(request):
    form = forms.VerifyPinForm()

    if request.method == 'POST':
        form = forms.VerifyPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            request.session['last_pin_success'] = datetime.now()
            return http.HttpResponseRedirect(get_payment_url())
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Enter Pin'),
                  'action': reverse('pin.verify')})
Exemple #16
0
def confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ConfirmPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            set_user_has_confirmed_pin(request, True)
            return http.HttpResponseRedirect(get_payment_url(request))
    form.no_pin = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Confirm Pin'),
                  'action': reverse('pin.confirm')})
Exemple #17
0
def reset_new_pin(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.CreatePinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            res = client.set_new_pin(form.buyer, form.cleaned_data['pin'])
            if form.handle_client_errors(res):
                set_user_has_pin(request, True)
                return http.HttpResponseRedirect(reverse('pin.reset_confirm'))
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Enter your new PIN:'),
                  'action': reverse('pin.reset_new_pin') })
Exemple #18
0
def reset_confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ResetConfirmPinForm(uuid=get_user(request),
                                         data=request.POST)
        if form.is_valid():
            # Copy pin into place is handled in solitude, webpay
            # merely asked solitude to verify the new pin which
            # happens in validation of the form.
            return http.HttpResponseRedirect(get_payment_url())
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Confirm your new PIN:'),
                  'action': reverse('pin.reset_confirm') })
Exemple #19
0
def verify(request):
    form = forms.VerifyPinForm()

    if request.method == 'POST':
        form = forms.VerifyPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            request.session['last_pin_success'] = datetime.now()
            return http.HttpResponseRedirect(get_payment_url())
    return render(request, 'pin/pin_form.html', {
        'form': form,
        'title': _('Enter Pin'),
        'action': reverse('pin.verify')
    })
Exemple #20
0
def create(request):
    form = forms.CreatePinForm()
    if request.method == "POST":
        form = forms.CreatePinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            if hasattr(form, "buyer"):
                res = client.change_pin(form.buyer, form.cleaned_data["pin"])
            else:
                res = client.create_buyer(form.uuid, form.cleaned_data["pin"])
            if form.handle_client_errors(res):
                set_user_has_pin(request, True)
                return http.HttpResponseRedirect(reverse("pin.confirm"))
    return render(request, "pin/create.html", {"form": form})
Exemple #21
0
def reset_new_pin(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.ResetPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            res = client.set_new_pin(form.uuid, form.cleaned_data['pin'])
            if form.handle_client_errors(res):
                request.session['uuid_has_new_pin'] = True
                return http.HttpResponseRedirect(reverse('pin.reset_confirm'))

    form.reset_flow = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Reset Pin'),
                  'action': reverse('pin.reset_new_pin')})
Exemple #22
0
def reset_new_pin(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.ResetPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            res = client.set_new_pin(form.uuid, form.cleaned_data['pin'])
            if form.handle_client_errors(res):
                request.session['uuid_has_new_pin'] = True
                return http.HttpResponseRedirect(reverse('pin.reset_confirm'))

    form.reset_flow = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Reset Pin'),
                  'action': reverse('pin.reset_new_pin')})
Exemple #23
0
def reset_start(request):
    request.session['was_reverified'] = False
    client.set_needs_pin_reset(get_user(request))
    request.session['uuid_needs_pin_reset'] = True
    form = forms.CreatePinForm()
    form.reset_flow = True
    return render(request, 'pin/reset_start.html',
                  {'title': _('Reset Pin'),
                   'action': reverse('pin.reset_new_pin'),
                   'form': form,
                   'track_cancel': {
                       'action': 'pin cancel',
                       'label': 'Reset Start Page',
                   }})
Exemple #24
0
def create(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.CreatePinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            if hasattr(form, 'buyer'):
                res = client.change_pin(form.buyer, form.cleaned_data['pin'])
            else:
                res = client.create_buyer(form.uuid, form.cleaned_data['pin'])
            if form.handle_client_errors(res):
                set_user_has_pin(request, True)
                return http.HttpResponseRedirect(reverse('pin.confirm'))
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Create your PIN:'),
                  'action': reverse('pin.create') })
Exemple #25
0
def reset_confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ResetConfirmPinForm(uuid=get_user(request),
                                         data=request.POST)
        if form.is_valid():
            # Clear reverification state since this PIN reset is finished.
            request.session['was_reverified'] = False
            # Copy pin into place is handled in solitude, webpay
            # merely asked solitude to verify the new pin which
            # happens in validation of the form.
            return http.HttpResponseRedirect(get_payment_url())
    form.reset_flow = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Confirm Pin'),
                  'action': reverse('pin.reset_confirm')})
Exemple #26
0
def create(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.CreatePinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            if getattr(form, 'buyer_exists', False):
                res = client.change_pin(form.uuid, form.cleaned_data['pin'])
            else:
                res = client.create_buyer(form.uuid, form.cleaned_data['pin'])
            if form.handle_client_errors(res):
                set_user_has_pin(request, True)
                return http.HttpResponseRedirect(reverse('pin.confirm'))
    form.no_pin = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Create a Pin'),
                  'action': reverse('pin.create')})
Exemple #27
0
def verify(request):
    form = forms.VerifyPinForm()
    # pin_recently_entered is on the form because the template expect it as it
    # is rendered from pay.lobby as well as here.
    form.pin_recently_entered = utils.pin_recently_entered(request)
    if form.pin_recently_entered:
        return http.HttpResponseRedirect(get_payment_url())

    if request.method == 'POST':
        form = forms.VerifyPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            request.session['last_pin_success'] = datetime.now()
            return http.HttpResponseRedirect(get_payment_url())
        form.pin_recently_entered = False
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Enter your PIN:'),
                  'action': reverse('pin.verify') })
Exemple #28
0
def reset_start(request):
    request.session['was_reverified'] = False
    try:
        client.set_needs_pin_reset(get_user(request))
    except ResourceModified:
        return system_error(request, code=msg.RESOURCE_MODIFIED)
    request.session['uuid_needs_pin_reset'] = True
    form = forms.CreatePinForm()
    form.reset_flow = True
    return render(request, 'pin/reset_start.html',
                  {'title': _('Reset Pin'),
                   'action': reverse('pin.reset_new_pin'),
                   'form': form,
                   'track_cancel': {
                       'action': 'pin cancel',
                       'label': 'Reset Start Page',
                   }})
Exemple #29
0
def reset_confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ResetConfirmPinForm(uuid=get_user(request),
                                         data=request.POST)
        if form.is_valid():
            # Copy pin into place is handled in solitude, webpay
            # merely asked solitude to verify the new pin which
            # happens in validation of the form.
            return http.HttpResponseRedirect(get_payment_url())
    form.reset_flow = True
    return render(
        request, 'pin/pin_form.html', {
            'form': form,
            'title': _('Confirm Pin'),
            'action': reverse('pin.reset_confirm')
        })
Exemple #30
0
def confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ConfirmPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            set_user_has_confirmed_pin(request, True)
            return http.HttpResponseRedirect(get_payment_url(request))
    form.no_pin = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Confirm Pin'),
                  'action': reverse('pin.confirm'),
                  'pin_form_tracking' : {
                    'pin_error_codes': form.pin_error_codes,
                  },
                  'track_cancel': {
                      'action': 'pin cancel',
                      'label': 'Confirm Pin Page',
                  }})
Exemple #31
0
def reset_start(request):
    request.session['was_reverified'] = False
    try:
        client.set_needs_pin_reset(get_user(request))
    except ResourceModified:
        return system_error(request, code=msg.RESOURCE_MODIFIED)
    request.session['uuid_needs_pin_reset'] = True
    form = forms.CreatePinForm()
    form.reset_flow = True
    return render(
        request, 'pin/reset_start.html', {
            'title': _('Reset Pin'),
            'action': reverse('pin.reset_new_pin'),
            'form': form,
            'track_cancel': {
                'action': 'pin cancel',
                'label': 'Reset Start Page',
            }
        })
Exemple #32
0
def confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ConfirmPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            set_user_has_confirmed_pin(request, True)
            return http.HttpResponseRedirect(get_wait_url(request))
    form.no_pin = True
    return render(
        request, 'pin/pin_form.html', {
            'form': form,
            'title': _('Confirm Pin'),
            'action': reverse('pin.confirm'),
            'pin_form_tracking': {
                'pin_error_codes': form.pin_error_codes,
            },
            'track_cancel': {
                'action': 'pin cancel',
                'label': 'Confirm Pin Page',
            }
        })
Exemple #33
0
def verify(request):
    form = forms.VerifyPinForm()

    if request.method == 'POST':
        form = forms.VerifyPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            request.session['last_pin_success'] = datetime.now()
            return http.HttpResponseRedirect(get_payment_url(request))
        elif form.pin_is_locked:
            request.session['uuid_pin_is_locked'] = True
            return http.HttpResponseRedirect(reverse('pin.is_locked'))
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Enter Pin'),
                  'action': reverse('pin.verify'),
                  'pin_form_tracking' : {
                    'pin_error_codes': form.pin_error_codes,
                  },
                  'track_cancel': {
                      'action': 'pin cancel',
                      'label': 'Verify Pin Page',
                  }})
Exemple #34
0
def reset_confirm(request):
    form = forms.ConfirmPinForm()
    if request.method == 'POST':
        form = forms.ResetConfirmPinForm(uuid=get_user(request),
                                         data=request.POST)
        if form.is_valid():
            # Clear reverification state since this PIN reset is finished.
            request.session['was_reverified'] = False
            messages.success(request, _('Pin reset'))
            # Copy pin into place is handled in solitude, webpay
            # merely asked solitude to verify the new pin which
            # happens in validation of the form.
            return http.HttpResponseRedirect(get_payment_url(request))
    form.reset_flow = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Confirm Pin'),
                  'action': reverse('pin.reset_confirm'),
                  'pin_form_tracking' : {
                      'pin_error_codes': form.pin_error_codes,
                  },
                  'track_cancel': {
                      'action': 'pin cancel',
                      'label': 'Reset Pin page',
                  }})
Exemple #35
0
def reset_new_pin(request):
    form = forms.CreatePinForm()
    if request.method == 'POST':
        form = forms.ResetPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            try:
                res = client.set_new_pin(form.uuid, form.cleaned_data['pin'])
            except ResourceModified:
                return system_error(request, code=msg.RESOURCE_MODIFIED)
            if form.handle_client_errors(res):
                request.session['uuid_has_new_pin'] = True
                return http.HttpResponseRedirect(reverse('pin.reset_confirm'))

    form.reset_flow = True
    return render(request, 'pin/pin_form.html', {'form': form,
                  'title': _('Reset Pin'),
                  'action': reverse('pin.reset_new_pin'),
                  'pin_form_tracking' : {
                    'pin_error_codes': form.pin_error_codes,
                  },
                  'track_cancel': {
                      'action': 'pin cancel',
                      'label': 'Reset Pin page',
                  }})
Exemple #36
0
def verify(request):
    form = forms.VerifyPinForm()

    if request.method == 'POST':
        form = forms.VerifyPinForm(uuid=get_user(request), data=request.POST)
        if form.is_valid():
            request.session['last_pin_success'] = datetime.now()
            return http.HttpResponseRedirect(get_wait_url(request))
        elif form.pin_is_locked:
            request.session['uuid_pin_is_locked'] = True
            return http.HttpResponseRedirect(reverse('pin.is_locked'))
    return render(
        request, 'pin/pin_form.html', {
            'form': form,
            'title': _('Enter Pin'),
            'action': reverse('pin.verify'),
            'pin_form_tracking': {
                'pin_error_codes': form.pin_error_codes,
            },
            'track_cancel': {
                'action': 'pin cancel',
                'label': 'Verify Pin Page',
            }
        })
Exemple #37
0
def reset_cancel(request):
    client.set_needs_pin_reset(get_user(request), False)
    request.session['uuid_needs_pin_reset'] = False
    return http.HttpResponseRedirect(reverse('pin.verify'))
Exemple #38
0
def was_locked(request):
    client.unset_was_locked(uuid=get_user(request))
    request.session['uuid_pin_was_locked'] = False
    return render(request, 'pin/pin_was_locked.html')
Exemple #39
0
def reset_start(request):
    # TODO(Wraithan): Create dialog to make sure you meant to reset your pin
    client.set_needs_pin_reset(get_user(request))
    return http.HttpResponseRedirect(reverse("auth.logout"))
Exemple #40
0
def reset_cancel(request):
    client.set_needs_pin_reset(get_user(request), False)
    return http.HttpResponseRedirect(reverse("pin.verify"))
Exemple #41
0
def reset_cancel(request):
    client.set_needs_pin_reset(get_user(request), False)
    request.session['uuid_needs_pin_reset'] = False
    return http.HttpResponseRedirect(reverse('pin.verify'))