Exemple #1
0
def add_user():
    if request.method == 'GET':
        labs = [lab.name for lab in Lab.query.all()]
        roles = [role.name for role in Role.query.all()]
        return render_template('adduser.html', labs=labs, roles=roles)

    elif request.method == 'POST':
        print request.form.getlist('roles')
        email = request.form['email']
        password = request.form['email']
        lab = Lab.query.filter_by(name=request.form['lab']).first()
        roles = request.form.getlist('roles')
        roles = [Role.query.filter_by(name=role).first() for role in roles]
        new_user = user_datastore.create_user(
            email=email,
            password=password,
            active=True,
            roles=roles
        )
        user_datastore.commit()
        lab.users.append(new_user)
        db.session.commit()

        return 'Adding user: {0} with password: {1} in lab {2} with roles {3}'.format(
            email,
            password,
            lab.name,
            ', '.join(role.name for role in roles),
        )
Exemple #2
0
def modify_user():
    if request.method == 'GET':
        actions = ['Delete']
        users = [user.email for user in User.query.all()]
        return render_template('moduser.html', users=users, actions=actions)
    elif request.method == 'POST':
        user = request.form['user']
        print user
        if 'Action' in request.form.keys() and request.form['Action'] == 'Delete':
            user_datastore.delete_user(User.query.filter_by(email=user).first())
            user_datastore.commit()
            return "Deleted: {}".format(user)
        return "Did Nothing"
Exemple #3
0
def test():
    if not Role.query.all():
        user_datastore.create_role(name='Admin')
        user_datastore.create_role(name='Lab Member')
        user_datastore.commit()
    winkler = Lab(name='Winkler')
    db.session.add(winkler)
    db.session.commit()
    current_user.roles.append(Role.query.get(2))
    lab = Lab.query.get(1)
    print lab
    if not current_user in lab.users:
        print "adding"
        lab.users.append(current_user)
    else:
        print "not adding"
    current_user.roles.append(Role.query.get(1))
    db.session.commit()
    return str(current_user.lab)