Example #1
0
def register(request):
    #if we have a post to the url then populate the registration form with the request.POST information
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():

            try:
                customer = stripe.Customer.create(
                    email = form.cleaned_data['email'],
                    card = form.cleaned_data['stripe_id'],
                    plan = 'REG_MONTHLY',
                )

            except stripe.error.CardError, e:
                messages.error(request, "Your (valid) card was declined!")

            if customer:
                user = form.save()
                user.stripe_id = customer.id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(email=request.POST.get('email'),
                                        password = request.POST.get('password1'))
                if user:
                    auth.login(request,user)

                    messages.success(request, "You have successfully registered. Your customer id number is")
                    return redirect(reverse('profile'))
            else:
                messages.error(request,'Unable to log you in at this time!')
        else:
            messages.error(request, "We were unable to take a payment with that card!")
Example #2
0
def register(request):
    data = wrap_data_accounts(request)
    data.update(csrf(request))
    success = False
    if request.method == 'POST':
        reg_form = UserRegistrationForm(request.POST)
        if reg_form.is_valid():
            domain = request.get_host()
            new_user = reg_form.save(domain)
            #username = user.username
            #password = reg_form.cleaned_data.get('password1') # user.password is a hashed value
            #auth_user = authenticate(username=username, password=password)
            #login(request, auth_user)
            success = True
        else:
            for error in reg_form.non_field_errors():
                data['errors'].append(error)
    else:
        reg_form = UserRegistrationForm()
    data['reg_form'] = reg_form
    destination = None
    if success:
        destination = redirect(reverse('account_register_done'))
    else:
        destination = _r('account/register.html', data)
    return destination
Example #3
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                customer = stripe.Customer.create(
                        email=form.cleaned_data['email'],
                        card=form.cleaned_data['stripe_id'],  # this is currently the card token/id
                        plan='REG_MONTHLY',
                )

                if customer:
                    user = form.save()  # save here to create the user and get its instance

                    # now we replace the card id with the actual user id for later
                    user.stripe_id = customer.id
                    user.subscription_end = arrow.now().replace(weeks=+4).datetime  # add 4 weeks from now
                    user.save()

                # check we saved correctly and can login
                user = auth.authenticate(email=request.POST.get('email'),
                                         password=request.POST.get('password1'))

                if user:
                    auth.login(request, user)
                    messages.success(request, "You have successfully registered")
                    return redirect(reverse('profile'))

                else:
                    messages.error(request, "unable to log you in at this time!")

            except stripe.error.CardError, e:
                form.add_error(request, "Your card was declined!")
Example #4
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                customer = stripe.Charge.create(
                    amount=499,
                    currency='EUR',
                    description=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],
                )
            except stripe.error.CardError, e:
                messages.error(request, 'Your card was declined')

            if customer.paid:
                console.log(customer)

                form.save()

                user = auth.authenticate(email=request.POST.get('email'), password=request.POST.get('password1'))

                if user:
                    auth.login(request, user)
                    messages.success(request, 'You have successfully registered')
                    return redirect(reverse('profile'))

                else:
                    messages.error(request, 'Unable to log you in at this time ')
            else:
                messages.error(request, 'Unable to take payment with that card')
Example #5
0
def register(request):
    if request.method == "POST":
        form = UserRegistrationForm(request.POST)
        if form.is_valid():

            try:
                customer = stripe.Charge.create(
                    amount=499,
                    currency="USD",
                    description=form.cleaned_data["email"],
                    card=form.cleaned_data["stripe_id"],
                )
            except stripe.error.CardError, e:
                messages.error(request, "Your card was declined!")

            if customer.paid:
                form.save()

                user = auth.authenticate(email=request.POST.get("email"), password=request.POST.get("password1"))

                if user:
                    auth.login(request, user)
                    messages.success(request, "You have successfully registered")
                    return redirect(reverse("profile"))

                else:
                    messages.error(request, "unable to log you in at this time!")
            else:
                messages.error(request, "We wer unable to take a payment with that card!")
Example #6
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            form.save()

            user = auth.authenticate(username=request.POST.get('username'), password=request.POST.get('password1'))

            if user:
                messages.success(request, "you have successfully registered, big woop.")
                auth.login(request, user)
                print ("hihihhihihih")
                return redirect(reverse('index'))
            else:
                print ("hi")
                messages.error(request, "unable to log you in at this time!")


    else:
        form = UserRegistrationForm()
        print ("hi-hooooo")
    args = {'form': form}
    args.update(csrf(request))

    return render(request, 'register.html', args)
Example #7
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST, request.FILES)
        if form.is_valid():
            try:
                customer = stripe.Customer.create(
                    email=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],
                    plan='REG_MONTHLY',
                )
            except stripe.error.CardError, e:
                messages.error(request, "Your card was declined!")

            if customer:
                user = form.save()
                user.stripe_id = customer.id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(email=request.POST.get('email'), password=request.POST.get('password1'))

                if 'user_profile_picture' in request.FILES:
                    profile.user_profile_picture = request.FILES['user_profile_picture']

                if user:
                    auth.login(request, user)
                    messages.success(request, "You have successfully registered")
                    return redirect(reverse('profile'))

                else:
                    messages.error(request, "We were unable to log you in at this time")
            else:
                messages.error(request, "We were unable to take payment from the card provided")
