def new_user():
    """
    Add a new user 
    :return: Redirects to login page if username already exists or to home page if user is created succesfully
    """
    if request.method == 'GET':
        return render_template('user_add.html')
    if request.method == 'POST':
        username = request.form['name']
        password = request.form['password']
        if username is None or password is None:
            flash('Username or password cannot be empty')
            return redirect('/login')

        if session.query(Users).filter_by(name=username).first() is not None:
            flash('user already exists')
            return redirect('/login')
        max_id = int(session.query(func.max(Users.id)).one()[0]) + 1
        user = Users(id=max_id, name=username)
        user.hash_password(password)
        session.add(user)
        session.commit()
        user = session.query(Users).filter_by(name=username).first()
        login_session['username'] = username
        login_session['user_id'] = user.id
        flash('User created succesfully')
        return redirect('/home')
def create_user(login_session):
    """Helper function making user database record and returning their id"""
    new_user = Users(name = login_session['username'], picture = login_session['picture'], email = login_session['email'])
    session.add(new_user)
    session.commit()
    user = session.query(Users).filter_by(email = login_session['email']).one()
    return user.id
def signup():

    if request.method == 'POST':
        name = request.form.get('name')
        mail = request.form.get('email')
        password = request.form.get('psw')
        job = request.form.get('jobt')
        gender = request.form.get('gender')
        file = request.files['myimage']
        print(file.filename)
        image_name = file.filename
        #image_data = file.read()
        # if mail ok else user abused the website Form (required/classes and id and names) and didn't add required info I Invited this kind of (abuse)
        newaccount = Users(name=name,
                           email=mail,
                           password=password,
                           job=job,
                           gender=gender,
                           image=file.filename)
        session.add(newaccount)
        session.commit()
        message = "Hello Mr %s Your Account Succesfuly Created" % newaccount.name
        message += "Profile Picture name %s" % file.filename
        return render_template('login.html', problem=message)
    else:
        return render_template('signup.html')
Exemple #4
0
def create_user(login_session):
    new_user = Users(name=login_session['username'],
                     email=login_session['email'],
                     picture=login_session['picture'])
    session.add(new_user)
    session.commit()
    return get_user_id(login_session['email'])
Exemple #5
0
def github_login(blueprint, token=None):

    if not token:
        flash('No Token')

    if not github.authorized:
        return redirect(url_for('github.login'))
    account_info = github.get('/user')

    if account_info.ok:
        account_info_json = account_info.json()
        username = account_info_json['login']
        github_user_name = account_info_json['name']
        github_user_id = account_info_json['id']

        github_db_user = db.session.query(Users) \
            .filter(Users.github_id == github_user_id) \
            .first()

        if github_db_user is None:
            new_github_user = Users(name=github_user_name,
                                    username=username,
                                    github_id=github_user_id)
            db.session.add(new_github_user)
            db.session.commit()

        # Passed
        session['logged_in'] = True
        session['username'] = username

        flash('You are now logged in', 'success')
    else:
        flash('An error with your GitHub Login occured.')

    return render_template('home.html')
def popUser(user):
    new = Users(name=user['name'],
                email=user['email'],
                pic_url=user['pic_url'])
    session.add(new)
    session.commit()
    print 'User %s added to db' % user['name']
Exemple #7
0
def Signup():
	state = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in xrange(32))
	login_session['state'] = state
	if request.method == 'GET':
		return render_template("signup.html", state = state, login_session = login_session)
	else:
		username = request.form['username']
		email = request.form['email']
		password = request.form['pw']
		verify = request.form['verify']

		try:
			exist_email = session.query(Users).filter_by(email = email).one()
			flash('this email is already in use')
			return render_template("signup.html", state = state, login_session = login_session)
		except:
			if password != verify:
				flash("Passwords don't match")
				return render_template("signup.html", state = state, login_session = login_session)
			else:
				if email and password:
					password = make_pw_hash(email, password)
					new_user = Users(username = username, email = email,
									 picture = 'https://lh3.googleusercontent.com/-K0bIhug2Qoo/AAAAAAAAAAI/AAAAAAAAAAA/Cg3hXoRNip8/photo.jpg',
									 password = password)
					session.add(new_user)
					session.commit()
					login_session['username'] = username
					login_session['picture'] = 'https://lh3.googleusercontent.com/-K0bIhug2Qoo/AAAAAAAAAAI/AAAAAAAAAAA/Cg3hXoRNip8/photo.jpg'
					login_session['email'] = email
					login_session['user_id'] = new_user.id
					return redirect(url_for('Index'))
				else:
					flash('You have to fill all inputs')
					return render_template("signup.html", state = state, login_session = login_session)
