예제 #1
0
    def post(self):
        """ Create a new user """

        if not current_user.has_admin():
            return {"success": False, "message": "Access denied"}, 401

        args = register.parse_args()
        username = args.get('username')

        if UserModel.objects(username__iexact=username).first():
            return {
                'success': False,
                'message': 'Username already exists.'
            }, 400

        user = UserModel()
        user.username = args.get('username')
        user.password = generate_password_hash(args.get('password'),
                                               method='sha256')
        user.name = args.get('name', "")
        user.email = args.get('email', "")
        user.is_admin = args.get('isAdmin', False)
        user.save()

        user_json = fix_ids(current_user)
        del user_json['password']

        return {'success': True, 'user': user_json}
예제 #2
0
파일: app.py 프로젝트: ByK95/Crowley
def register():
    """Register user"""
    if request.method == "POST":

        form = {"username": None, "email": None, "password": None}
        for i in form:
            if request.form.get(i) is None or request.form.get(i) == "":
                return "Must Provide {}".format(i)
            form[i] = request.form.get(i)

        passhash = generate_password_hash(request.form.get("password"))

        new_user = UserModel(username=form["username"],
                             emailAddress=form["email"],
                             passwordHash=passhash)

        try:
            db.session.add(new_user)
            db.session.commit()
        except exc.IntegrityError:
            return render_template("error.html",
                                   errTitle='User exists!',
                                   redir="/register")

        return redirect("/")
    else:
        return render_template("register.html")
예제 #3
0
    def post(self):
        """ Creates user """

        users = UserModel.objects.count()

        if not Config.ALLOW_REGISTRATION and users != 0:
            return {'success': False, 'message': 'Registration of new accounts is disabled.'}, 400

        args = register.parse_args()
        username = args.get('username')

        if UserModel.objects(username__iexact=username).first():
            return {'success': False, 'message': 'Username already exists.'}, 400

        user = UserModel()
        user.username = args.get('username')
        user.password = generate_password_hash(args.get('password'), method='sha256')
        user.name = args.get('name')
        user.email = args.get('email')
        if users == 0:
            user.is_admin = True
        user.save()

        login_user(user)

        user_json = fix_ids(current_user)
        del user_json['password']

        return {'success': True, 'user': user_json}
예제 #4
0
 def mutate(cls, _, args, context, info):
     user = UserModel(name=args.get('name'),
                      email=args.get('email'),
                      username=args.get('username'))
     db_session.add(user)
     db_session.commit()
     ok = True
     return createUser(user=user, ok=ok)
 def create_original_user(self, username, password, name, email):
     user = UserModel()
     user.username = username
     user.password = self.encryption_service.hash_password(password)
     user.name = name
     user.email = email
     user.save()
     return user
예제 #6
0
 def mutate(self, context, **kwargs):
     user = UserModel(name=kwargs.get('name'),
                      email=kwargs.get('email'),
                      username=kwargs.get('username'))
     db_session.add(user)
     db_session.commit()
     ok = True
     return createUser(user=user, ok=ok)
예제 #7
0
def register():

    form = RegisterForm()

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

        if (password == confirm):
            newUser = UserModel(username, password)
            db.session.add(newUser)
            db.session.commit()
            return redirect(url_for("index"))
        else:
            flash("Passwords must match", "error")

    return render_template("register.html", form=form)
예제 #8
0
def register():
    if request.method == 'POST':
        name = request.form['name']
        surname = request.form['surname']
        email = request.form['email']
        username = request.form['username']
        password = request.form['password']
        #user details are requested from the form
        if UserModel.query.filter_by(
                email=email).first():  #If email is already used error occurs.
            return ('Email already Present')

        user = UserModel(name=name,
                         surname=surname,
                         email=email,
                         username=username)
        user.set_password(password)
        current_user.name = name
        current_user.surname = surname
        db.session.add(user)
        db.session.commit()  #details are committed to the database
        return redirect('/profile1')  #patient home page is returned
    return render_template('register.html')  #register home page is returned
 def mutate(cls, root, info, **args):
     user = UserModel(name=args.get('name'), age=args.get('age'))
     db_session.add(user)
     db_session.commit()
     ok = True
     return CreateUser(user=user, ok=ok)
예제 #10
0
 def create_user(username, password):
     user = UserModel(
         username=username,
         password=password
     ).save()
     return user.id