Ejemplo n.º 1
0
def create_user():
    form = SignupForm()
    if form.validate() is False:
        return make_response(jsonify(form.errors), 400)
    else:
        if (User.query.filter_by(email=form.email.data).count() > 0):
            return Response(dictionary()["email_already_exists"], status=400, mimetype='application/json')

        try:
            confirmation_code = _gen_confirmation_code(form.email.data)
            user = User(
                fullname=form.fullname.data,
                email=form.email.data,
                password=sha512(form.password.data),
                confirmation_code=confirmation_code,
                agree_mailer=form.agree_mailer.data
            )
            db.session.add(user)
            db.session.commit()
        except:
            return Response(dictionary()["Sorry, an unexpected error has occured. Please try again"], status=500, mimetype='application/json')

        user_srl = user.serialize()
        send_confirmation(user)

        message = dictionary()["check_your_inbox"] + ' ' + user.email

        return Response(message, status=200, mimetype='application/json')
Ejemplo n.º 2
0
Archivo: views.py Proyecto: shynp/ican
def signup():
    form = SignupForm()
    form.university.choices = [(u.id,u.name) for u in University.query.all()]
    if form.validate_on_submit():
        userTest = User.query.filter_by(email=form.email.data).first()
        existingPhoneNumberTest = User.query.filter_by(phone=form.phone.data).first()
        if existingPhoneNumberTest:
            flash("There already exists a user with this phone number.")
            return redirect(url_for('.signup'))
        if not userTest:
            u = University.query.get(form.university.data)
            user = User(email=form.email.data,
                        name=form.name.data,
                        university=u,
                        bio=form.bio.data,
                        password=form.password.data,
                        user_role = "mentor",
                        phone=form.phone.data)
            db.session.add(user)
            db.session.commit()
            login_user(user)
            return redirect(url_for('.index'))
        else:
            flash("This Username is already in use.")
            return redirect(url_for('.signup'))
    return render_template('mentor/signup.html', form = form)
Ejemplo n.º 3
0
def signup(request):
	'''注册动作'''
	errors = []
	signupform = SignupForm(auto_id=True)

	if request.method == 'POST':
		signupform = SignupForm(request.POST)
		if signupform.is_valid():
			# 获取form信息
			account = signupform.cleaned_data['account']
			password = signupform.cleaned_data['password']
			nickname = signupform.cleaned_data['nickname']
			address = signupform.cleaned_data['address']
			phone = signupform.cleaned_data['phone']
			ex_phone = signupform.cleaned_data['ex_phone']

			# TODO:创建数据库对象,写入数据库
			user = {
			'account':account,
			'nickname':nickname,
			'password':password,
			}
			print user

			return HttpResponseRedirect('/')

	return render_to_response(
		'customer/signup.html',
		{
		 'form' : signupform,
		},
		context_instance=RequestContext(request)
	)
Ejemplo n.º 4
0
def home(request, code=None):
	form = SignupForm(request.POST or None)
	if request.method == 'POST':
		if form.is_valid():
			signup = form.save()
			request.session['code'] = base36.base36encode(signup.pk)
						
			if code:
				try:
					signup_inviter = Signup.objects.get(pk=base36.base36decode(code.upper()))
					signup_inviter.invitees = F('invitees') + 1
					signup_inviter.save()
				except Exception, e:
					pass

			return redirect(reverse('launch_app_success'))
		else:
			# If user has signed up already, show the invite code
			try:
				signup = Signup.objects.get(email=form.data.get('email', ''))
				return render_to_response('launch/already_registered.html', {
					'code': base36.base36encode(signup.pk).lower()
				}, context_instance=RequestContext(request))
			except:
				pass
Ejemplo n.º 5
0
def setup():
    """Setup page, only accessible if no users exist"""
    # Try if database exists
    try:
        # If no user found in database, show form
        if db.session.query(User).count() < 1:
            form = SignupForm()
            # Passed form validation? continue
            if form.validate_on_submit():
                # Create user object and add it to database
                user = User(username = form.username.data, password = generate_password_hash(form.password.data), role = 3)
                db.session.add(user)
                db.session.commit()
                flash('Account created! You are now logged in!')
                # Log new user in
                login_user(user)
                return redirect(url_for('index'))
            return render_template('add.html', form = form)
        else:
            flash('Setup already completed.')
            return redirect(url_for('index'))
    # If not, let's create the database:
    except exc.OperationalError:
        db.create_all()
        return redirect(url_for('setup'))
Ejemplo n.º 6
0
def signup(request):
    print "request method: " + str(request.method)
    messages =[]
    if request.method == 'POST':
        signupForm = SignupForm(request.POST)
        if signupForm.is_valid():
            username = signupForm.cleaned_data['email']
            
            # validate that a user does not already exist with that email
            
            firstName = signupForm.cleaned_data['firstname']
            lastName = signupForm.cleaned_data['lastname']
            password = signupForm.cleaned_data['password']
            email = signupForm.cleaned_data['email']
            user = User.objects.create_user(username, email, password, first_name = firstName, last_name = lastName)
            user.save()
            
            messages.append('User added')
            user = authenticate(username=username, password=password)
            login(request, user)
           # reverse()
            #need to add something here to return the image
            return render(request, 'home.html',{'messages': messages})
        else:
            messages.append('Something was screwed up with the form, try again')
            return render(request, 'signup.html', {'messages': messages, 'signupForm': signupForm, 'loginForm': LoginForm})
    else:
        signupForm = SignupForm()
        loginForm = LoginForm()
        return render(request, 'signup.html',{'signupForm': signupForm,'loginForm': loginForm})
Ejemplo n.º 7
0
def signup(request):
    if request.method == 'POST':
        form = SignupForm(request.POST)
        if form.is_valid():
            user = User.objects.create_user( 
            email=form.cleaned_data['email'],
            password=form.cleaned_data['password'],
            )
            
            email           = form.cleaned_data['email']
            salt            = hashlib.sha1(str(random.random())).hexdigest()[:5]            
            activation_key  = hashlib.sha1(salt+email).hexdigest()            
            key_expires     = datetime.datetime.today() + datetime.timedelta(2)

            #get email
            user            = User.objects.get(email=email)

            # Create and save user profile                                                                                                                                  
            new_profile     = UserConfirmation(user=user, activation_key=activation_key, key_expires=key_expires)
            new_profile.save()

            # Send email with activation key
            email_subject   = 'Account confirmation'
            email_body      = "Hey %s, thanks for signing up. To activate your account, click this link within 48hours http://127.0.0.1:8000/confirm/%s" % (email, activation_key)
            from_email      = settings.EMAIL_HOST_USER
            send_mail(email_subject, email_body,from_email,[email], fail_silently=True)
            
            return HttpResponseRedirect('/registered/')
    else:

        form= SignupForm()
    return render(request,'accounts/signup.html',{'form':form},context_instance=RequestContext(request))
