From d870819080e0778da672a257f634c0d8b7960af5 Mon Sep 17 00:00:00 2001 From: Terrtia <or1994@hotmail.fr> Date: Tue, 1 Oct 2019 11:47:33 +0200 Subject: [PATCH] chg: [registered sensor] remove registered sensors --- server/lib/Sensor.py | 14 ++++++++++++++ server/web/Flask_server.py | 11 +++++++++++ server/web/templates/registered_sensors.html | 6 ++++++ 3 files changed, 31 insertions(+) diff --git a/server/lib/Sensor.py b/server/lib/Sensor.py index c74b6a3..af83cd4 100755 --- a/server/lib/Sensor.py +++ b/server/lib/Sensor.py @@ -148,3 +148,17 @@ def delete_pending_sensor(req_dict): def _delete_pending_sensor(sensor_uuid): r_serv_db.srem('sensor_pending_registration', sensor_uuid) return ({'uuid': sensor_uuid}, 200) + +def delete_registered_sensor(req_dict): + sensor_uuid = req_dict.get('uuid', None) + if not is_valid_uuid_v4(sensor_uuid): + return ({"status": "error", "reason": "Invalid uuid"}, 400) + sensor_uuid = sensor_uuid.replace('-', '') + # sensor not registred + if not r_serv_db.sismember('registered_uuid', sensor_uuid): + return ({"status": "error", "reason": "Sensor not registered"}, 404) + return _delete_registered_sensor(sensor_uuid) + +def _delete_registered_sensor(sensor_uuid): + r_serv_db.srem('registered_uuid', sensor_uuid) + return ({'uuid': sensor_uuid}, 200) diff --git a/server/web/Flask_server.py b/server/web/Flask_server.py index 50eee84..43efd91 100755 --- a/server/web/Flask_server.py +++ b/server/web/Flask_server.py @@ -762,6 +762,17 @@ def delete_pending_sensor(): else: return jsonify(res[0]) +@app.route('/server/delete_registered_sensor') +@login_required +@login_admin +def delete_registered_sensor(): + uuid_sensor = request.args.get('uuid') + res = Sensor.delete_registered_sensor({'uuid': uuid_sensor}) + if res[1] == 200: + return redirect(url_for('registered_sensor')) + else: + return jsonify(res[0]) + @app.route('/uuid_change_stream_max_size') @login_required @login_user_basic diff --git a/server/web/templates/registered_sensors.html b/server/web/templates/registered_sensors.html index f97bb89..cf20aae 100644 --- a/server/web/templates/registered_sensors.html +++ b/server/web/templates/registered_sensors.html @@ -38,6 +38,7 @@ <th class="bg-info text-white">last seen</th> <th class="bg-info text-white">types</th> <th class="bg-secondary text-white">Status</th> + <th class="bg-secondary text-white"></th> </tr> </thead> <tbody> @@ -85,6 +86,11 @@ <i class="fa fa-check-circle"></i> Connected {% endif %} </td> + <td> + <a href="{{ url_for('delete_registered_sensor') }}?uuid={{row_uuid['uuid']}}"> + <button type="button" class="btn btn-outline-danger"><i class="fa fa-trash"></i></button> + </a> + </td> </tr> {% endfor %} </tbody>