Example #8
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                customer = stripe.Customer.create(
                    email=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'], # this is currently the card token/id#
                    plan='REG_MONTHLY')

            except stripe.error.CardError, e:
                messages.error(request, "Your card was declined!")
            if customer:
                user = form.save()
                user.stripe_id = customer.stripe_id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()
                user = auth.authenticate(email=request.POST.get('email'), password=request.POST.get('password1'))

                if user:
                    auth.login(request, user)
                    messages.success(request, "You have successfully registered")
                    return redirect(reverse('profile'))
                else:
                    messages.error(request, "unable to log you in at this time!")
            else:
                messages.error(request, "unable to log you in at this time!")
def register(request):
    #if we have a post to the url then populate the registration form with the request.POST information
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():

            try:
                #send web services call to stripe - makes association with credit card and customer
                customer = stripe.Charge.create(
                    amount = 499,
                    currency = "EUR",
                    description = form.cleaned_data['email'],
                    card = form.cleaned_data['stripe_id'],
                )
               # print "IM THE CUSTOMER", json.dumps(customer)

            except stripe.error.CardError, e:
                messages.error(request, "Your (valid) card was declined!")

            if customer.paid:
                form.save()
                user = auth.authenticate(email=request.POST.get('email'),
                                         password = request.POST.get('password1'))

                if user:
                    auth.login(request,user)

                    messages.success(request, "You have successfully registered. Your customer id number is")
                    return redirect(reverse('profile'))
                else:
                    messages.error(request,'Unable to log you in at this time!')
            else:
                messages.error(request, "We were unable to take a payment with that card!")
Example #10
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                customer = stripe.Customer.create(
                    email=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],
                    plan="Sub1"
                )
            except stripe.error.CardError, e:
                messages.error(e._message)
                # messages.error(request, "Your card was declined!")

            if customer:
                user = form.save()
                user.stripe_id = customer.id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(email=request.POST.get('email'),
                                         password=request.POST.get('password1'))

                if user:
                    messages.success(request, "You have successfully registered")
                    return redirect(reverse('profile'))

                else:
                    messages.error(request, "unable to log you in at this time!")

            else:
                messages.error(request, "We were unable to take a payment with that card!")
Example #11
0
def registration(request):
    """Render the registration page"""
    if request.user.is_authenticated:
        return redirect(reverse('index'))
         
    if request.method =="POST":
        registration_form = UserRegistrationForm(request.POST)
        
        if registration_form.is_valid():
            registration_form.save()
            
            user = auth.authenticate(username=request.POST['username'], 
                                        password=request.POST['password1'])
            
            if user:
                auth.login(user=user, request=request)
                messages.success(request, "You have successfully registered")
                return redirect(reverse('index'))
            else:
                messages.error(request, "Unable to register your account at this time")
    
    else:
        registration_form = UserRegistrationForm()
            
    
    return render(request, 'registration.html', 
        {"registration_form": registration_form})
def register(request):
    """
    Handles the new user's email and password to create their account.
    :param request:
    :return:
    """
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            form.save()

            user = auth.authenticate(email=request.POST.get('email'),
                                     password=request.POST.get('password1'))

            if user:
                messages.success(request, "You have successfully registered")
                return redirect(reverse('profile'))

            else:
                messages.error(request, "unable to log you in at this time!")

    else:
        form = UserRegistrationForm()

    args = {'form': form}
    args.update(csrf(request))

    return render(request, 'register.html', args)
def register(request):
    """
    Gets a new users email and password and creates an account.
    """
    context = {}
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                # create a charge customer object for one off payments.
                # customer = stripe.Charge.create(
                #     amount=999,
                #     currency="USD",
                #     description=form.cleaned_data['email'],
                #     card=form.cleaned_data['stripe_id'],
                # )

                # create a customer object within Stripe using the email and
                # Stripe token/id for a re-occurring subscription.
                customer = stripe.Customer.create(
                    email=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],  # this is currently the card token/id
                    plan='REG_MONTHLY2',  # name of plan. See 'Plans' in Stripe website.
                )
            except stripe.error.CardError, e:
                messages.error(request, "Your card was declined!")
            else:
                # charge() method above returns a customer object that contains a 'paid' boolean field.
                # If customer.paid:
                # form.save()

                if customer:
                    user = form.save()

                    # Used in updating/cancelling the subscription
                    user.stripe_id = customer.id  # This will be a string of the form ‘cus_XXXXXXXXXXXXXX’)

                    # Arrow is a fast way of dealing with dates and times in Python.
                    # Create a date that is exactly 4 weeks from now and convert it
                    # into a datetime object which is compatible with our DateTimeField
                    # in the User model.
                    user.subscription_end = arrow.now().replace(weeks=+4).datetime

                    user.save()

                    # request.POST.get() - gets specific data
                    user = auth.authenticate(email=request.POST.get('email'),
                                             password=request.POST.get('password1'))

                    if user:
                        auth.login(request, user)  # login customer/user in.
                        messages.success(request, "You have successfully registered.")
                        # reverse refers to the 'name' given to a route in urls.py
                        return redirect(reverse('profile'))

                    else:
                        messages.error(request, "unable to log you in at this time!")

                else:
                    messages.error(request, "We were unable to take payment from the card provided.")
