54 lines
1.8 KiB
Python
54 lines
1.8 KiB
Python
from flask import Flask, render_template, abort
|
|
|
|
app = Flask(__name__)
|
|
|
|
EQUIPMENTS = [
|
|
{"id": 1, "hostname": "srv-web-main-01", "type": "server", "active": True},
|
|
{"id": 2, "hostname": "sw-access-01", "type": "switch", "active": True},
|
|
{"id": 3, "hostname": "srv-api-01", "type": "server", "active": True},
|
|
{"id": 4, "hostname": "waf-front-01", "type": "waf", "active": True},
|
|
{"id": 5, "hostname": "individual-alice-01", "type": "instance", "active": True},
|
|
{"id": 6, "hostname": "sw-access-02", "type": "switch", "active": False},
|
|
{"id": 7, "hostname": "individual-bob-01", "type": "instance", "active": False},
|
|
{"id": 8, "hostname": "srv-web-replica-01", "type": "server", "active": True},
|
|
]
|
|
|
|
USERNAME = "administratort"
|
|
|
|
@app.route('/')
|
|
def index():
|
|
return render_template('index.html', username=USERNAME, equipments=EQUIPMENTS)
|
|
|
|
@app.route('/actives')
|
|
def actives():
|
|
ACTIVE_EQUIPMENTS = [e for e in EQUIPMENTS if e["active"]]
|
|
return render_template('actives.html', username=USERNAME, equipments=ACTIVE_EQUIPMENTS)
|
|
|
|
@app.route('/list')
|
|
def details():
|
|
return render_template('list.html', username=USERNAME, equipments=EQUIPMENTS)
|
|
|
|
@app.route("/details/<int:equipment_id>")
|
|
def equipment_detail(equipment_id):
|
|
equipment = next((e for e in EQUIPMENTS if e["id"] == equipment_id), None)
|
|
return render_template(
|
|
"details.html",
|
|
username=USERNAME,
|
|
equipment=equipment,
|
|
)
|
|
|
|
@app.route("/stats")
|
|
def stats():
|
|
total = len(EQUIPMENTS)
|
|
active = sum(1 for e in EQUIPMENTS if e["active"])
|
|
inactive = total - active
|
|
return render_template(
|
|
"stats.html",
|
|
username=USERNAME,
|
|
total=total,
|
|
active=active,
|
|
inactive=inactive,
|
|
)
|
|
|
|
if __name__ == '__main__':
|
|
app.run(host='127.0.0.1', port=5000, debug=True) |