示例#1
0
def index():
    lgform = LoginForm()
    if lgform.validate_on_submit():
        user = User.query.filter_by(username=lgform.username.data).first()
        if user is not None and user.verify_password(lgform.password.data):
            login_user(user)
            return redirect(request.args.get("next") or url_for("index"))

    ipform = IPForm()
    if ipform.validate_on_submit():
        if not current_user.can(Permission.CRUD_NETWORK):
            abort(403)
        notify_monitor_add_ip(ipform.ip.data)
        return redirect("/index")

    netform = NetForm()
    if netform.validate_on_submit():
        if not current_user.can(Permission.CRUD_NETWORK):
            abort(403)
        notify_monitor_add_network(netform.network.data)
        return redirect("/index")

    nodes_dict = MonitorColl.get_network_ip_dict()
    return render_template("index.html", nodes_dict=nodes_dict, ipform=ipform, netform=netform, lgform=lgform)