Exemple #8
0
def newItem(catalog_name):
    if 'username' not in login_session:
        print(login_session)
        return "Please log in :)"
    else:
        results = db_session.query(Categories).all()
        get_category_id = db_session.query(Categories).filter_by(
            name=catalog_name).one()
        if request.method == 'POST':
            users = Users(name=login_session['username'],
                          email=login_session['email'])
            find_category = db_session.query(Categories).filter_by(
                name=request.form.get('categories')).one()
            createItem = Items(user=users,
                               title=request.form['title'],
                               description=request.form['description'],
                               category=find_category)
            db_session.add(createItem)
            db_session.commit()
            output = redirect(url_for('showAllCategories'))
            recent = Recent(item=createItem, created_date=datetime.now())
            db_session.add(recent)
            db_session.commit()
            return output
        else:
            output = render_template('newitem.html',
                                     category=get_category_id,
                                     r=results)
            return output
Exemple #9
0
def create_user(login_session):
    """Create new user based on login info."""
    new_user = Users(name=login_session['name'], email=login_session['email'])
    session.add(new_user)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).one()
    return user.id
Exemple #10
0
def userRegister():
	if request.method == 'POST':
		nameUser = request.form['name']
		idUser = request.form['id']
		passUser = request.form['password']
		userKey = request.form['keyword']
		if nameUser == "":
			return jsonify({'message':'Empty Name field. Please provide a name.'})
		if idUser == "":
			return jsonify({'message':'Empty e-mail field. Please provide your user e-mail.'})
		if passUser == "":
			return jsonify({'message':'Empty password field. Please provide your password'})
		if userKey == "":
			return jsonify({'message':'Empty keyword field. Please provide a keyword for Password Recovery'})
		if not isEmailValid(idUser): #verifico formato de e-mail
			return jsonify({'message':'Invalid e-mail format. FOLLOW the next format: [email protected]'})
		if not isPasswordValid(passUser): #verifico formato de password
			return jsonify({'message': "Invalid password format. It MUST include at least 8 characters, 1 Uppercase letter and 1 of the following symbols: *&@%+/'!#$?:,`_.-"})
		
		try:
			newUser = Users(name = nameUser, id = idUser, password = passUser, keyword = userKey)
			session.add(newUser)
			session.commit()
		
		except:
			return jsonify({'message': 'There is a problem with inserting data to the database.'})

		return redirect(url_for('userLogIn'))
	else:
		
		return render_template('userRegister.html')
Exemple #11
0
def createUser(login_session):
    newUser = Users(name=login_session['username'],
                    email=login_session['email'])
    session.add(newUser)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).one()
    return user.id
def addUser():
    email = session_for_login['email']
    user = Users(email=email)
    session.add(user)
    session.commit()
    user = session.query(Users).filter_by(email=email).first()
    return user.user_id
Exemple #13
0
def newUser():
	if request.method == 'POST':
		newuser = Users(name=request.form['name'])	
		session.add(newuser)
		session.commit()
		return redirect(url_for('showUsers'))
	else:
		return render_template('newuser.html')
Exemple #14
0
def createUser(login_session):
    DBSession = sessionmaker(bind=engine)
    session = DBSession()
    newUser = Users(name=login_session['username'], email=login_session[
        'email'], picture=login_session['picture'])
    session.add(newUser)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).one()
    return user.id
Exemple #15
0
def create_user(login_session):
    """Create a user from the given login_session and return it's user id."""
    session = DBSession()
    new_user = Users(name=login_session['username'],
                     email=login_session['email'])
    session.add(new_user)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).one()
    return user.id
Exemple #16
0
def signUp():
	if request.method == 'POST':
		newUser = Users(name = request.form['name'], id = request.form['id'], password = request.form['password'])
		session.add(newUser)
		session.commit()
		#flash("New menu item created!")
		return redirect(url_for('signIn'))
	else:
		return render_template('signUp.html')
Exemple #17
0
 def add_user(self, name, email, picture):
     """add user in our database and returns user
     :parameter email: email of user
     :parameter name: name of user
     :parameter picture: url of profile picture of user
     """
     user = Users(name=name, email=email, picture=picture)
     self.session.add(user)
     self.session.commit()
     return user