Ejemplo n.º 8
0
def signup():
    form = SignupForm()
    if form.validate_on_submit():
        return redirect(url_for('success'), code=200)
    return render_template('signup.html',
                           form=form,
                           template='form-template')
Ejemplo n.º 9
0
def signup():
    form = SignupForm()
    
    if g.is_logged_in is True:
        return redirect(url_for('profile'))
    
    if request.method == 'POST':
    
        if form.validate() == False:
            return render_template('signup.html', form=form)
        
        else:
            newuser = User(form.username.data, form.firstname.data, form.lastname.data, form.email.data, form.password.data, str(uuid.uuid1()))
            db.session.add(newuser)
            db.session.commit()
            
            session['email'] = newuser.email
            msg = Message('Confirm your email address - Flaskapp', sender='*****@*****.**', recipients=[newuser.email])
            msg.body = """
            Please follow the link below to verify your account:
            localhost:5000/email_confirmation/%s
            """ %(newuser.uuid)
            mail.send(msg)
            return redirect(url_for('profile'))
            
    elif request.method == 'GET':
        return render_template('signup.html', form=form)
Ejemplo n.º 10
0
def create_user():
    form = SignupForm()
    if form.validate() is False:
        return make_response(jsonify(form.errors), 400)
    else:
        if (User.query.filter_by(email=form.email.data).count() > 0):
            return Response(dictionary()["email_already_exists"],
                            status=400,
                            mimetype='application/json')

        try:
            confirmation_code = _gen_confirmation_code(form.email.data)
            user = User(fullname=form.fullname.data,
                        email=form.email.data,
                        password=sha512(form.password.data),
                        confirmation_code=confirmation_code,
                        agree_mailer=form.agree_mailer.data)
            db.session.add(user)
            db.session.commit()
        except:
            return Response(
                dictionary()
                ["Sorry, an unexpected error has occured. Please try again"],
                status=500,
                mimetype='application/json')

        user_srl = user.serialize()
        send_confirmation(user)

        message = dictionary()["check_your_inbox"] + ' ' + user.email

        return Response(message, status=200, mimetype='application/json')
Ejemplo n.º 11
0
def signup():
    form = SignupForm()
    if request.method == 'GET':

        return render_template('signup.html', form=form)
    elif request.method == 'POST':
        if form.validate_on_submit():
            if User.query.filter_by(email=form.email.data).first():
                return "Email address already exists"
            else:
                newuser = User(form.email.data, form.password.data,
                               form.username.data)
                db.session.add(newuser)
                db.session.commit()
                login_user(newuser)
                new_user = {
                    'id': newuser.id,
                    'username': form.username.data,
                    'password': form.password.data,
                    'email': form.email.data,
                    'following': [],
                    'messages': []
                }
                users.append(new_user)
                return json2html.convert(json={'user created': users})
        else:
            return "Form didn't validate"
Ejemplo n.º 12
0
def register():
    form = SignupForm()
    if request.method == 'POST' and form.validate():
        user_per_email = User.objects(email=form.email.data)
        user_per_username = User.objects(username=form.username.data)
        if user_per_email:
            form.errors['email'] = ['Email is already taken.']
        elif user_per_username:
            form.errors['username'] = ['Username is already taken.']
        else:
            user = User(email=form.email.data, username=form.username.data)
            user.set_password(form.password.data)
            user.save()
            login_user(user)
            analytics.identify(str(user.id), {'email': str(user.email)})
            analytics.track(str(user.id), 'Registered (srv)')
            return redirect('/data')

    for field, errors in form.errors.items():
        # type(errors)
        for error in errors:
            flash(u"Error in %s  - %s" % (
                getattr(form, field).label.text, error))

    return render_template('users/user.html', form=form)
Ejemplo n.º 13
0
def signup(request):
    form = SignupForm(request.POST)
    valid_form = form.is_valid()
    token_key = None
    user_details = {}

    if valid_form:
        user = form.save()
        token_key = Token.objects.get(user=user).key
        logger.info("Signup Success: u:{0} e:{0}".format(
            user.username, user.email))

        key = _generateEmailConfirmationKey(user.email)
        timeout = _emailConfirmationKeyTimeout()
        cache.set(key, user.pk, timeout)

        # TODO(connor): remove hard-coded url: https://github.com/SanaMobile/sana.protocol_builder/issues/325
        env = templater.get_environment("authentication", "templates")
        template = env.get_template("confirmation_email.html")
        body = template.render(
            url="https://sanaprotocolbuilder.me/confirm_email/{0}".format(key))
        send_email.delay(user.email,
                         "Account Confirmation for Sana Protocol Builder",
                         body)
        user_details = _getUserDetails(user)
    else:
        logger.info("Signup Failed: {0}".format(_flattenFormErrors(form)))

    return JsonResponse({
        'success': valid_form,
        'errors': form.errors,
        'token': token_key,
        'user': user_details,
    })
Ejemplo n.º 14
0
def signup():
    form = SignupForm()

    if form.validate_on_submit():
        user = User.query.filter_by(username=form.username.data).first()
        if user is None:
            user = User(username=form.username.data)
            db.session.add(user)
            db.session.commit()
            session['known'] = False
        else:
            session['known'] = True
        session['username'] = form.username.data
        form.username.data = ''
        return redirect(url_for('index'))
        '''session['email'] = form.email.data
        session['password'] = form.password.data
        session['repeatpass'] = form.repeatpass.data
        session['voice'] = form.voice.data
        session['mp3'] = form.mp3.data
        session['info'] = form.info.data'''

    return render_template('signup.html',
                           form=form,
                           username=session.get('username'),
                           email=session.get('email'),
                           password=session.get('password'),
                           repeatpass=session.get('repeatpass'),
                           voice=session.get('voice'),
                           info=session.get('info'),
                           known=session.get('known', False))
