Exemplo n.º 1
0
 def test_validate_email_already_registered(self):
     # Ensure user can't register when a duplicate email is used
     form = SignupForm(email='*****@*****.**',
                       company="test",
                       contact="test",
                       password='******',
                       confirm='signupformtest')
     self.assertFalse(form.validate())
Exemplo n.º 2
0
 def test_validate_success_register_form(self):
     # Ensure correct data validates.
     form = SignupForm(email='*****@*****.**',
                       company="test",
                       contact="test",
                       password='******',
                       confirm='signupformtest')
     self.assertTrue(form.validate())
Exemplo n.º 3
0
 def test_validate_invalid_password_format(self):
     # Ensure incorrect data does not validate.
     form = SignupForm(email='*****@*****.**',
                       company="test",
                       contact="test",
                       password='******',
                       confirm='signupformtest')
     self.assertFalse(form.validate())
Exemplo n.º 4
0
 def test_validate_email_already_registered(self):
     # Ensure user can't register when a duplicate email is used
     form = SignupForm(
         email='*****@*****.**',
         company="test",
         contact="test",
         password='******',
         confirm='signupformtest')
     self.assertFalse(form.validate())
Exemplo n.º 5
0
 def test_validate_invalid_password_format(self):
     # Ensure incorrect data does not validate.
     form = SignupForm(
         email='*****@*****.**',
         company="test",
         contact="test",
         password='******',
         confirm='signupformtest')
     self.assertFalse(form.validate())
Exemplo n.º 6
0
 def test_validate_success_register_form(self):
     # Ensure correct data validates.
     form = SignupForm(
         email='*****@*****.**',
         company="test",
         contact="test",
         password='******',
         confirm='signupformtest')
     self.assertTrue(form.validate())
Exemplo n.º 7
0
def signup():
    """
    User Sign up page: Very basic email + password
    sign up form that will also login users.
    """
    # Data is used throughout for the jinja2 templates
    data = {"active": "signup", "loggedin": False}  # Sets the current page  # Don't show the logout link

    # Define the SignupForm
    form = SignupForm(request.form)
    # Validate and then create userdata
    if request.method == "POST":
        if form.validate():
            # Take form data
            email = form.email.data
            password = form.password.data
            company = form.company.data
            contact = form.contact.data
            userdata = {"username": email, "email": email, "password": password, "company": company, "contact": contact}

            # Create user
            user = User()
            user.config = app.config
            result = user.createUser(userdata, g.rdb_conn)
            # Check results for success or failure
            if result == "exists":
                flash("User already exists.", "danger")
            elif result is not False:
                try:
                    stathat.ez_count(app.config["STATHAT_EZ_KEY"], app.config["ENVNAME"] + " User Signup", 1)
                except:
                    pass
                print("/signup - New user created")
                cdata = cookies.genCdata(result, app.config["SECRET_KEY"])
                data["loggedin"] = True
                flash("You are signed up.", "success")

                # Generate confirmation token
                generate_confirmation_token(email, result, time.time())

                # Build response
                resp = make_response(redirect(url_for("member.dashboard_page")))
                timeout = int(time.time()) + int(app.config["COOKIE_TIMEOUT"])
                # Set the cookie secure as best as possible
                resp.set_cookie("loggedin", cdata, expires=timeout, httponly=True)
                return resp
        else:
            stathat.ez_count(app.config["STATHAT_EZ_KEY"], app.config["ENVNAME"] + " False User Signup", 1)
            print("/signup - False user creation")
            flash("Form is not valid.", "danger")

    # Return Signup Page
    return render_template("user/signup.html", data=data, form=form)
Exemplo n.º 8
0
def signup():
    '''
    User Sign up page: Very basic email + password
    sign up form that will also login users.
    '''
    # Data is used throughout for the jinja2 templates
    data = {
        'active': "signup",  # Sets the current page
        'loggedin': False  # Don't show the logout link
    }

    # Define the SignupForm
    form = SignupForm(request.form)
    # Validate and then create userdata
    if request.method == "POST":
        if form.validate():
            # Take form data
            email = form.email.data
            password = form.password.data
            company = form.company.data
            contact = form.contact.data
            userdata = {
                'username': email,
                'email': email,
                'password': password,
                'company': company,
                'contact': contact
            }

            # Create user
            user = User()
            result = user.createUser(userdata, g.rdb_conn)
            # Check results for success or failure
            if result == "exists":
                data['error'] = True
                data['msg'] = 'User already exists'
            elif result is not False:
                stathat.ez_count(
                    app.config['STATHAT_EZ_KEY'],
                    app.config['ENVNAME'] + ' User Signup', 1)
                print("/signup - New user created")
                cdata = cookies.genCdata(result, app.config['SECRET_KEY'])
                data['loggedin'] = True
                data['msg'] = 'You are signed up'
                data['error'] = False
                # Build response
                resp = make_response(redirect(url_for('member.dashboard_page')))
                timeout = int(time.time()) + int(app.config['COOKIE_TIMEOUT'])
                # Set the cookie secure as best as possible
                resp.set_cookie(
                    'loggedin', cdata, expires=timeout, httponly=True)
                return resp
        else:
            stathat.ez_count(
                app.config['STATHAT_EZ_KEY'],
                app.config['ENVNAME'] + ' Failed User Signup', 1)
            print("/signup - Failed user creation")
            data['msg'] = 'Form is not valid'
            data['error'] = True

    # Return Signup Page
    return render_template('user/signup.html', data=data, form=form)
Exemplo n.º 9
0
def signup():
    '''
    User Sign up page: Very basic email + password
    sign up form that will also login users.
    '''
    # Data is used throughout for the jinja2 templates
    data = {
        'active': "signup",  # Sets the current page
        'loggedin': False  # Don't show the logout link
    }

    # Define the SignupForm
    form = SignupForm(request.form)
    # Validate and then create userdata
    if request.method == "POST":
        if form.validate():
            # Take form data
            email = form.email.data
            password = form.password.data
            company = form.company.data
            contact = form.contact.data
            userdata = {
                'username': email,
                'email': email,
                'password': password,
                'company': company,
                'contact': contact
            }

            # Create user
            user = User()
            user.config = app.config
            result = user.createUser(userdata, g.rdb_conn)
            # Check results for success or failure
            if result == "exists":
                flash('User already exists.', 'danger')
            elif result is not False:
                try:
                    stathat.ez_count(
                        app.config['STATHAT_EZ_KEY'],
                        app.config['ENVNAME'] + ' User Signup', 1)
                except:
                    pass
                print("/signup - New user created")
                cdata = cookies.genCdata(result, app.config['SECRET_KEY'])
                data['loggedin'] = True
                flash('You are signed up.', 'success')

                # Generate confirmation token
                generate_confirmation_token(email, result, time.time())

                # Build response
                resp = make_response(redirect(url_for('member.dashboard_page')))
                timeout = int(time.time()) + int(app.config['COOKIE_TIMEOUT'])
                # Set the cookie secure as best as possible
                resp.set_cookie(
                    'loggedin', cdata, expires=timeout, httponly=True)
                return resp
        else:
            stathat.ez_count(
                app.config['STATHAT_EZ_KEY'],
                app.config['ENVNAME'] + ' False User Signup', 1)
            print("/signup - False user creation")
            flash('Form is not valid.', 'danger')

    # Return Signup Page
    return render_template('user/signup.html', data=data, form=form)