Exemple #18
0
def createUser(login_session):
    name_parts = login_session['username'].split(' ')
    newUser = Users(last_name=name_parts[-1],
                    first_name=name_parts[0],
                    email=login_session['email'],
                    picture=login_session['picture'])
    session.add(newUser)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).one()
    return user.id
Exemple #19
0
def registerPage():
    if request.method == 'POST':
        session = connectDB()
        newUser = Users(name=request.form['name'], about=request.form['about'])
        session.add(newUser)
        session.commit()
        return redirect(url_for('allUsers'))
    else:
        output = render_template('register.html', url_for=url_for)
        return output
Exemple #20
0
def createNewUser(login_session):
    '''takes new user from login_session and adds to the database,
    returns the new user's id'''
    newUser = Users(name=login_session['username'],
                    email=login_session['email'],
                    picture=login_session['picture'])
    session.add(newUser)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).one()
    return user.id
Exemple #21
0
def register_user(login_session):
    """ Register new user. """

    new_user = Users(name=login_session['username'],
                     email=login_session['email'])

    session.add(new_user)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).one()

    return user.id
def create_user(login_session):
    session = Session()
    new_user = Users(
        name=login_session['username'],
        email=login_session['email'],
        picture=login_session['picture'])
    session.add(new_user)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).first()
    Session.remove()
    return user.id
Exemple #23
0
def createUser(username, email, password, picture=''):
    print 'try create user'
    if username and email:
        user = Users(username=username,
                     email=email,
                     password=password,
                     picture=picture)
        session.add(user)
        session.commit()
        print("user created")
    return user
Exemple #24
0
def create_user(login_session):
    """Create a new user if user does not yet exist."""
    new_user = (
        Users(name=login_session['username'],
              email=login_session['email'],
              picture=login_session['picture'])
    )

    session.add(new_user)
    session.commit()
    user = session.query(Users).filter_by(email=login_session['email']).one()
    return user.id
def createUser(facebookuser):
    ''' Creates a new user

        Args:
            facebookuser = the user information from the session

    '''
    newUser = Users(name=facebookuser['username'],
                    id=facebookuser['facebook_id'],
                    email=facebookuser['email'],
                    administrator=False)
    sess.add(newUser)
    sess.commit()
Exemple #26
0
def retrieve_user(login_session):
    user = session.query(Users).filter_by(email=login_session['email']).first()
    if user is None:
        # Create new user
        new_user = Users(username=login_session['username'],
                         email=login_session['email'])
        session.add(new_user)
        session.commit()
        # Retrieve new users unique ID
        user = session.query(Users).filter_by(
            email=login_session['email']).first()
        return user.user_id
    else:
        return user.user_id
Exemple #27
0
def createUser(login_session):
    session = DBSession()
    current_highest = session.query(Users).order_by(
        Users.user_id.desc()).first()
    new_user_id = current_highest.user_id + 1
    new_user = Users(
        user_name=login_session['username'],
        user_email=login_session['email'],
        user_id=new_user_id)
    session.add(new_user)
    session.commit()
    user = session.query(Users).filter_by(
        user_email=login_session['email']).one()
    return user.user_id
Exemple #28
0
 def newUser():
     if request.method == 'POST':
         username = request.form['username']
         password = request.form['password']
         if(dbsession.query(Users).filter_by(id=username).count() != 1):
             newUser = Users(id=username, password=password)
             dbsession.add(newUser)
             dbsession.commit()
             flash("new user created!")
             return redirect(url_for('login'))
         else:
             flash("This username " + username + " is already taken, please choose another. taken please choose another")
             return redirect(url_for('newUser'))
     else:
         return render_template('newuser.html')
Exemple #29
0
def createNewUser():
    """Creates a new user

    Creates a new object of the Users class and gives it attributes from
    user variables ins login_session
    """

    newUser = Users(
        name=login_session['username'],
        pic_url=login_session['picture'],
        email=login_session['email'],
    )
    session.add(newUser)
    session.commit()
    return newUser.id
Exemple #30
0
def create_user(name):
    """
       Function to create a new user
       Parameter: Name - name of the new user
       Return the User Id
    """
    try:
        user = session.query(Users).filter_by(name=name).one()
    except:
        new_user = Users(name=name)
        session.add(new_user)
        session.commit()

    user = session.query(Users).filter_by(name=name).one()

    return user.id