Ejemplo n.º 15
0
def signup(request):
    if request.method == 'POST':
        form = SignupForm(request.POST)
        jdict = {'status': 'error', 'message': 'Invalid E-Mail Address'}
        if form.is_valid():
            jdict = {'status': 'ok'}
            tracking = form.cleaned_data['tracking']
            if tracking is None:
                tracking = 'unknown'

            optin = Optin.objects.create(email=form.cleaned_data['email'],
                                         signup_location=tracking,
                                         skey=Optin.generate_optin_key())
            for l in List.objects.all():
                value = request.POST.get('list%d' % l.id, '')
                if value == 'ON':
                    optin.bulk_lists.add(l)
                optin.save()

            optin.send_email(request.get_host())

        return http.HttpResponse(json.dumps(jdict),
                                 mimetype='application/javascript')

    raise http.Http404
Ejemplo n.º 16
0
def register_account():
    """Show signup form and process registration."""

    form = SignupForm()

    if form.validate_on_submit():
        username = form.username.data
        first_name = form.first_name.data
        last_name = form.last_name.data
        description = form.description.data
        email = form.email.data
        password = form.password.data
        image_url = form.image_url.data

        new_user = User.register(username, first_name, last_name, description,
                                 email, password, image_url or None)

        db.session.add(new_user)

        # put this in a try/ except IntegrityError
        # render the form again with an error message of "username already taken"
        try:

            db.session.commit()
            do_login(new_user)

            flash("You are signed up and logged in.")
            return redirect(f'/cafes')

        except IntegrityError:
            flash("Username already taken.")
            render_template('auth/signup-form.html', form=form)

    return render_template('auth/signup-form.html', form=form)
Ejemplo n.º 17
0
def signup():
    form = SignupForm()
    if form.validate_on_submit():
        username = form.username.data
        email = form.email.data

        if User.query(User.username == username).get() is not None:
            form.username.errors.append('That username already exists')
            return flask.render_template('signup.html', form=form)

        if User.query(User.email == email).get() is not None:
            form.email.errors.append(
                'That email address is already registered')
            return flask.render_template('signup.html', form=form)

        user = create_user(form)

        if user is None:
            flask.flash("Failed to create account; please try again.",
                        'warning')
            return flask.render_template('signup.html', form=form)

        # Add user info to session
        user_key_str = user.key.urlsafe()
        session['username'] = username
        session['user_key_str'] = user.key.urlsafe()

        flask.flash("Successfully created account, {0}!".format(username))
        return flask.redirect(flask.url_for('index'))
    return flask.render_template('basic_form.html',
                                 header='Sign up',
                                 form=form)
Ejemplo n.º 18
0
def signup():
    """Handle User Registration and Display form"""

    form = SignupForm()

    if form.validate_on_submit():
        username = form.username.data
        password = form.password.data
        email = form.email.data
        image = form.img_url.data or User.img_url.default.arg

        new_user = User.register(username, password, email, image)
        db.session.add(new_user)

        try:
            db.session.commit()
        except IntegrityError as err:
            db.session.rollback()
            # Check user input for errors and append to errors
            if "Key (email)" in str(err):
                form.email.errors.append("Email taken, please pick another")
            elif "Key (username)" in str(err):
                form.username.errors.append(
                    "Username taken, please pick another")
            return render_template("/users/signup.html", form=form)

        # ADD USER TO SESSION
        session[CURR_USER] = new_user.id
        flash("Thank you for registering", "warning")
        return redirect(f"/users/{new_user.id}")

    return render_template('/users/signup.html', form=form)
Ejemplo n.º 19
0
def editprofile():

  if 'email' not in session:
    return redirect(url_for('signin'))

  user = User.query.filter_by(email = session['email']).first()

  if user is None:
    return redirect(url_for('login'))
  elif request.method == 'GET':
	form = SignupForm(obj=user)
	return render_template('editprofile.html', form=form)
  elif request.method == 'POST':
		form = EditSignupForm()
		if form.validate() == False:
		  return render_template('editprofile.html', form=form)
		else:   
		  #newuser = User(form.firstname.data, form.lastname.data, form.email.data, form.password.data)
		  user.firstname = form.firstname.data
		  user.lastname = form.lastname.data
		  if form.password.data != '':
			user.password = form.password.data
		  db.session.commit() 
		  flash('Profile updated successfully.')
		  #session['email'] = newuser.email
		  return redirect(url_for('editprofile'))
Ejemplo n.º 20
0
def signup_view(request):
    if request.method == "POST":
        form = SignupForm(request.POST)
        if form.is_valid():
            username = form.cleaned_data['username']
            name = form.cleaned_data['name']
            email = form.cleaned_data['email']
            password = form.cleaned_data['password']
            #saving data to DB
            user = UserModel(name=name,
                             password=make_password(password),
                             email=email,
                             username=username)
            user.save()
            #sg = sendgrid.SendGridAPIClient(apikey='sendgrid_key')
            #from_email = Email("*****@*****.**")
            #to_email = Email(email)
            # subject = "Susseccfully Signed Up"
            #content = Content("text/plain", "Welcome to Social Kids")
            #mail = Mail(from_email, subject, to_email, content)
            #response = sg.client.mail.send.post(request_body=mail.get())
            #print(response.status_code)

            return render(request, 'success.html')
        else:
            error = 'Error.Sign Up again!'
            return render(request, 'index.html', {'text': error})

    else:
        form = SignupForm()
        return render(request, 'index.html', {'signup_form': form})
Ejemplo n.º 21
0
def signup():
    form = SignupForm()
    form.university.choices = [(u.id, u.name) for u in University.query.all()]
    if form.validate_on_submit():
        student = User.query.filter_by(email=form.email.data).first()
        if student is None:
            u = University.query.get(form.university.data)
            student = User(email=form.email.data,
                           name=form.name.data,
                           university=u,
                           password=form.password.data,
                           phone=form.phone.data,
                           user_role='student')
            general_tasks = GeneralTask.query.all()
            for gt in general_tasks:
                if (gt.university_id == u.id) or (gt.university_id is None):
                    new_task = Task(title=gt.title,
                                    description=gt.description,
                                    deadline=gt.deadline,
                                    user_id=student.id)
                    student.tasks.append(new_task)

            student.match_with_mentor()
            db.session.add(student)
            db.session.commit()
            login_user(student)
            return redirect(url_for('.index'))
        else:
            # throw some error and rerender form
            return redirect(url_for('.index'))
    return render_template('student/signup.html', form=form)
Ejemplo n.º 22
0
def register(request):
    """
    A view for registering a new user
    """

    if request.method == 'POST': 
        form = SignupForm(request.POST) 
        if form.is_valid(): 
            # create the user account itself
            # (it will be inactive) 
            user = form.create_user()
            # send email with verification code 
            utils.send_email_verification_email(request, user)
            # re-direct to information message 
            msg = """
            Thanks for registering! A verification email with further 
            instructions has been sent. 
            """
            messages.success(request, msg)
            return redirect('url_login')
    else:
        form = SignupForm()

    return render_to_response('registration/register.html', 
                              { 'form' : form }, 
                  context_instance=RequestContext(request)) 
