Beispiel #1
0
def test_user_create_form():
    form = UserCreateForm({
        'username': '******',
        'email': '*****@*****.**',
        'name': 'tomek',
        'profile_photo': '',
        'password1': 'pass123password',
        'password2': 'pass123password'
    })
    assert form.is_valid() is True
    # Confirm manually set field attributes are ok.
    assert form.fields['password1'].help_text == (
        '8 characters or more & not numerical only.')
    assert form.fields['email'].required is True
    assert form.fields['email'].help_text == 'Required'
    assert form.fields['profile_photo'].help_text == (
        'Image file, 300 - 500px width/height, .jpeg, .png or .gif.')
    user = form.save()
    # Confirm saved user matches data from form.
    assert user.username == 'tom_k'
    assert user.name == 'tomek'
    assert user.email == '*****@*****.**'
    assert user.profile_photo == ''
    # Confirm is_parent is appropriately set in save method.
    assert user.user_type == User.TYPE_PARENT
Beispiel #2
0
 def test_user_create_form_email(self):
     form = UserCreateForm(
         data={
             "username": "******",
             "email": "no_atsign_in_email",
             "password1": "Hello_who_am_I",
             "password2": "Hello_who_am_I",
         })
     self.assertFalse(form.is_valid())
Beispiel #3
0
 def test_user_create_form(self):
     form = UserCreateForm(
         data={
             "username": "******",
             "email": "*****@*****.**",
             "password1": "Hello_who_am_I",
             "password2": "Hello_who_am_I",
         })
     self.assertTrue(form.is_valid())
Beispiel #4
0
 def test_UserCreateForm_form(self):
     form = UserCreateForm({
         'email': '*****@*****.**',
         'password1': '13066nata',
         'password2': '13066nata',
         'username': '******',
         'name': 'Qwe'
     })
     self.assertTrue(form.is_valid())
    def test_user_create_form_valid(self):
        form = UserCreateForm(
            data={
                'username': '******',
                'email': '*****@*****.**',
                'password1': 'test123456',
                'password2': 'test123456'
            })

        self.assertTrue(form.is_valid())
Beispiel #6
0
def create_user(request):
    title = "Create User"
    form = UserCreateForm(request.POST or None)

    if form.is_valid():
        instance = form.save(commit=False)
        instance.save()
        return HttpResponseRedirect(f'/user/{instance.id}/info')
    context = {
        'title': title,
        'form': form,
    }
    return render(request, 'accounts/user_form.html', context)
Beispiel #7
0
def sign_up(request):
    resend_email = request.GET.get('resend')
    if resend_email:
        user = get_object_or_404(User, email=resend_email)
        send_email(request, user, resend_email)
        context = {
            'email': resend_email,
            'resend': True
        }
        return render(request, 'accounts/complete_sign_up.html', context)
    if request.method == 'POST':
        form = UserCreateForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            is_email_exist = User.objects.filter(email=user.email).exists()
            if is_email_exist:
                form.add_error('email', 'This email is already taken!')
                return render(request, 'accounts/register.html', {'form': form})
            user.is_active = False
            user.save()
            email = form.cleaned_data.get('email')
            user_profile = UserProfileInfo(user=user)
            user_profile.save()
            send_email(request, user, email)
            return render(request, 'accounts/complete_sign_up.html', {'email': email})
    else:
        form = UserCreateForm()
    return render(request, 'accounts/register.html', {'form': form})
Beispiel #8
0
def register(request):
    args = {}
    args.update(csrf(request))
    # args['form'] = UserCreationForm()
    args['form'] = UserCreateForm()
    if request.POST:
        # form = UserCreationForm(request.POST)
        form = UserCreateForm(request.POST)
        if form.is_valid():
            newuser = form.save()
            auth.login(request, newuser)
            return redirect('/')
        else:
            args['form'] = form
    return render_to_response('register.html', args)
Beispiel #9
0
def sign_up(request):
    context_dict = {'head_title': 'Software Security Project - Sign Up'}
    if request.method == 'POST':
        # form = UserCreationForm(request.POST)
        form = UserCreateForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            # this is where we hash the password using sha1 and store it in out ExtendUser model
            sha1 = hashlib.sha1(raw_password.encode('utf-8')).hexdigest()
            public_key, private_key = generate_keys()
            ext_user = ExtendUser(user=user,
                                  password_sha1=sha1,
                                  public_key=public_key,
                                  private_key=private_key)
            ext_user.save()
            login(request, user)
            return redirect('home')
    else:
        # form = UserCreationForm()
        form = UserCreateForm()
    context_dict['form'] = form
    return render(request, 'accounts/signup.html', context_dict)
