Example #1
0
def login():
    model = UserModel()
    form = forms.LoginForm(request.form)

    if request.method == "GET":
        return render_template('webui/login.html', form=form)

    if request.method == "POST":
        if not form.validate():
            return render_template('webui/login.html',
                                   login_description="フォームを正しく入力してください。",
                                   form=form)

        user, code = model.user_login(form.username.data, form.password.data)

        if code == ResultCode.Success and user:
            login_user(user)
            return redirect(
                request.args.get('next') or url_for("webui.device_list"))
        else:
            return render_template('webui/login.html',
                                   login_description="ユーザIDまたはパスワードが違います。",
                                   form=form)

    return render_template('webui/login.html', form=form)
Example #2
0
def api_login():
    username = request.args.get('username', None)
    password = request.args.get('password', None)

    if username is None or password is None:
        return jsonify(_makeErrorMessage(ResultCode.FormatError))

    if len(username) > Util.MaxUsernameLength or len(
            password) > Util.MaxUserPassLength:
        return jsonify(_makeErrorMessage(ResultCode.FormatError))

    model = UserModel()
    user, code = model.user_login(username, password)

    if code == ResultCode.Success and user:
        login_user(user)
        msg = "login successful"
        return jsonify(_makeResponseMessage(msg))
    else:
        return jsonify(_makeErrorMessage(ResultCode.GenericError))