Ejemplo n.º 23
0
def apply():
    """
    The '/apply route directs a user that is not logged in to the application page.
    """

    # If the user is logged into the system, direct them to their dashboard
    if 'username' in session:
        if session['type_of_user'] == 'user':
            return redirect(url_for('dashboard'))
        if session['type_of_user'] == 'applicant':
            return redirect(url_for('dashboard_applicant'))
        if session['type_of_user'] == 'superuser':
            return redirect(url_for('dashboard_superuser'))

    form = SignupForm()

    if request.method == 'POST':
        if form.validate():
            new_user = Applicant(form.role.data, form.first_name.data,
                                 form.last_name.data, form.email.data,
                                 form.phone.data, form.credit_card.data,
                                 form.user_id.data, form.password.data)
            session['username'] = form.user_id.data
            session['type_of_user'] = '******'
            session['role'] = form.role.data
            return redirect(url_for('dashboard_applicant'))
        else:
            flash(
                'Applicant submission is invalid. Please check that all fields are filled correctly.'
            )
            return render_template('application.html', form=form)
    elif request.method == 'GET':
        return render_template('application.html', form=form)
Ejemplo n.º 24
0
def signup(title='SignUp'):
    form = SignupForm()
    if form.validate_on_submit() == True:
        flash(f'Account created for {form.username.data}')
        return redirect(url_for('index'))
    else:
        return render_template('signup.html', form=form, title='Intial')
Ejemplo n.º 25
0
def signup():
    """
        Signup, creates a new user
        if the session is logged in return to index
        when form is valided if the passwords match and the password length is
        greater than 8 characters then create the password hash
        if it is not the throw errors

        try to create the user object and catch all expected errors.
    """
    form = SignupForm()

    error = None

    if session.get('logged_in'):
        return redirect(url_for('index'))

    if form.validate_on_submit():
        if form.password.data == form.password2.data and len(form.password.data) >= 8:
            pw_hash = generate_password_hash(form.password.data)
            try:
                user = User(email = form.email.data, alias = form.alias.data, password = pw_hash)
                user.save()
                return redirect(url_for('login'))
            except ValidationError:
                error = 'Email is not an email'
            except errors.NotUniqueError:
                error = 'Email or username is already in use'
        else:
            if len(form.password.data) < 8:
                error = 'Password too short'
            else:
                error = 'Passwords do not match'

    return render_template('signup.html', form = form, err = error)
Ejemplo n.º 26
0
def signup_view(request):
	request.JSON = JsonRequest(request)
	data = {
		'username' : request.JSON.get('username', False),
		'email' : request.JSON.get('email', False),
		'password' : request.JSON.get('password', False),
		'first_name' : request.JSON.get('first_name', False),
		'last_name' : request.JSON.get('last_name', False),
	}
	response = Response()
	form = SignupForm(data)
	if form.is_valid():
		#creating user
		user = User.objects.create_user(data['username'], data['email'], data['password']);
		user.first_name = data['first_name']
		user.last_name = data['last_name']
		user.save()

		#creating profile
		userProfile = UserProfile(user_id=user.id)
		userProfile.save()

		response.add_message('success', 'Usuario registrado correctamente')
	else:
		response.add_message('error', 'Error al registrar el usuario')
		response.read_form(form.errors);

	return HttpResponse(response.result('json'), mimetype='application/json')
Ejemplo n.º 27
0
def signup():
    '''
    Signup page
    '''
    # Redirigue to login if these logged in
    if 'user' in session:
        return redirect(url_for('dashboard'))
    form = SignupForm()
    if form.validate_on_submit():
        if not User.query.filter_by(email=form.email.data).all():
            my_user = User()
            form.populate_obj(my_user)
            # Enable user
            my_user.is_active = True
            # Encrypt password
            my_user.password = generate_password_hash(form.password.data)
            db.session.add(my_user)
            try:
                # Save new User
                db.session.commit()
                # Informamos al usuario
                flash('¡Cuenta creada! Entra cuando quieras.', 'success')
                return redirect(url_for('login'))
            except BaseException:
                db.session.rollback()
                flash('¡Ups! Algo ha pasado. ¿Puedes volver a intentarlo?.',
                      'danger')
        else:
            flash('El email ya esta siendo utilizado.', 'danger')
    return render_template('web/signup.html', form=form)
Ejemplo n.º 28
0
def signup(request, template="accounts/account_signup.html"):
    """
    Signup form.
    """
    if request.method == "POST":
        form = SignupForm(request.POST)
        if form.is_valid():
            try:
                new_user = form.save()
                info(request, _("Successfully signed up"))
                # from django.contrib.auth import authenticate
                auth_login(request, new_user)
                return redirect("enterprise.projects")
            except forms.ValidationError as e:
                error(request, e.message)
            # if not new_user.is_active:
            #    if settings.ACCOUNTS_APPROVAL_REQUIRED:
            #        send_approve_mail(request, new_user)
            #        info(request, _("Thanks for signing up! You'll receive "
            #                        "an email when your account is activated."))
            #    else:
            #        send_verification_mail(request, new_user, "signup_verify")
            #        info(request, _("A verification email has been sent with "
            #                        "a link for activating your account."))
            #    return redirect(next_url(request) or "/")
            # else:
            #    info(request, _("Successfully signed up"))
            #    auth_login(request, new_user)
            #    return login_redirect(request)
    else:
        form = SignupForm()

    context = {"form": form, "title": _("Sign up")}
    return render(request, template, context)
Ejemplo n.º 29
0
 def testValidForm(self):
     form = SignupForm(self.f_postal_address_form, self.f_postal_address_form, data=self.f_valid_form_data)
     self.assertEqual(form.is_valid(), True)
     "Here, it must not raise..."
     form.save()
     user = User.objects.get(username=self.f_valid_form_data['username'])
     user.delete()
Ejemplo n.º 30
0
def signup():
    form = SignupForm()

    error = None

    if session.get('logged_in'):
        return redirect(url_for('index'))
    if form.validate_on_submit():
        if form.password.data == form.password2.data and len(form.password.data) >= 8:
            pw_hash = generate_password_hash(form.password.data)
            try:
                user = User(email = form.email.data, alias = form.alias.data, password = pw_hash)
                user.save()
                return redirect(url_for('login'))
            except ValidationError:
                error = 'Email is not an email'
            except errors.NotUniqueError:
                error = 'Email or username is already in use'
        else:
            if len(form.password.data) < 8:
                error = 'Password too short'
            else:
                error = 'Passwords do not match'

    return render_template('signup.html', form = form, err = error)
