コード例 #1
0
def login_admission(request, *args, **kwargs):
    username = request.POST.get('username', '')
    password = request.POST.get('password', '')

    extra_context = {'form_new': NewAccountForm()}
    number1 = randint(1, 20)
    extra_context['number1'] = number1
    number2 = randint(1, 20)
    extra_context['number2'] = number2
    sum = number1 + number2
    number3 = randint(1, 20)
    while number3 > sum:
        number3 = randint(1, 20)
    extra_context['number3'] = number3
    extra_context['message'] = None
    if username and password:
        user = authenticate(username=username, password=password)
        if user is None:
            extra_context['message'] = _(
                'msg_error_username_password_not_matching')

    return login(request,
                 *args,
                 extra_context=extra_context,
                 template_name='registration/admission_login.html',
                 **kwargs)
コード例 #2
0
def home_error(request, message, form):
    form_new = NewAccountForm()
    number1 = randint(1, 20)
    number2 = randint(1, 20)
    number3 = randint(1, 20)
    sum = number1 + number2
    while number3 > sum:
        number3 = randint(1, 20)
    return render(
        request, "admission_home.html", {
            'number1': number1,
            'number2': number2,
            'number3': number3,
            'form_new': form_new,
            'form': form,
            'message': message
        })
コード例 #3
0
def new_user(request):
    """
    To create a new user for the admission
    """
    form_new = NewAccountForm(data=request.POST)
    number1 = request.POST['number1']
    number2 = request.POST['number2']
    number3 = request.POST['number3']

    validation = True
    if form_new.is_valid():
        try:
            result = int(number1) + int(number2) - int(number3)
        except:
            result = None

        if str(result) != form_new['verification'].value():
            validation = False
            form_new.errors['verification'] = "Résultat du calcul incorrect"
    else:
        validation = False
    email = form_new['email_new'].value()

    user = User.objects.filter(email=email)
    if user:
        form_new.errors[
            'email_new_confirm'] = "Il existe déjà un compte pour cette adresse email %s" % email
        validation = False

    if validation:
        user = User.objects.create_user(form_new['email_new'].value(),
                                        form_new['email_new'].value(),
                                        form_new['password_new'].value())
        user.is_staff = False
        user.is_superuser = False
        user.is_active = False
        user.first_name = form_new['first_name_new'].value()
        user.last_name = form_new['last_name_new'].value()
        user.save()
        user = User.objects.get(pk=user.id)
        applicant = mdl.applicant.Applicant()
        applicant.user = user
        applicant.additional_email = user.email
        applicant.save()
        # send an activation email
        send_mail.send_mail_activation(request, str(applicant.activation_code),
                                       applicant, TEMPLATE_MSG_ACTIVATION)
        user_id = user.id
        return HttpResponseRedirect(
            reverse('account_confirm', args=(user_id, )))
    else:
        extra_context = {'form_new': form_new}
        number1 = randint(1, 20)
        extra_context['number1'] = number1
        number2 = randint(1, 20)
        extra_context['number2'] = number2
        sum = number1 + number2
        number3 = randint(1, 20)
        while number3 > sum:
            number3 = randint(1, 20)
        extra_context['number3'] = number3

        extra_context['first_name_new'] = form_new['first_name_new'].value()
        extra_context['last_name_new'] = form_new['last_name_new'].value()
        extra_context['email_new'] = form_new['email_new'].value()
        extra_context['email_new_confirm'] = form_new[
            'email_new_confirm'].value()
        extra_context['password_new'] = form_new['password_new'].value()
        return login(request,
                     extra_context=extra_context,
                     template_name='registration/admission_registration.html')
コード例 #4
0
def login_admission_error(request, *args, **kwargs):
    extra_context = {}
    form_new = NewAccountForm()
    form_new.errors[
        'email_new_confirm'] = "Il existe déjà un compte pour cette adresse email"
    extra_context['form_new'] = form_new
コード例 #5
0
def new_user(request):
    """
    To create a new user for the admission
    """
    form_new = NewAccountForm(data=request.POST)
    number1 = request.POST['number1']
    number2 = request.POST['number2']
    number3 = request.POST['number3']

    validation = True
    if form_new.is_valid():
        try:
            result = int(number1) + int(number2) - int(number3)
        except:
            result = None

        if str(result) != form_new['verification'].value():
            validation = False
            form_new.errors['verification'] = "Résultat du calcul incorrect"
    else:
        validation = False
    email = form_new['email_new'].value()

    user = User.objects.filter(email=email)
    if user:
        form_new.errors['email_new_confirm'] = "Il existe déjà un compte pour cette adresse email %s" % email
        validation = False

    if validation:
        user = User.objects.create_user(form_new['email_new'].value(),
                                        form_new['email_new'].value(),
                                        form_new['password_new'].value())
        user.is_staff = False
        user.is_superuser = False
        user.is_active = False
        user.first_name = form_new['first_name_new'].value()
        user.last_name = form_new['last_name_new'].value()
        user.save()
        user = User.objects.get(pk=user.id)
        applicant = mdl.applicant.Applicant()
        applicant.user = user
        applicant.additional_email = user.email
        applicant.save()
        # send an activation email
        send_mail.send_mail_activation(request, str(applicant.activation_code), applicant, TEMPLATE_MSG_ACTIVATION)
        user_id = user.id
        return HttpResponseRedirect(reverse('account_confirm', args=(user_id,)))
    else:
        extra_context = {'form_new': form_new}
        number1 = randint(1, 20)
        extra_context['number1'] = number1
        number2 = randint(1, 20)
        extra_context['number2'] = number2
        sum = number1 + number2
        number3 = randint(1, 20)
        while number3 > sum:
            number3 = randint(1, 20)
        extra_context['number3'] = number3

        extra_context['first_name_new'] = form_new['first_name_new'].value()
        extra_context['last_name_new'] = form_new['last_name_new'].value()
        extra_context['email_new'] = form_new['email_new'].value()
        extra_context['email_new_confirm'] = form_new['email_new_confirm'].value()
        extra_context['password_new'] = form_new['password_new'].value()
        return login(request, extra_context=extra_context, template_name='registration/admission_registration.html')
コード例 #6
0
def login_admission_error(request, *args, **kwargs):
    extra_context = {}
    form_new = NewAccountForm()
    form_new.errors['email_new_confirm'] = "Il existe déjà un compte pour cette adresse email"
    extra_context['form_new'] = form_new