Example #14
0
def register(request):
    if request.method == "POST":
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                customer = stripe.Customer.create(
                    email=form.cleaned_data["email"], card=form.cleaned_data["stripe_id"], plan="REG_MONTHLY"
                )
            except stripe.error.CardError, e:
                messages.error(request, "Your card was declined!")

            if customer:
                user = form.save()
                user.stripe_id = customer.id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(email=request.POST.get("email"), password=request.POST.get("password1"))

                if user:
                    auth.login(request, user)
                    messages.success(request, "You have successfully registered")
                    return redirect(reverse("profile"))

                else:
                    messages.error(request, "We were unable to log you in at this time")
            else:
                messages.error(request, "We were unable to take payment from the card provided")
    def test_registration_form(self):
        form = UserRegistrationForm({
            'password1': 'letmein',
            'password2': 'letmein'
        })

        self.assertTrue(form.is_valid())
        self.assertRaisesMessage(form.ValidationError, "This field is required.", form.clean)
Example #16
0
def register(request):
  if request.method =='POST':
    form = UserRegistrationForm(request.POST)
    if form.is_valid():
      #user = User.objects.create_user(form.cleaned_data['username'], None, form.cleaned_data['password1'])
      #user.save()
      form.save()
      return redirect(settings.USER_HOME) # Redirect after POST
  else:
    form = UserRegistrationForm() # An unbound form

  return render_to_response('accounts/register.html', {
    'form': form,
},context_instance=RequestContext(request))
Example #17
0
def register(request):
  if request.method =='POST':
    form = UserRegistrationForm(request.POST,user=request.user.id)
    if form.is_valid():
      #user = User.objects.create_user(form.cleaned_data['username'], None, form.cleaned_data['password1'])
      #user.save()
      form.save()
      #TODO- On adding new user, add it to the institute-wide group, ensure update is generated corresponding to user addition.
      return redirect(settings.USER_HOME) # Redirect after POST
  else:
    form = UserRegistrationForm() # An unbound form

  return render_to_response('accounts/register.html', {
    'form': form,
},context_instance=RequestContext(request))
Example #18
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():

            try:
                customer = stripe.Customer.create(
                    email=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],
                    plan='REG_MONTHLY',
                )

                # our initial code for a single payment**
                '''customer = stripe.Charge.create(
                    amount=499,
                    currency='USD',
                    description=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],
                )'''
                # our initial code for a single payment

            except stripe.error.CardError, e:
                messages.error(request, "Your card was declined!")
            # initial code
            '''if customer.paid:
                form.save()

                user = auth.authenticate(email=request.POST.get('email'),
                                         password=request.POST.get('password1'))'''
            # initial code
            if customer:
                user = form.save()
                user.stripe_id = customer.id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(email=request.POST.get('email'),
                                         password=request.POST.get('password1'))

                if user:
                    auth.login(request, user)
                    messages.success(request, "Thank you, your card was authorised. You have successfully registered!")
                    return redirect(reverse('profile'))

                else:
                    messages.error(request, "unable to log you in at this time!")
            else:
                messages.error(request, "We were unable to take a payment with that card!")
def register(request):
    if(request.method == 'POST'):
        form = UserRegistrationForm(request.POST, request.FILES)
        if(form.is_valid()):
            user, created = User.objects.get_or_create(username = form.cleaned_data['username'], email = form.cleaned_data['email'])
            if(not created):
                return HttpResponseBadRequest("An accound with this username or email already exists.")
            else:
                user.set_password(form.cleaned_data['password'])
                avatar = Avatar(user = user, avatar_image = form.cleaned_data['avatar'])
                user.save()
                avatar.save()
                return HttpResponse()
        else:
            return HttpResponseBadRequest("There was something wrong with the information you inputed. Please try again.") 
    else:
        return HttpResponseBadRequest("This endpoint does not support any method other than POST.")
Example #20
0
def register(request):
    log.info("Handling register %s request", request.method)
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():

            try:

                customer = stripe.Customer.create(
                    card=form.cleaned_data['stripe_id'],
                    description=form.cleaned_data['email'],
                    email=form.cleaned_data['email'],
                    plan='REG_MONTHLY'
                )

                log.info("customer %s", customer)

            except stripe.error.CardError:
                messages.error(request, "Your card was declined")

            if customer:
                user = form.save()
                user.stripe_id = customer.stripe_id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(email=request.POST.get('email'), password=request.POST.get('password1'))

                if user:

                    messages.success(request, "You have successfully registered")
                    return redirect(reverse('profile'))

                else:
                    messages.error(request, "unable to log you in at this time!")
            else:
                messages.error(request, "We were unable to take payment with that card")

    else:
        form = UserRegistrationForm()

    args = {'form': form, 'publishable': settings.STRIPE_PUBLISHABLE}
    args.update(csrf(request))

    return render(request, 'register.html', args)