Beispiel #10
0
def index_and_sign_up(request):
    form = UserCreateForm()
    if request.method == "POST":
        form = UserCreateForm(request.POST)
        if form.is_valid():
            form.clean()
    return render(request, 'index.html', {'form': form})
Beispiel #11
0
def register(request):
    if request.method == 'POST':
        user_form = UserCreateForm(data=request.POST)
        profile_form = TeacherProfileCreateForm(
            data=request.POST,
            files=request.FILES
        )
        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save(commit=False)
            user.staff = True
            user.save()
            user.groups.add(Group.objects.get(name='Instructors'))
            profile = profile_form.save(commit=False)
            profile.user = user  # set the user created to the profile
            if 'mugshot' in request.FILES:
                profile.mugshot = request.FILES['mugshot']
            profile.save()
            return HttpResponseRedirect(reverse('teacher_profile:teacher_profile_list'))
    else:
        user_form = UserCreateForm()
        profile_form = TeacherProfileCreateForm()
    return render(request, 'teachers/profile/create_form.html', {
        'user_form': user_form,
        'profile_form': profile_form
    })
Beispiel #12
0
def signup(request):
    if request.user.is_authenticated():
        return HttpResponseRedirect("/")
    if request.method == "POST":
        user_form = UserCreateForm(data=request.POST)
        if form.is_valid():
            #user = User.objects.create_user(username=form.cleaned_data["username"],
                                            #email = form.cleaned_data["email"],
                                            #password = form.cleaned_data["password"])
            username = user_form.clean_username()
            password = user_form.clean_password2()
            user_form.save()
            account.name = form.cleaned_data["name"]
            account.birthday = form.cleaned_data["birthday"]
            account.save()
            return redirect('/')
        else:
            return index(request, user_form=user_form)
    else:
        """user is not submitting the form, show them a blank registration form"""
        form = UserCreateForm()
        return render(request, 'accounts/signup.html', {'form': form})
Beispiel #13
0
def VendorSignUp(request):

    registered = False

    if request.method == 'POST':
        # Get info from "both" forms
        # It appears as one form to the user on the .html page
        user_form = UserCreateForm(data=request.POST)
        profile_form = VendorsProfileForm(data=request.POST)

        # Check to see both forms are valid
        if user_form.is_valid() and profile_form.is_valid():

            # Save User Form to Database
            user = user_form.save()

            # Hash the password
            user.set_password(user.password)

            # Update with Hashed password
            user.save()

            # Now we deal with the extra info!
            # Can't commit yet because we still need to manipulate
            profile = profile_form.save(commit=False)

            # Set One to One relationship between
            # UserCreateForm and VendorsProfileForm
            profile.user = user

            # Check if they provided a profile picture
            if 'profile_pic' in request.FILES:
                print('found it')
                # If yes, then grab it from the POST form reply
                profile.profile_pic = request.FILES['profile_pic']

            # Now save model
            profile.save()

            # Registration Successful!
            registered = True

        else:
            # One of the forms was invalid if this else gets called.
            print(user_form.errors, profile_form.errors)

    else:
        # Was not an HTTP post so we just render the forms as blank.
        user_form = UserCreateForm()
        profile_form = VendorsProfileForm()

    # This is the render and context dictionary to feed
    # back to the registration.html file page.
    return render(
        request, 'registration/signup.html', {
            'user_form': user_form,
            'profile_form': profile_form,
            'registered': registered
        })
Beispiel #14
0
def signup_view(request):
    form = UserCreateForm(request.POST or None)
    if request.method == 'GET':
        return render(request, 'accounts/signup.html', {'form': form})
    if request.method == 'POST':
        if form.is_valid():
            username = form.cleaned_data.get("username")
            email = form.cleaned_data.get("email")
            password = form.cleaned_data.get("password1")
            context = {'form': form}
            if User.objects.filter(email=email).exists():
                context["error_mail"] = "Данная почта уже зарегистрирована"
            if len(context) == 1:
                user = User.objects.create_user(username=username, email=email, password=password)
                user.is_active = False
                user.save()
                use_https = request.is_secure()
                mail_subject = 'Активация аккаунта.'
                token = account_activation_token.make_token(user)
                message = render_to_string('accounts/mail_confirm.html', {
                    'user': user,
                    'domain': '127.0.0.1:8000',
                    'uid': urlsafe_base64_encode(force_bytes(user.id)),
                    'token': token,
                    'protocol': 'https' if use_https else 'http',
                })
                to_email = form.cleaned_data.get('email')
                email = EmailMessage(
                    mail_subject, message, to=[to_email]
                )
                email.send()
                return render(request, 'accounts/verify_mail_page.html')
            return render(request, 'accounts/signup.html', context)

        context = {'form': form}
        if 'username' in form.errors.as_data():
            context["error_name"] = "Данное имя уже зарегистрировано"
        return render(request, 'accounts/signup.html', context)
