コード例 #1
0
def login():
    # just display a login page
    if request.method == 'GET':
        return render_template('login.html')

    # get credentials
    username = request.form['username']
    password = request.form['password']

    # validate credentials and load user
    user_obj = User.load_by_username_password(username, password, config)
    if user_obj is None:
        flash('Username or Password is invalid', 'error')
        return redirect(url_for('login'))

    # log in user
    login_user(user_obj)
    flash('Logged in successfully')
    return redirect(url_for('admin'))
コード例 #2
0
def load_user(user_id):
    return User.load_by_id(user_id, config)
コード例 #3
0
from points.config import Config
from webapp.auth import User


parser = argparse.ArgumentParser(description='Manages users for the admin web app')
parser.add_argument('command', nargs='?', help='Action to execute (add/delete/list/login)')
parser.add_argument('-u', '--username', help='Username')
parser.add_argument('-p', '--password', help='Password')

if __name__ == "__main__":
    args = vars(parser.parse_args())
    config = Config()

    # Display all users
    if args["command"] == "list":
        users = User.load_all(config)
        if users:
            print "Found %d users:" % len(users)
            for user in users:
                print "%s - %s" % (user['username'], user['password'])
        else:
            print "No users found"

    # Add a new user
    if args["command"] == "add":
        users = User.store_username_password(args['username'], args['password'], config)
        print "Added user %s to the database" % args['username']

    # Delete a user
    if args["command"] == "delete":
        users = User.remove_by_username(args['username'], config)