Example #21
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        print form

        if form.is_valid():
            try:
                customer = stripe.Customer.create(
                    description=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],
                    plan='REG_MONTHLY'
                )
                print customer
            except stripe.CardError:
                messages.error(request, "Your card was declined!")
                print 'error carderror'
            if customer:
                user = form.save()
                user.stripe_id = customer.id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(email=request.POST.get('email'),
                                         password=request.POST.get('password1'))

                if user:
                    auth.login(request, user)
                    messages.success(request, "You have successfully registered!")
                    return redirect(reverse('profile'))

                else:
                    messages.error(request, "Unable to log you in at this time")
            else:
                messages.error(request, "Unable to take a payment with that card")

    else:
        today = datetime.date.today()
        form = UserRegistrationForm(initial={'expiry_month': today.month,
                                            'expiry_year': today.year})

    args = {'form': form, 'publishable': settings.STRIPE_PUBLISHABLE}
    args.update(csrf(request))

    return render(request, 'register.html', args)
Example #22
0
def register(request):
    if request.method == 'POST':
        userForm = UserRegistrationForm(request.POST, prefix="user_form")
        profileForm = UserProfileRegistrationForm(request.POST, prefix="profile_form")

        if userForm.is_valid() and profileForm.is_valid():
            new_user = userForm.save()
            new_profile = profileForm.save(commit=False)
            new_profile.User_associated = new_user
            new_profile.Unikey_validated = True
            new_profile.Points = 200
            new_profile.Profile_picture = 'images_profile/sampleAvatar.png'
            new_profile.save()
            return HttpResponseRedirect('/accounts/register-success')
    else:
        userForm = UserRegistrationForm(prefix="user_form")
        profileForm = UserProfileRegistrationForm(prefix="profile_form")
   
    return render_to_response('accounts/signup.html', {"user_form": userForm, "profile_form": profileForm}, context_instance=RequestContext(request))
Example #23
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            user = auth.authenticate(username=request.POST.get('username'),
                                     password=request.POST.get('password1'))
            if user:
                messages.success(request, "You have successfully registered")
                return redirect(reverse('profile'))
            else:
                messages.error(request, "Unable to login")

    else:
        form = UserRegistrationForm()
    args = {'form': form}
    args.update(csrf(request))

    return render(request, 'register.html', args)
Example #24
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            form.save()

            user = auth.authenticate(username=request.POST.get('username'), password=request.POST.get('password1'))

            if user:
                auth.login(request, user)
                return redirect(reverse('index'))
            else:
                messages.error(request, "unable to log you in at this time!")


    else:
        form = UserRegistrationForm()

    args = {'form': form}
    args.update(csrf(request))

    return render(request, 'register.html', args)
Example #25
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                customer = stripe.Customer.create(
                    email=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],
                    # currency='JPY',
                    # amount=499,
                    plan='REG_MONTHLY')
                #
                #

                # description=form.cleaned_data['email'],
                # card=form.cleaned_data['stripe_id'],

            except stripe.error.CardError, e:
                messages.error(request, 'Your card was declined')

            if customer:
                user = form.save()
                user.stripe_id = customer.id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(email=request.POST.get('email'), password=request.POST.get('password1'))

                if user:
                    auth.login(request, user)
                    messages.success(request, 'You have successfully registered')
                    # return redirect(reverse('profile'))
                    return render(request, 'customer_info.html', {'cushty': customer})
            else:
                messages.error(request, 'Unable to log you in at this time ')
        else:
            messages.error(request, 'Unable to take payment with that card')
Example #26
0
def registration(request):
    '''
    Register a new user based on full name, email address and password
    '''
    if request.user.is_authenticated:
        return redirect(reverse('index'))

    if request.method == 'POST':
        registration_form = UserRegistrationForm(request.POST)
        if registration_form.is_valid():
            registration_form.save()
            user = auth.authenticate(username=request.POST['email'],
                                     password=request.POST['password1'])
            if user:
                auth.login(user=user, request=request)
                messages.success(request, 'You have been registered')
                return redirect(reverse('index'))
            else:
                messages.error(request, 'Unable to register your account')
    else:
        registration_form = UserRegistrationForm()

    return render(request, 'register.html',
                  {'registration_form': registration_form})
Example #27
0
def registration(request):
    """Render the registration page"""
    if request.user.is_authenticated:
        return redirect(reverse('index'))

    if request.method == "POST":
        registration_form = UserRegistrationForm(request.POST)

        if registration_form.is_valid():
            registration_form.save()

            user = auth.authenticate(username=request.POST['username'],
                                     password=request.POST['password1'])
            if user:
                auth.login(user=user, request=request)
                messages.success(request, "You have successfully registered")
                return redirect(reverse('index'))
            else:
                messages.error(request,
                               "Unable to register your account at this time")
    else:
        registration_form = UserRegistrationForm()
    return render(request, 'registration.html',
                  {"registration_form": registration_form})