Ejemplo n.º 31
0
def signup():
    form = SignupForm()

    if request.method == "POST":
        if form.validate() == False:
            return render_template("signup.html", form=form)
        else:
            g.newuser = User(
                form.firstname.data,
                form.lastname.data,
                form.phone.data,
                form.country_id.data,
                form.email.data,
                form.password.data,
            )
            db_session.add(g.newuser)
            db_session.commit()

            session["lastname"] = g.newuser.lastname
            session["firstname"] = g.newuser.firstname
            session["phone"] = g.newuser.phone
            session["country_id"] = g.newuser.country_id
            if g.newuser.country_id == 1:
                session["country_id"] = "Nigerian"
            else:
                session["country_id"] = "Foreigner"
            session["email"] = g.newuser.email

            return redirect(url_for("wallet"))

    elif request.method == "GET":
        return render_template("signup.html", form=form)
Ejemplo n.º 32
0
def signup_user():
    """ Registers user """

    form = SignupForm()
    if form.validate_on_submit():
        username = form.username.data
        first_name = form.first_name.data
        last_name = form.last_name.data
        description = form.description.data
        email = form.email.data
        password = form.password.data
        image_url = form.image_url.data

        user = User.register(username=username,
                             first_name=first_name,
                             last_name=last_name,
                             description=description,
                             email=email,
                             password=password,
                             image_url=image_url)

        db.session.add(user)
        db.session.commit()

        do_login(user)

        flash('You are signed up and logged in.')

        return redirect('/cafes')
    else:
        return render_template('auth/signup-form.html', form=form)
Ejemplo n.º 33
0
def signup():

    conversion = False

    if 'email' in session:
        #user is regular, converted, or guest type
        user = User.query.filter_by(email=session['email']).first()
        if user.account_type != ACCOUNT_TYPE_GUEST:
            return redirect(url_for('game'))
        else:
            conversion = True

    signup = SignupForm()

    if request.method == "GET":
        return render_template('signup.html', form=signup, feedback='')
    else:
        if signup.validate() == False:
            return render_template('signup.html', form=signup, feedback='')
        else:
            try:
                if conversion == False:
                    newuser = User(signup.username.data, signup.email.data,
                                   ACCOUNT_TYPE_REGULAR, signup.password.data)
                    db.session.add(newuser)
                    db.session.commit()
                    session['email'] = newuser.email
                else:
                    #update database
                    user.username = signup.username.data
                    user.email = signup.email.data
                    user.account_type = ACCOUNT_TYPE_CONVERTED
                    user.pwd_hash = user.generate_password_hash(
                        signup.password.data)
                    db.session.commit()
                    #remove old guest from session
                    session.pop('email', None)
                    #add new converted user to session
                    session['email'] = user.email
                return redirect(url_for('game'))
            except IntegrityError:
                db.session.rollback()
                #username or email is not unique
                error_msg = ""
                if (User.query.filter_by(
                        username=newuser.username).first()) is not None:
                    error_msg += "Username " + newuser.username + " is already taken. "
                if (User.query.filter_by(
                        email=newuser.email).first()) is not None:
                    error_msg += "Only one account per email address is permitted."
                return render_template('signup.html',
                                       form=signup,
                                       feedback=error_msg)
            except Exception as e:  #except:
                #other error
                db.session.rollback()
                error_msg = "Unknown error." + str(e)
                return render_template('signup.html',
                                       form=signup,
                                       feedback=error_msg)
Ejemplo n.º 34
0
def signup_user():
    """Handle form for signing up users. On successful submit,
    adds user, logs them in, and redirects them to cafe list
    with flashed message. Or renders form.
    """

    form = SignupForm()

    if form.validate_on_submit():
        username = form.username.data

        # checks if username is already taken
        if User.query.filter_by(username=username).first():
            flash(f"{username} is already taken.")
            return render_template("/auth/signup-form.html", form=form)

        user = User.register(username=form.username.data,
                             first_name=form.first_name.data,
                             last_name=form.last_name.data,
                             description=form.description.data,
                             email=form.email.data,
                             image_url=form.image_url.data,
                             password=form.password.data)

        db.session.add(user)
        db.session.commit()

        do_login(user)
        flash(f"You are signed up and logged in.", "success")
        return redirect("/cafes")

    else:
        return render_template("/auth/signup-form.html", form=form)
Ejemplo n.º 35
0
def signup(request):
    if request.user.is_authenticated():
        return HttpResponseRedirect('/search')

    if request.method == 'POST':
        form = SignupForm(request.POST or None)
        # form = RegisterUserForm(request.POST)
        if request.POST.get('is_trainer', ''):
            is_trainer = True
        else:
            is_trainer = False
        if form.is_valid():
            user = User.objects.create_user(email=request.POST.get('email', ''), username=request.POST.get('username', ''), password=request.POST.get('password', ''), first_name=request.POST.get('first_name', ''), last_name=request.POST.get('last_name', ''), is_trainer=is_trainer)
            if user.is_active:
                user_auth = authenticate(username=request.POST.get('username', ''), password=request.POST.get('password', ''))
                if user_auth is not None:
                    login(request, user_auth)
                    if is_trainer:
                        return HttpResponseRedirect('/signup/step-2')
                    else:
                        return HttpResponseRedirect('/search/')
                else:
                    return HttpResponseRedirect('/')

            #return HttpResponseRedirect('/continue/')
            else:
                return HttpResponseRedirect('/')
    # form = userCreationForm()
    ctx = {}
    form = SignupForm()
    ctx['form'] = form
    return render_to_response('web/signup3.html', ctx, context_instance=RequestContext(request))
Ejemplo n.º 36
0
def signup():
    try:
        form = SignupForm()
        if form.validate_on_submit():
          print "I am here"
          the_user = session.query(User).filter_by(mobilenumber = form.mobile.data).first()
          if the_user:
            flash("User with same mobile number already exist")
          else:
            user = User(name = form.name.data,
                   email = form.email.data,
                   password = generate_password_hash(form.password.data),
                   mobilenumber = form.mobile.data)
            session.add(user)
            session.commit()
            token = generate_confirmation_token(user.email)
            confirm_url = url_for('confirm_email',token = token,_external = True)
            html = render_template('activate.html',confirm_url = confirm_url)
            subject = "Please confirm your email {}.".format(user.name)
            send_email(user.email,subject,html)
            flash("Thank you for Registering {}.".format(user.name))
            flash("We have sent you a confirmation email to your registered email and its valid for 1 hour")
            flash("It may take 1 minute to arrive")
            flash("Please click on confirmation link sent in mail")
            return redirect(url_for('confirm'))

        return render_template('signup.html',form = form)
    except Exception as e:
        print e