Beispiel #15
0
def signup(request):
  """Signup user view. Render a blank form, or validate a post."""
  if request.method == 'POST':
    form = UserCreateForm(request.POST)
    if form.is_valid():
      user = form.save()
      user.is_active = False
      user.save()
      lbwuser = LbwUser(user=user)
      lbwuser.save()
      message = """A new user:
%s %s
has signed up. Please check
http://%s%s
and activate them as necessary.
"""
      mail_admins("New User signed up",
                  message % (user.get_full_name(), user.email, request.get_host(), reverse('activate_users')))
      return redirect('index')
  else:
    form = UserCreateForm()
  return render(request, 'accounts/create_user.html',
      {'form': form})
Beispiel #16
0
def user_create(request, client_id, template='accounts/user_create.html'):
    params = {}
    client = Client.objects.get(id=client_id)
    form = UserCreateForm(request.POST or None)

    if request.method == 'POST':
        if form.is_valid():
            email = form.cleaned_data['email']
            # if user with this email already exists then associate them
            if User.objects.filter(email=email):
                user_profile = User.objects.get(email=email).get_profile()
                user_profile.clients.add(client)
                user_profile.save()
            else:
                register_user(email, client, request.user, request)

            messages.success(request, MSG_SUCCESS_USER_CREATED)
            return redirect(reverse('users_list',
                                    kwargs={'client_id':client.id}))

    params['client'] = client
    params['form'] = form
    return render(request, template, params)
Beispiel #17
0
def create_normal_user(request):
    next_page = request.GET.get('next')
    title = "Register"
    form = UserCreateForm(request.POST or None)
    if form.is_valid():
        username = form.cleaned_data.get('username')
        password = form.cleaned_data.get('password')
        role = form.cleaned_data.get('role')
        del form.cleaned_data['password2']

        user = form.user_class(**form.cleaned_data)
        user.set_password(user.password)
        user.save()

        request_with_session = add_info_to_session(request, username, role)
        do_login(request_with_session, username, password, role)

        if next_page:
            return redirect(next_page)
        return redirect("/")

    context = {"form": form, "title": title}

    return render(request, "base_form.html", context)
Beispiel #18
0
def signup(request):
    user_form = UserCreateForm(data=request.POST)
    if request.method == 'POST':
        if user_form.is_valid():
            username = user_form.clean_username()
            password = user_form.clean_password2()
            user_form.save()
            #user = authenticate(username=username, password=password)
            # Want more sophisticated email verification here.
            #login(request, user)
            return redirect('/')
        else:
            return redirect('/signup')
    return register_view(request)
Beispiel #19
0
def signup(request):
    """
    Sign up page
    :param request:
    :return to Homepage
    """

    if request.method == 'POST':
        form =  UserCreateForm(request.POST)
        if form.is_valid():
            form.save()
            username = form.cleaned_data.get('username')
            raw_password = form.cleaned_data.get('password1')
            user = authenticate(username=username, password=raw_password)
            login(request, user)
            return redirect('home')
    else:
        form =  UserCreateForm()
    return render(request, 'accounts/signup.html', {'form': form})
Beispiel #20
0
def register(request):
    if request.method == 'POST':
        user_form = UserCreateForm(data=request.POST)
        profile_form = StudentProfileCreateForm(data=request.POST,
                                                files=request.FILES)
        if user_form.is_valid() and profile_form.is_valid():
            user = user_form.save(commit=False)
            user.student = True
            user.save()
            profile = profile_form.save(commit=False)
            profile.user = user  # set the user created to the profile
            if 'mugshot' in request.FILES:
                profile.mugshot = request.FILES['mugshot']
            profile.save()
            return HttpResponseRedirect(
                reverse('students_profile:student_profile_list'))
    else:
        user_form = UserCreateForm()
        profile_form = StudentProfileCreateForm()
    return render(request, 'students/profile/create_form.html', {
        'user_form': user_form,
        'profile_form': profile_form
    })
def index(request):
    context = {
        'login_form': LoginForm(),
        'signup_form': UserCreateForm(),
    }
    return render(request, 'health_adv_app/index.html', context)
    def test_user_create_form_empty(self):
        form = UserCreateForm(data={})

        self.assertFalse(form.is_valid())
        self.assertEquals(len(form.errors), 3)
 def test_create_invalid(self):
     form = UserCreateForm(data=user_test_data_incorrect)
     self.assertFalse(form.is_valid())