def registration(request):
    # Returns a registration page that allows user/bidder information saved 
    # The bidders info stored here can be viewed in bidders profile
    
    if request.user.is_authenticated:
        return redirect(reverse('home'))
    
    if request.method == "POST":
        registration_form = UserRegistrationForm(request.POST)
        
        if registration_form.is_valid():
            bidding_user = registration_form.save()
            bidding_user.refresh_from_db() 
            bidding_user.bidder.phone = registration_form.cleaned_data.get('phone')
            bidding_user.bidder.street_address1 = registration_form.cleaned_data.get('street_address1')
            bidding_user.bidder.street_address2 = registration_form.cleaned_data.get('street_address2')
            bidding_user.bidder.county = registration_form.cleaned_data.get('county')
            bidding_user.bidder.eircode = registration_form.cleaned_data.get('eircode')
            bidding_user.bidder.country = registration_form.cleaned_data.get('country')
            bidding_user.save()
            
            user = auth.authenticate(username=request.POST['username'],
                                     password=request.POST['password1'])
                                     
            if user:
                auth.login(user=user, request=request)
                messages.success(request, "You have successfully registered")
                return redirect(reverse('home'))
            else:
                messages.error(request, "Unable to register your account at this time")
            
    else:
        registration_form = UserRegistrationForm()
    
    return render(request, 'registration.html', { 
        "registration_form": registration_form})
Example #29
0
def create_user(request):
    if not request.method == 'POST':
        return HttpResponseNotAllowed(['POST'])

    post_params = json.loads(request.body)
    form = UserRegistrationForm(data=post_params)
    if form.is_valid():
        user = User()
        user.email = form.cleaned_data.get('email')
        user.set_password(form.cleaned_data.get('password'))
        with transaction.atomic():
            user.save()
            token = Token.create_token()
            user.token_set.add(token)

        logger.info("New user created. Email: %s", user.email)
        user_dict = user.to_dict()
        user_dict['access_token'] = token.token
        data = json.dumps(user_dict)
        return HttpResponse(data)
    else:
        logger.error("Invalid form to create new user. Errors: %s", form.errors)
        data = json.dumps(form.errors)
        return HttpResponseBadRequest(data)
Example #30
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            form.save()

            user = auth.authenticate(username=request.POST.get('username'),
                                     password=request.POST.get('password1'))

            if user:
                auth.login(request, user)
                messages.success(request, "You have successfully registered")
                return redirect(reverse('profile'))

            else:
                messages.error(request, "unable to log you in at this time!")

    else:
        form = UserRegistrationForm()

    args = {'form': form}
    args.update(csrf(request))

    return render(request, 'register.html', args)
Example #31
0
def registration(request):
    '''Render the registration page'''
    
    if request.user.is_authenticated:
        return redirect(reverse('index'))
        
    if request.method == 'POST':
        registration_form = UserRegistrationForm(request.POST)
        
        if registration_form.is_valid():
            registration_form.save()
            
            user = auth.authenticate(username=request.POST['username'],
                                    password=request.POST['password1'])
            if user:
                auth.login(user=user, request=request)
                messages.success(request, 'You have successfully registered and have been logged in!')
                return redirect(reverse('index'))
            else:
                messages.error(request, 'Sorry, something went wrong during your account registration. Unable to register your account at this time.')
                
    else:
        registration_form = UserRegistrationForm()
    return render(request, 'registration.html', {'registration_form': registration_form})
Example #32
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            new_user = form.save(commit=False)
            new_user.first_name = new_user.first_name.capitalize()
            new_user.last_name = new_user.last_name.capitalize()
            new_user.save()
            auth_user = auth.authenticate(username=request.POST.get('username'), password=request.POST.get('password1'))

            if auth_user:
                messages.success(request, "You have successfully registered")
                return redirect(reverse('profile'))

            else:
                messages.error(request, "unable to log you in!")

    else:
        form = UserRegistrationForm()

    args = {'form': form}
    args.update(csrf(request))

    return render(request, 'register.html', args)
Example #33
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            if User.objects.filter(email=form.cleaned_data['email']):
                messages.error(request, "This email is already taken")
            else:
                form.save()
                user = auth.authenticate(
                    email=request.POST.get('email'),
                    password=request.POST.get('password1'))
                if user:
                    auth.login(request, user)
                    messages.success(request,
                                     "You have successfully registered!")
                    return redirect(reverse('home'))
                else:
                    messages.error(request,
                                   "Unable to log you in at this time!")
    else:
        form = UserRegistrationForm()
    args = {'form': form}
    args.update(csrf(request))
    return render(request, 'register.html', args)
Example #34
0
def registration(request):
    """Render the registration page"""

    if request.user.is_authenticated:
        return redirect(reverse(('index')))

    if request.method == 'POST':
        registration_form = UserRegistrationForm(request.POST)

        if registration_form.is_valid():
            registration_form.save()
            user = auth.authenticate(username=request.POST['username'],
                                     password=request.POST['password1'])
            if user:
                auth.login(user=user, request=request)
                messages.success(request, 'You are registered')
                return redirect(reverse('index'))
            else:
                messages.error(request, 'Unable to register at this time')
    else:
        registration_form = UserRegistrationForm()

    return render(request, 'registration.html',
                  {'registration_form': registration_form})