Ejemplo n.º 37
0
def register():
    form = SignupForm()
    if request.method == 'POST' and form.validate():
        user_per_email = User.objects(email=form.email.data)
        user_per_username = User.objects(username=form.username.data)
        if user_per_email:
            form.errors['email'] = ['Email is already taken.']
        elif user_per_username:
            form.errors['username'] = ['Username is already taken.']
        else:
            user = User(email=form.email.data, username=form.username.data)
            user.set_password(form.password.data)
            user.save()
            login_user(user)
            analytics.identify(str(user.id), {'email': str(user.email)})
            analytics.track(str(user.id), 'Registered (srv)')
            return redirect('/data')

    for field, errors in form.errors.items():
        # type(errors)
        for error in errors:
            flash(u"Error in %s  - %s" %
                  (getattr(form, field).label.text, error))

    return render_template('users/user.html', form=form)
Ejemplo n.º 38
0
def register():
    form = SignupForm()
    if form.validate_on_submit():
        email = request.form['email']
        password = request.form['password']

        # create password hash
        password_hash = flask_bcrypt.generate_password_hash(password)

        # prepare user
        user = Users(email=email, password=password_hash)

        try:
            db.session.add(user)
            db.session.commit()
            if login_user(user, remember='no'):
                flash('Account Created & Logged in')
                return redirect('/')
            else:
                flash('Unable to login')
        except:
            flash('Unable to register with given email address')
            current_app.logger.error('Error on registeration - possible duplicate emails')

    return render_template('/auth/register.html', form=form)
Ejemplo n.º 39
0
def signup_form():
    form = SignupForm()

    if form.validate_on_submit():
        flash("Thank you {} for signing up for the Goodwill of Delaware and Delaware County's Mobile Service!".format(escape(form.name.data)))
        return redirect(url_for('.index')) #warning: may need to change this redirect
    return render_template('login.html', form = form) #file name here, make sure to check if name changes
Ejemplo n.º 40
0
def signup_view(request):  #view for signup.html and all other invalid urls
    if request.method == "POST":
        form = SignupForm(request.POST)
        if form.is_valid():
            name = form.cleaned_data.get('name')
            username = form.cleaned_data.get('username')
            email = form.cleaned_data.get('email')
            password = form.cleaned_data.get('password')
            parentmail = form.cleaned_data.get('parentmail')
            user = User(
                name=name,
                username=username,
                email=email,
                password=make_password(password),
                parentmail=parentmail
            )  #make_password converts a string into hashcode with is one way encryption
            user.save()
            recipient_mail = email
            content_text = "Hey " + username + "!! Welcome to the Kids Zone, a social networking site for kids.You have successfully signed up!!"
            sending_mail(recipient_mail, content_text)
            token = SessionToken(user=user)
            token.create_token()
            token.save()
            response = redirect('/feed/')
            response.set_cookie(key='session_token', value=token.session_token)
            return response

    else:
        form = SignupForm()
    return render(request, 'signup.html', {'form': form})
Ejemplo n.º 41
0
def signup():
    form = SignupForm()
    if request.method = "POST":
        if form.validate() == FALSE:
            return render_template('signup.html', form=form)
        else:
            return "Success!"
Ejemplo n.º 42
0
def users():
    signup_form = SignupForm()
    if signup_form.validate_on_submit():
        first_name = signup_form.first_name.data
        last_name = signup_form.last_name.data
        email = signup_form.email.data
        password = signup_form.password.data
        phone = signup_form.phone.data

        authy_id = create_authy_user(email, phone)

        if authy_id and check_email_limit() and send_otp_email(authy_id):
            EmailLimit.increase_count(EmailLimit.query.get(1))

        user = User(first_name=first_name,
                    last_name=last_name,
                    email=email,
                    password=password,
                    phone=phone,
                    authy_id=authy_id)

        user = User.register(user)
        session['user_id'] = user.id
        # flash('User created. Please login')
        return redirect(f'/users/{user.id}')
    else:
        return render_template('signup.html', form=signup_form)
Ejemplo n.º 43
0
def show_signup_form():
    if current_user.is_authenticated:
        return redirect(url_for('index'))
    form = SignupForm()
    error = None
    if form.validate_on_submit():
        name = form.name.data
        email = form.email.data
        password = form.password.data
        # Comprobamos que no hay ya un usuario con ese email
        user = User.get_by_email(email)
        if user is not None:
            error = f'El email {email} ya está siendo utilizado por otro usuario'
        else:
            # Creamos el usuario y lo guardamos
            user = User(name=name, email=email)
            user.set_password(password)
            user.save()
            # Dejamos al usuario logueado
            login_user(user, remember=True)
            next_page = request.args.get('next', None)
            if not next_page or url_parse(next_page).netloc != '':
                next_page = url_for('index')
            return redirect(next_page)
    return render_template("signup_form.html", form=form, error=error)
Ejemplo n.º 44
0
def registration():
    form = SignupForm()
    if form.validate_on_submit():
        client = ClientMeta(os.environ.get("LDAP_SERVER"), verify_ssl=False)
        client.login(os.environ.get("LDAP_ADMIN"),
                     os.environ.get("LDAP_PASSWORD"))
        full_name = f"{form.first_name.data} {form.last_name.data}"
        client.user_add(a_uid=form.username.data,
                        o_givenname=form.first_name.data,
                        o_sn=form.last_name.data,
                        o_cn=full_name,
                        o_userpassword=form.password.data,
                        o_preferredlanguage="EN")
        if form.invite_code.data == INVITE_CODE_ENV:
            client.group_add_member(USER_GROUP_ENV, o_user=form.username.data)
        elif form.invite_code.data == ELEVATED_INVITE_CODE_ENV:
            client.group_add_member(ELEVATED_USER_GROUP_ENV,
                                    o_user=form.username.data)

        if os.environ.get("SLACK_ENABLED") == "true":
            try:
                data = {
                    "email": form.email.data,
                    "token": os.environ.get("SLACK_API_TOKEN"),
                    "set_active": "true"
                }
                requests.post(
                    f"https://{os.environ.get('SLACK_WORKSPACE')}.slack.com/api/users.admin.invite",
                    data=data)
            except Exception as e:
                logger.error(
                    f"Challenges sending slack invite to {form.email.data} - {e}"
                )
        return redirect("/success")
    return render_template("register.html", form=form)
