mirror of
https://github.com/FAUSheppy/icinga-webhook-gateway
synced 2025-12-06 07:21:38 +01:00
feat: service modification
This commit is contained in:
15
server.py
15
server.py
@@ -143,10 +143,23 @@ def create_interface():
|
||||
user = flask.request.headers.get("X-Preferred-Username")
|
||||
|
||||
form = EntryForm()
|
||||
|
||||
# handle modification #
|
||||
modify_service_name = flask.request.args.get("service")
|
||||
if modify_service_name:
|
||||
service = db.session.query(Service).filter(Service.service == modify_service_name).first()
|
||||
if service:
|
||||
form.service.default = service.service
|
||||
form.timeout.default = service.timeout
|
||||
form.process()
|
||||
else:
|
||||
return ("Not a valid service to modify", 404)
|
||||
|
||||
if form.validate_on_submit():
|
||||
create_entry(form, user)
|
||||
return flask.redirect('/service-details?service={}'.format(form.service.data))
|
||||
return flask.render_template('add_modify_service.html', form=form)
|
||||
return flask.render_template('add_modify_service.html', form=form,
|
||||
is_modification=bool(modify_service_name))
|
||||
|
||||
@app.route('/alive')
|
||||
def alive():
|
||||
|
||||
@@ -7,7 +7,13 @@
|
||||
}
|
||||
</style>
|
||||
<div class="container">
|
||||
<h1 style="margin: auto; width: fit-content;" class="mt-5">Create a new Service</h1>
|
||||
<h1 style="margin: auto; width: fit-content;" class="mt-5">
|
||||
{% if is_modification %}
|
||||
Modify Service
|
||||
{% else %}
|
||||
Create a new Service
|
||||
{% endif %}
|
||||
</h1>
|
||||
<div class="form-container">
|
||||
<hr style="mt-3">
|
||||
{% if form.service.errors %}
|
||||
@@ -20,10 +26,22 @@
|
||||
<form class="mt-4" method="POST" action="/entry-form">
|
||||
|
||||
{{ form.csrf_token }}
|
||||
{{ form.service.label }} {{ form.service(size=20) }} </br>
|
||||
{{ form.service.label }}
|
||||
|
||||
{% if is_modification %}
|
||||
{{ form.service(size=20, disabled=True) }}
|
||||
{% else %}
|
||||
{{ form.service(size=20) }}
|
||||
{% endif %}
|
||||
|
||||
</br>
|
||||
{{ form.timeout.label }} {{ form.timeout() }} </br>
|
||||
|
||||
{% if is_modification %}
|
||||
<input class="form-button mt-4" type="submit" value="Send Modification">
|
||||
{% else %}
|
||||
<input class="form-button mt-4" type="submit" value="Create">
|
||||
{% endif %}
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<h2 class="service-name">Service: {{ service.service }}</h2>
|
||||
|
||||
<a class="service-info-button mt-3" style="background-color: orange;"
|
||||
href="/entry-form">Modify</a>
|
||||
href="/entry-form?service={{ service.service }}">Modify</a>
|
||||
<a class="service-info-button mt-3" style="background-color: red;"
|
||||
href="#"
|
||||
onclick="alert('Delete is not supported yet')">Delete</a>
|
||||
|
||||
Reference in New Issue
Block a user