Example #35
0
def registration(request):
    """
    View for users to register a new account.
    Checks if form is valid, and responds accordingly,
    then redirects users to the login page on successfully
    creating a new account.
    """

    if request.user.is_authenticated():
        return redirect(reverse("index"))

    if request.method == "POST":
        registration_form = UserRegistrationForm(request.POST)

        if registration_form.is_valid():
            registration_form.save()

            user = auth.authenticate(
                username=request.POST["username"],
                password=request.POST["password1"],
            )
            if user:
                auth.login(user=user, request=request)

                messages.success(
                    request,
                    f"You have successfully registered {user.username}",
                )
                return redirect(reverse("index"))
            else:
                messages.error(request,
                               "Unable to register your account at this time")
    else:
        registration_form = UserRegistrationForm()
    return render(request, "registration.html",
                  {"registration_form": registration_form})
Example #36
0
def register(request):
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                customer = stripe.Customer.create(
                    email=form.cleaned_data['email'],
                    card=form.cleaned_data['stripe_id'],
                    plan='REG_MONTHLY',
                )
            except stripe.error.CardError, e:
                messages.error(request, "Your card was declined!")

            if customer:
                user = form.save()
                user.stripe_id = customer.id
                user.subscription_end = arrow.now().replace(weeks=+4).datetime
                user.save()

                user = auth.authenticate(
                    email=request.POST.get('email'),
                    password=request.POST.get('password1'))

                if user:
                    auth.login(request, user)
                    messages.success(request,
                                     "You have successfully registered")
                    return redirect(reverse('profile'))

                else:
                    messages.error(
                        request, "We were unable to log you in at this time")
            else:
                messages.error(
                    request,
                    "We were unable to take payment from the card provided")
Example #37
0
 def test_cannot_create_form_with_only_username_with_messages(self):
     form = UserRegistrationForm({"username": "******", "email": ""})
     self.assertFalse(form.is_valid())
     self.assertEqual(form.errors["email"], ["This field is required."])
Example #38
0
 def test_can_create_form_with_all_fields_completed(self):
     form = UserRegistrationForm({
         "username": "******",
         "email": "*****@*****.**",
     })
     self.assertFalse(form.is_valid())
Example #39
0
def home(request):
    ip = get_client_ip(request)
    base = "http://api.ipinfodb.com/v3/ip-city/?key=3a3bdb7e563895cd7d7b27ff9c5efd60d8686be6d75ab117fe40497d3054d8e9&ip="
    query = base + ip
    #r = requests.get(query)
    location = "none"  #r.text.split(';')[-5]
    state = "none"  #r.text.split(';')[-6]

    form_ = NewsletterEmailsForm(request.POST or None)
    login_form = UserLoginForm(request.POST or None)
    registration_form = UserRegistrationForm(request.POST or None)
    guest_form = GuestBookForm(request.POST or None)
    guest_book = GuestBook.objects.all()
    guest_book_count = len(guest_book)
    guest_book = guest_book[:5]

    subscriptions = get_subscriptions('mrbrian')

    posts = get_blog_posts(4)

    context = {
        'form_': form_,
        'login_form': login_form,
        'registration_form': registration_form,
        'guest_form': guest_form,
        'guest_book': guest_book,
        'ip': ip,
        'city': location,
        'state': state,
        'guest_book_count': guest_book_count,
        'recent_posts': posts,
        'subscriptions': subscriptions[:6],
        'sub_count': len(subscriptions),
    }

    if request.method == "POST":
        if login_form.is_valid():
            username = login_form.cleaned_data.get('username')
            password = login_form.cleaned_data.get('password')
            user = authenticate(username=username, password=password)
            login(request, user)
            messages.success(request,
                             'Welcome back, ' + str(request.user) + '!')
            return redirect('posts:list')

        if registration_form.is_valid():
            user = registration_form.save(commit=False)
            password = registration_form.cleaned_data.get('password')
            user.set_password(password)
            user.save()

            new_user = authenticate(username=user.username, password=password)
            form_ = NewsletterEmailsForm(None)
            login(request, new_user)
            messages.success(
                request,
                'Thanks for registering, ' + str(request.user.username) + '!')
            return redirect('posts:list')

        if form_.is_valid():
            instance = form_.save(commit=False)
            email = form_.cleaned_data.get('email')

            instance.save()
            token = instance.uid
            link = request.build_absolute_uri()
            confirm_link = str(link) + 'newsletter/confirm/' + str(token)
            cancel_link = str(link) + 'newsletter/cancel/' + str(token)
            print(confirm_link)

            send_mail(
                'Thanks for signing up for my Newsletter!',
                'Hi, thanks.',
                EMAIL_HOST_USER, [email],
                html_message=
                "You or someone else has requested to join my newsletter using this email \
						(" + instance.email +
                "). <br /><br />Please click this link if you wish to join my newsletter:<br /><br />\
						<a href='" + confirm_link +
                "'>Confirm newsletter subcription</a> <br /><br />\
						If you don't want to join my newsletter please ignore this email. <br /><br />\
						Once you have confirmed your subscription you can cancel at any time by clicking here: <br /><br />\
						<a href='" + cancel_link + "'>Cancel</a>")
            messages.success(
                request,
                "Thanks for joining the newsletter. Please check your email to confirm."
            )
            return redirect('home:home')

        if guest_form.is_valid():
            instance = guest_form.save(commit=False)
            if location:
                instance.city = location
                instance.state = state
            if request.user.is_authenticated():
                instance.user = request.user
            instance.save()
            messages.success(request, "Thank you for signing the guest book!")
            return redirect('home:home')

    return render(request, 'home/home.html', context)
 def test_registration_form_invalid(self):
     form = UserRegistrationForm({'username': ''})
     self.assertFalse(form.is_valid())
     self.assertEqual(form.errors["username"], [u"This field is required."])