Ejemplo n.º 45
0
def signup(request):
    form = SignupForm()
    if request.method == 'POST':
        form = SignupForm(request.POST)
        if form.is_valid():
            username = request.POST.get('username')
            password = request.POST.get('password')
            email = request.POST.get('email')
            user = User.objects.create_user(username, email, password)
            user.save()
            user = authenticate(username=username, password=password)
            if user is not None:
                if user.is_active:
                    login(request, user)
        response = HttpResponseRedirect(default_url)
        return response
            #session = do_login(username, password)
            #if session:
            #    sessid = session.key
            #    response = HttpResponseRedirect(default_url)
            #    response.set_cookie('sessid', sessid,
            #        domain=default_url, httponly=True,
            #        expires = session.expires,
            #    )
            #    return response
    return render(request, 'signup_form.html',{
            'form':form,
        })
Ejemplo n.º 46
0
def register():
    form = SignupForm()
    if form.validate_on_submit():
        name = request.form['username']
        email = request.form['email']
        password = request.form['password'].encode('utf-8')
        hash_password = bcrypt.hashpw(password, bcrypt.gensalt())
        print('paasword:', hash_password)
        cur = mysql.connection.cursor()
        cur.execute(
            "INSERT INTO signup (username, email, password) VALUES (%s,%s,%s)",
            (
                name,
                email,
                hash_password,
            ))
        mysql.connection.commit()
        session['username'] = request.form['username']
        session['email'] = request.form['email']
        flash(f' {form.username.data} Account created successfully', 'success')
        return redirect(url_for('createUser'))
    return render_template('register.html',
                           title='Register',
                           form=form,
                           front_image=os.path.join(
                               app.config['UPLOAD_FOLDER'], 'luis.gif'))
Ejemplo n.º 47
0
def signup():
    """
    Handles user signup.
    GET Displays signup form
    POST Creates/Adds new user to DB and redirects home
    """

    form = SignupForm()

    if form.validate_on_submit():
        user_data = generate_user_data(form)

        try:
            user = User.signup(user_data)
            add_and_commit(user)
            grocery_list = GroceryList.create(user.id)
            add_and_commit(grocery_list)

        except IntegrityError as error:
            db.session.rollback()
            if (f'(username)=({user.username}) already exists') in error._message():
                flash("Username already taken", 'danger')
            elif (f'(email)=({user.email}) already exists') in error._message():
                flash("Email already taken", 'danger')

            return render_template('users/signup.html', form=form)

        do_login(user)

        return redirect("/")

    else:
        return render_template('users/signup.html', form=form)
Ejemplo n.º 48
0
def signup():
	#if('email' in session):
		#return redirect(url_for('home'))
	if is_loggedin():
		return redirect(url_for('home'))

	form = SignupForm() #instantiate singupForm object
	if request.method == 'POST':
		if form.validate() == False:
			return render_template("signup.html",form=form)
		else:
			account_name=User.make_valid_account_name(form.account_name.data.strip())
			account_name=User.make_unique_account_name(form.account_name.data.strip()) # get unique account_name to eliminate the duplicate
			newuser = User(account_name, form.first_name.data, form.last_name.data, form.email.data, form.password.data)
			db.session.add(newuser) #add returned data to user table in the database 
			db.session.commit()
			# make user follow himself 
			db.session.add(newuser.follow(newuser))
			db.session.commit()

			#session['email']=newuser.email
			login_user(newuser)
			next = request.args.get('next')
			#if not is_safe_url(next):
				#return abort(400)

			return redirect(next or url_for('home'))

	elif request.method == 'GET':
		return render_template('signup.html', form=form) #pass form to signup.html  
Ejemplo n.º 49
0
def signup():
    form = SignupForm()
    if form.validate_on_submit():
        username = form.username.data
        email = form.email.data

        if User.query(User.username == username).get() is not None:
            form.username.errors.append('That username already exists')
            return flask.render_template('signup.html', form=form)

        if User.query(User.email == email).get() is not None:
            form.email.errors.append('That email address is already registered')
            return flask.render_template('signup.html', form=form)

        user = create_user(form)

        if user is None:
            flask.flash("Failed to create account; please try again.", 'warning')
            return flask.render_template('signup.html', form=form)

        # Add user info to session
        user_key_str = user.key.urlsafe()
        session['username'] = username
        session['user_key_str'] = user.key.urlsafe()

        flask.flash("Successfully created account, {0}!".format(username))
        return flask.redirect(flask.url_for('index'))
    return flask.render_template('basic_form.html', header='Sign up', form=form)
Ejemplo n.º 50
0
def signup():
    """For GET requests, display the login form. For POSTS, login the current user
    by processing the form."""

    form = SignupForm()
    if form.validate_on_submit():
        if form.password.data != form.retype_password.data:
            flash('Invalid Password')
            return render_template("signup.html", form=form)

        user = User.query.get(form.email.data)
        if user :
            flash('User already exists')
            return render_template("signup.html", form=form)          

        user = User()
        user.email = form.email.data
        user.password = bcrypt.generate_password_hash(form.password.data)
        user.first_name = form.first_name.data
        user.last_name = form.last_name.data
        user.contact_no = form.contact_no.data

        # Adding Zero Balance to user
        user.balance = Balance()
        user.balance.amount = 0.0

        db.session.add(user)
        db.session.commit()

        return redirect(url_for("login"))

    return render_template("signup.html", form=form)
Ejemplo n.º 51
0
def signup():
    form = SignupForm() 
    
    #if 'userid' in session:
     #   return redirect(url_for('set_profile'))
    
    if request.method == 'POST':
        if form.validate() == False:
            return render_template('signup.html',form = form)
        else:            
            verification_code = random.randint(1,10000)
            
            userlogin = Peer_UserStatus_Model(form.username.data, form.email.data, form.password.data,verification_code,0)            
            db.session.add(userlogin)
            db.session.commit()
            usersignup = User_Info_Model(form.username.data,'offline')
            db.session.add(usersignup)
            db.session.commit()
            session['userid'] = userlogin.username
            session['email'] = userlogin.email
            mail(str(verification_code))
            return render_template('verification_mail_confirmation.html')   
            
                    
    elif request.method == 'GET':
        return render_template('signup.html',form = form)   
