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)
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))