Example #41
0
def user_create_profile(request):
    template_name = 'user/create_profile.html'
    context = {}

    try:
        template_name = 'user/create_profile.html'
        user_profile = UserRegistration.objects.get(
            user=request.user.userregistration.user)
        referee_coount = Referee.objects.filter(user=request.user).count()
        context['user_profile'] = user_profile
        context['referee_coount'] = referee_coount
        if request.method == 'POST':
            form = UserRegistrationForm(request.POST,
                                        request.FILES,
                                        instance=user_profile)
            userRUCF1Form = UserRUCF1Form(request.POST, request.FILES)
            userRUMForm = UserRUMForm(request.POST, request.FILES)
            userRUCF2Form = UserRUCF2Form(request.POST, request.FILES)
            userRUCA1Form = UserRUCA1Form(request.POST, request.FILES)
            refereeForm = RefereeForm(request.POST)
            studentQualificationForm = StudentQualificationForm(
                request.POST, instance=user_profile)
            qualificationsForm = QualificationsForm(request.POST)

            # new
            personalFileUploadForm = PersonalFileUploadForm(
                request.POST, request.FILES)
            # end new

            # TODO: implement UserRUCF1Form reg
            if userRUCF1Form.is_valid():
                obj = userRUCF1Form.save(commit=False)
                obj.user_id = request.user.id
                obj.save()
                messages.success(request, f'RUCF1 Form Upload was successful')
                return redirect('/user/userRUM/')

            # new
            elif personalFileUploadForm.is_valid():
                obj = personalFileUploadForm.save(commit=False)
                obj.user_id = request.user.id
                obj.save()

                messages.success(request,
                                 f'Personal FileUpload was successful')
                return redirect('/user/userRUCF1/')
            # end new

            elif studentQualificationForm.is_valid():
                studentQualificationForm.save()
                messages.success(request,
                                 f'Student Qualification Added successful')
                return redirect('/user/create/')
            elif qualificationsForm.is_valid():
                obj = qualificationsForm.save(commit=False)
                obj.user = request.user
                obj.save()
                messages.success(
                    request, f'Professional Qualification Added successful')
                return redirect('/user/userRUCF1/')
            elif userRUCA1Form.is_valid():
                obj = userRUCA1Form.save(commit=False)
                obj.user_id = request.user.id
                obj.save()
                messages.success(
                    request,
                    f'RUC A1 Form Upload was successful. Thank You For Choosing Rongo University.'
                )
                return redirect('/user/')

            elif userRUCF2Form.is_valid():
                obj = userRUCF2Form.save(commit=False)
                obj.user_id = request.user.id
                obj.save()
                messages.success(request, f'RUCF2 Form Upload was successful')
                return redirect('/user/userRUCA1/')
            elif form.is_valid():
                form.save()
                messages.success(request, f'Update was successful')
                return redirect('/user/create/')
            elif refereeForm.is_valid():
                obj = refereeForm.save(commit=False)
                obj.user = request.user
                obj.save()
                messages.success(request, f'Referee Added successful')
                return redirect('/user/create/')
            elif userRUMForm.is_valid():
                obj = userRUMForm.save(commit=False)
                obj.user_id = request.user.id
                obj.save()
                messages.success(request, f'RU M Form Upload was successful')
                return redirect('/user/userRUCF2/')
            else:
                messages.warning(request,
                                 f'Update Failed, Fill All The fields')
                return redirect('/user/create/')
        else:
            form = UserRegistrationForm()
            userRUCF1Form = UserRUCF1Form()
            userRUMForm = UserRUMForm()
            userRUCF2Form = UserRUCF2Form()
            userRUCA1Form = UserRUCA1Form()
            refereeForm = RefereeForm()
            studentQualificationForm = StudentQualificationForm()
            qualificationsForm = QualificationsForm()
            # new
            personalFileUploadForm = PersonalFileUploadForm()
            # end new
            context['userRUCA1Form'] = userRUCA1Form
            context['userRUCF2Form'] = userRUCF2Form
            context['userRUMForm'] = userRUMForm
            context['form'] = form
            context['userRUCF1Form'] = userRUCF1Form
            context['refereeForm'] = refereeForm
            context['studentQualificationForm'] = studentQualificationForm
            context['qualificationsForm'] = qualificationsForm

            # new
            context['personalFileUploadForm'] = personalFileUploadForm
            # end new

        return render(request, template_name, context)
    except UserRegistration.DoesNotExist:
        messages.warning(
            request,
            f'Please Contant Administration It Seems That Your Datails Is Not Captured Correctly.'
        )
        return redirect('/user/logout/')
Example #42
0
 def test_can_create_a_user(self):
     form = UserRegistrationForm({'username': '******',
                                  'email': '*****@*****.**',
                                  'password1': 'testing321',
                                  'password2': 'testing321'})
     self.assertTrue(form.is_valid())