Ejemplo n.º 52
0
def register():
    error = None
    form = SignupForm()
    if request.method == 'POST':
        if request.form.get('submit') == 'Cancel':
            return redirect(url_for('UsersFiles.login'))
        
        elif form.validate_on_submit():
            try: 
                user = Users(
                    user_name=form.user_name.data,
                    user_password=form.user_password1.data 
                )
                db.create_all()
                db.session.add(user)
                db.session.commit()
                Log("SIGNUP")

                login_user(user)
                Log("LOGIN")
                # add hash
                addCompHash(str(current_user))
                flash('You are just login!')
                return redirect(url_for('HomeFiles.home'))

            except:
                error = 'Signup Fail'
                db.session.rollback()
                Log("SIGNUP FAIL")
            #     trace= get_current_traceback(skip=1, show_hidden_frames=True,
            # ignore_system_exceptions=False)
            # return redirect(url_for('ShareFiles.stack_trace', trace=trace))
            

    return render_template('register.html', form = form, error = error) 
Ejemplo n.º 53
0
Archivo: views.py Proyecto: shynp/ican
def signup():
    form = SignupForm()
    form.university.choices = [(u.id, u.name) for u in University.query.all()]
    if form.validate_on_submit():
        student = User.query.filter_by(email=form.email.data).first()
        existingPhoneNumberTest = User.query.filter_by(phone=form.phone.data).first()
        if existingPhoneNumberTest:
            flash("There already exists a user with this phone number.")
            return redirect(url_for('.signup'))
        if student is None:
            u = University.query.get(form.university.data)
            student = User(email=form.email.data, name=form.name.data,
                           university=u, password=form.password.data,
                           phone=form.phone.data,
                           user_role='student')
            general_tasks = GeneralTask.query.all()
            for gt in general_tasks:
                if (gt.university_id == u.id) or (gt.university_id is None):
                    new_task = Task(title=gt.title, description=gt.description,
                                    deadline=gt.deadline, user_id=student.id)
                    student.tasks.append(new_task)

            student.match_with_mentor()
            db.session.add(student)
            db.session.commit()
            login_user(student)
            return redirect(url_for('.index'))
        else:
            # throw some error and rerender form
            return redirect(url_for('.index'))
    return render_template('student/signup.html', form=form)
Ejemplo n.º 54
0
def signup(request):
    form = SignupForm(request.POST)
    valid_form = form.is_valid()
    token_key = None
    user_details = {}

    if valid_form:
        user = form.save()
        token_key = Token.objects.get(user=user).key
        logger.info("Signup Success: u:{0} e:{0}".format(user.username, user.email))

        key = _generateEmailConfirmationKey(user.email)
        timeout = _emailConfirmationKeyTimeout()
        cache.set(key, user.pk, timeout)

        # TODO(connor): remove hard-coded url: https://github.com/SanaMobile/sana.protocol_builder/issues/325
        env = templater.get_environment("authentication", "templates")
        template = env.get_template("confirmation_email.html")
        body = template.render(url="https://sanaprotocolbuilder.me/confirm_email/{0}".format(key))
        send_email.delay(user.email, "Account Confirmation for Sana Protocol Builder", body)
        user_details = _getUserDetails(user)
    else:
        logger.info("Signup Failed: {0}".format(_flattenFormErrors(form)))

    return JsonResponse({
        'success': valid_form,
        'errors': form.errors,
        'token': token_key,
        'user': user_details,
    })
Ejemplo n.º 55
0
def signup():
	form= SignupForm()

	if form.validate_on_submit():
	# check if email already exists
		email_exists = dbsession.query(User).filter_by(email = form.email.data).first()
	
		if email_exists != None:
			flash('Email already exists')
			return render_template('signup.html', 
				                    header='signup', 
				                    form=form)
		else:
			user = dbsession.add(User(username= form.username.data,
								  email= form.email.data,
								  password= form.password.data))
		    # add user
			dbsession.commit()

			flash("Registration almost done. Login to complete.")
		   	#user must login with new email/password
			return redirect(url_for('login'))

	return render_template('signup.html',
							header='signup',
							form=form)
Ejemplo n.º 56
0
def register():
    statsd.increment('api_calls.register')
    form = SignupForm(request.form)
    logger.info(request.form)
    if not form.validate():
        msg = {
            'success': False,
            'msg': form.errors}
        return jsonify(msg)
    user = session.query(Person).\
        filter(Person.email == form.email.data
               ).first()
    if user:
        msg = {
            'success': False,
            'msg': user.email + ' is already registered!',
            'parameter': 'email', }
        return jsonify(msg)
    u = Person(form)
    session.add(u)
    session.commit()
    try:
        pm = PostMonkey(apikey=MC_APIKEY, timeout=10)
        pm.listSubscribe(
            id=MC_LISTID, email_address=form.email.data)
    except MailChimpException, e:
        app.logger.error(str(e))
Ejemplo n.º 57
0
def signup():

    # send user to home page if they're already logged in
    if 'email' in session:
        return redirect(url_for('home'))

    # get reference to the form object
    form = SignupForm()

    # user entering data
    if request.method == 'POST':
        # check form data is ok, if not reload the page
        if form.validate() is False:
            return render_template("signup.html", form=form)

        # form data is ok
        else:
            # add new user to database
            newuser = User(form.first_name, form.last_name, form.email,
                           form.password)
            db.session.add(newuser)
            db.session.commit()

            # assigns a session to the user
            session['email'] = newuser.email

            return redirect(url_for('home'))

    elif request.method == 'GET':
        return render_template("signup.html", form=form)
Ejemplo n.º 58
0
def signup():
    if g.auth is not None and g.auth.is_authenticated():
        return redirect(url_for('index'))

    form = SignupForm()

    if form.validate_on_submit():

        user = None
        user = UserBasic.query.filter_by(email = form.email.data).first()

        if user:
            flash('That email address is already in use.')
            return redirect(url_for('signup'))

        user = UserBasic(email=form.email.data,
                    nickname = form.email.data.split('@')[0],
                    maillist=True )
        db.session.add(user)
        db.session.commit()

        if user:
            flash('Signup successful.')
            return redirect(url_for('index'))
        else:
            flash('Failed to signup user...')
            return redirect(url_for('signup'))

    return render_template('maillist/signup.html', form=form)
Ejemplo n.º 59
0
def signup():
		form = SignupForm()
		if form.validate_on_submit():
			flash('Registration successful.')
			return redirect('/')
		return render_template('base.html', 
													 title='Sign Up',
													 form=form)