def register(request):
    """
    Renders the registration page, if the user somehow gets here
    when they are already logged in they are returned to home page
    with a message. Id there are issues with the form then the errors
    are returned. Upon successful registration the user's profile will
    also be created, taking from the register form, and the user directed
    to the home page.
    """
    if request.user.is_authenticated:
        sweetify.error(
            request,
            "Sure you're already registered!",
            icon='info',
            timer='1500',
            toast='true',
            position='center',
        )
        return redirect(reverse('home'))

    if request.method == "POST":
        registration_form = UserRegistrationForm(request.POST, request.FILES)

        if registration_form.is_valid():
            registration_form.save()
            user = auth.authenticate(username=request.POST['username'],
                                     password=request.POST['password1'])
            pic = registration_form.cleaned_data['profile_pic']
            if not pic:
                pic = 'images/user.png'
            user.profile_pic = pic
            Profile.objects.create(user=user,
                                   username=request.POST['username'],
                                   profile_pic=pic)
            if user:
                auth.login(user=user, request=request)
                prev_url = request.POST.get('prevUrl')
                if prev_url == 'shop':
                    return redirect('view_cart')
                else:
                    sweetify.success(
                        request,
                        title='Thank you for registering, why not edit your:' +
                        '<a href="/accounts/profile/"><u>Profile Page</u></a>',
                        icon='success',
                        toast='true',
                        timer='11000',
                        position='center',
                    )
                    return redirect(reverse('home'))
            else:
                sweetify.error(
                    request,
                    "Unable to register your account at this time",
                    icon='warning',
                    timer='2000',
                    toast='true',
                    position='center',
                )
    else:
        registration_form = UserRegistrationForm()

    return render(request, 'register.html',
                  {"registration_form": registration_form})
 def test_is_invalid_when_email_is_not_given(self):
     data = self.get_example_form_data(email="")
     form = UserRegistrationForm(data=data)
     self.assertFalse(form.is_valid())
 def test_invalid_when_passwords_do_not_match(self):
     data = self.get_example_form_data(p2="PasswordThatDoesNotMatch123")
     form = UserRegistrationForm(data=data)
     self.assertFalse(form.is_valid())
Example #46
0
	def test_valid_data(self):
		form = UserRegistrationForm(data={'username':'******', 'email':'*****@*****.**', 'password':'******'})
		self.assertTrue(form.is_valid())
 def test_valid(self):
     data = self.get_example_form_data()
     form = UserRegistrationForm(data=data)
     self.assertTrue(form.is_valid())
Example #48
0
def register(request):
    """
    Gets a new users email and password and creates an account.
    """
    context = {}
    if request.method == 'POST':
        form = UserRegistrationForm(request.POST)
        if form.is_valid():
            try:
                # create a charge customer object for one off payments.
                # customer = stripe.Charge.create(
                #     amount=999,
                #     currency="USD",
                #     description=form.cleaned_data['email'],
                #     card=form.cleaned_data['stripe_id'],
                # )

                # create a customer object within Stripe using the email and
                # Stripe token/id for a re-occurring subscription.
                customer = stripe.Customer.create(
                    email=form.cleaned_data['email'],
                    card=form.cleaned_data[
                        'stripe_id'],  # this is currently the card token/id
                    plan=
                    'REG_MONTHLY2',  # name of plan. See 'Plans' in Stripe website.
                )
            except stripe.error.CardError, e:
                messages.error(request, "Your card was declined!")
            else:
                # charge() method above returns a customer object that contains a 'paid' boolean field.
                # If customer.paid:
                # form.save()

                if customer:
                    user = form.save()

                    # Used in updating/cancelling the subscription
                    user.stripe_id = customer.id  # This will be a string of the form ‘cus_XXXXXXXXXXXXXX’)

                    # Arrow is a fast way of dealing with dates and times in Python.
                    # Create a date that is exactly 4 weeks from now and convert it
                    # into a datetime object which is compatible with our DateTimeField
                    # in the User model.
                    user.subscription_end = arrow.now().replace(
                        weeks=+4).datetime

                    user.save()

                    # request.POST.get() - gets specific data
                    user = auth.authenticate(
                        email=request.POST.get('email'),
                        password=request.POST.get('password1'))

                    if user:
                        auth.login(request, user)  # login customer/user in.
                        messages.success(request,
                                         "You have successfully registered.")
                        # reverse refers to the 'name' given to a route in urls.py
                        return redirect(reverse('profile'))

                    else:
                        messages.error(request,
                                       "unable to log you in at this time!")

                else:
                    messages.error(
                        request,
                        "We were unable to take payment from the card provided."
                    )
Example #49
0
	def test_invalid_data(self):
		form = UserRegistrationForm(data={})
		self.assertFalse(form.is_valid())
		self.assertEqual(len(form.errors), 3)
 def test_invalid_when_account_with_the_same_email_already_exists(self):
     User.objects.create_user("FirstUser", "*****@*****.**",
                              "SecretPas123")
     data = self.get_example_form_data(username="******")
     form = UserRegistrationForm(data=data)
     self.assertFalse(form.is_valid())