From d20e6db9fe8c7302d84ce6135408efc377cd1f62 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Thu, 14 Mar 2024 14:30:41 +0100 Subject: [PATCH 001/215] standup --- docs/LearningProcessBram/Sprint1/FirstDocumentation.md | 3 ++- teamdocumentatie/dailyStandupNotes.md | 7 +++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/LearningProcessBram/Sprint1/FirstDocumentation.md b/docs/LearningProcessBram/Sprint1/FirstDocumentation.md index d222ad3..fa8c5c4 100644 --- a/docs/LearningProcessBram/Sprint1/FirstDocumentation.md +++ b/docs/LearningProcessBram/Sprint1/FirstDocumentation.md @@ -243,4 +243,5 @@ elif c == 2: Even if it looked simple, this was the ignition I needed to understand python better and continue my own research. ### Python for dummmies pt2 -after some intense trail and error, I managed to connect to the websocket. \ No newline at end of file +after some intense trail and error, I managed to connect to the websocket. +After wich i also managed to send infromation to the database by including details like pasword and such. diff --git a/teamdocumentatie/dailyStandupNotes.md b/teamdocumentatie/dailyStandupNotes.md index 5bd4dae..b8c5667 100644 --- a/teamdocumentatie/dailyStandupNotes.md +++ b/teamdocumentatie/dailyStandupNotes.md @@ -42,4 +42,11 @@ and im going to continue with working on the connection between the websocket an Sam: making a rest api to pull stuff from database. Sietse: OOP python. Bram: Finaly finishing connection between database and websocket. +} + +14 - 3- 2024 { + Sam: rest api building. + Dano: OOP arduino. + sietse: making the website dynamic. + Bram: Documentation updating for review. } \ No newline at end of file From 6c60a184b811959eba8a467122d3a44d53c73368 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Thu, 14 Mar 2024 18:05:38 +0100 Subject: [PATCH 002/215] database websocket connection documentation. --- docs/rpi-documentation/Databaseconnection.md | 65 ++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 docs/rpi-documentation/Databaseconnection.md diff --git a/docs/rpi-documentation/Databaseconnection.md b/docs/rpi-documentation/Databaseconnection.md new file mode 100644 index 0000000..0372d01 --- /dev/null +++ b/docs/rpi-documentation/Databaseconnection.md @@ -0,0 +1,65 @@ +## Python code + explaination +```js +// Here different librarys are imported to +// everything is running async so the code can run together and not interfere with eachother. +import asyncio +import websockets +// a library to connect to the database. +import mysql.connector +import json + +//the data that has to be pushed needs to be +async def process_data(data): + try: + mydb = mysql.connector.connect( + host="localhost", + user="*****", + password="*********", + database="*******" + ) + cursor = mydb.cursor() + // the segments in wich the infromation will be sent. + query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" + // the json data collected from the websocket gets collected and transformed into data usable by python. + mrdata = json.loads(data) + //variables get the different types of data. + mrtemp = (mrdata['Temp']) + mrhumi = (mrdata['Humi']) + mrco = (mrdata['eCO2']) + mrtvoc = (mrdata['TVOC']) + mrnode = (mrdata['node']) + //an array is made to holster the different information clusters, for the time being it holds the infromation of one node. + mrarray = [(1, "Temp", mrtemp), (1, "Humi", mrhumi), (1, "eCO2", mrco), (1, "TVOC", mrtvoc)] + // a for statement to go trough the array. + for i in mrarray: + print(query ,i) + cursor.execute(query, i) + //commit the information to the database. + mydb.commit() + // if the connection to the database can't be made this error wil show with further information. + except mysql.connector.Error as err: + print("MySQL Error:", err) + finally: + cursor.close() + mydb.close() +//here the connection to the websocked is made +async def receive_data(): + uri = "ws://145.92.8.114/ws" + + try: + async with websockets.connect(uri) as websocket: + while True: + // the data collected from the websocket is. + data = await websocket.recv() + // dara recieved conformation. + print(f"Received data: {data}") + await process_data(data) + // error sowing. + except websockets.ConnectionClosedError as e: + print("WebSocket connection closed:", e) + +async def main(): + await receive_data() + +asyncio.run(main()) +``` \ No newline at end of file From a2ff97d7fbbe4b7a0a9796e6cdb0bc38fa35e3da Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Thu, 14 Mar 2024 18:46:46 +0100 Subject: [PATCH 003/215] database websocket documentation --- docs/rpi-documentation/Databaseconnection.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/rpi-documentation/Databaseconnection.md b/docs/rpi-documentation/Databaseconnection.md index 0372d01..de44bb4 100644 --- a/docs/rpi-documentation/Databaseconnection.md +++ b/docs/rpi-documentation/Databaseconnection.md @@ -1,13 +1,19 @@ ## Python code + explaination +We wanted to make a working connection between our websocket wich runs all the data gatherd by our nodes and a live feed to our database. +So we set out to make this connection using python. + +At first we needed to import the folowing librarys: ```js -// Here different librarys are imported to // everything is running async so the code can run together and not interfere with eachother. import asyncio import websockets // a library to connect to the database. import mysql.connector import json +``` +Then we began the process of connecting with both the websocket and the database. +```js //the data that has to be pushed needs to be async def process_data(data): try: From 6ea17a63c765850648d82291564c12551a7bcecd Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 14 Mar 2024 19:19:52 +0100 Subject: [PATCH 004/215] Added a script that sends junk to the websocket to act as a node --- server/bullshitSender.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 server/bullshitSender.py diff --git a/server/bullshitSender.py b/server/bullshitSender.py new file mode 100644 index 0000000..f55e7e9 --- /dev/null +++ b/server/bullshitSender.py @@ -0,0 +1,33 @@ +import asyncio +import websockets +import json +import random +import time + +async def send_data(uri): + async with websockets.connect(uri) as websocket: + print("Connected to WebSocket server") + + while True: + data = { + "node": "69:42:08:F5:00:00", + "Temp": str(round(random.uniform(0, 25), 2)), + "Humi": str(round(random.uniform(0, 90), 2)), + "eCO2": str(round(random.uniform(350, 2000), 0)), + "TVOC": str(round(random.uniform(100, 1200), 0)) + } + await websocket.send(json.dumps(data)) + print("Data sent") + + response = await websocket.recv() + print("Received message:", response) + + await asyncio.sleep(2) # Wait a bit before sending the next message + +# Start the WebSocket connection +while True: + try: + asyncio.get_event_loop().run_until_complete(send_data("ws://145.92.8.114/ws")) + except Exception as e: + print("Exception:", e) + time.sleep(1) # Wait a bit before trying to reconnect \ No newline at end of file From 1c7fd2ab68bf53478b33246c516175b66606b294 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 14 Mar 2024 19:20:01 +0100 Subject: [PATCH 005/215] REST APi --- server/Flask/main.py | 21 +++++++-------------- server/Flask/queries.py | 12 ++++++++++++ 2 files changed, 19 insertions(+), 14 deletions(-) create mode 100644 server/Flask/queries.py diff --git a/server/Flask/main.py b/server/Flask/main.py index d2951f0..7da2986 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -1,15 +1,16 @@ from flask import Flask, request import mysql.connector - +from queries import * app = Flask(__name__) @app.route('/') def index(): node = request.args.get('node', default = None) dataType = request.args.get('dataType', default = None) - return getData(node, dataType) + MAC = request.args.get('MAC', default = None) + return getData(node, dataType, MAC) -def getData(node, dataType): +def getData(node, dataType, MAC): try: mydb = mysql.connector.connect( host="localhost", @@ -17,20 +18,12 @@ def getData(node, dataType): password="Dingleberries69!", database="NodeData" ) -#turn this into a switch statement - cursor = mydb.cursor() - if node: - query = f"SELECT * FROM Measurement WHERE NodeID = {node}" - elif dataType: - query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'" - else: - query = "SELECT * FROM `Measurement`" + + query = get_query(node, dataType, MAC) + cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results - # Convert the results to a string for display - result_str = ', '.join([str(row) for row in result]) - cursor.close() mydb.close() diff --git a/server/Flask/queries.py b/server/Flask/queries.py new file mode 100644 index 0000000..c9aae44 --- /dev/null +++ b/server/Flask/queries.py @@ -0,0 +1,12 @@ +def get_query(node, dataType, MAC): + if node and dataType: + query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" + elif node: + query = f"SELECT * FROM Measurement WHERE NodeID = {node}" + elif dataType: + query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'" + elif MAC: + query = f"SELECT * FROM Node WHERE MAC = '{MAC}'" + else: + query = "SELECT * FROM `Measurement`" + return query From b4dcdf7609ab306e1805dca2089cf08d6d397506 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Fri, 15 Mar 2024 11:18:58 +0100 Subject: [PATCH 006/215] daily standup. --- teamdocumentatie/dailyStandupNotes.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/teamdocumentatie/dailyStandupNotes.md b/teamdocumentatie/dailyStandupNotes.md index b8c5667..87ee9b2 100644 --- a/teamdocumentatie/dailyStandupNotes.md +++ b/teamdocumentatie/dailyStandupNotes.md @@ -49,4 +49,8 @@ and im going to continue with working on the connection between the websocket an Dano: OOP arduino. sietse: making the website dynamic. Bram: Documentation updating for review. +} + +15 - 3- 2024 { + We are all making preperations for the sprint-review. } \ No newline at end of file From b8fbf0dfafbe2190856c00b5984910b0341391ce Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Fri, 15 Mar 2024 12:13:51 +0100 Subject: [PATCH 007/215] database documentation presentable --- docs/rpi-documentation/Databaseconnection.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/rpi-documentation/Databaseconnection.md b/docs/rpi-documentation/Databaseconnection.md index de44bb4..46f49fa 100644 --- a/docs/rpi-documentation/Databaseconnection.md +++ b/docs/rpi-documentation/Databaseconnection.md @@ -13,6 +13,7 @@ import json ``` Then we began the process of connecting with both the websocket and the database. +First-off, we began making a connection to the database by using a mysql library in wich we gave the log in in order to connect to our ow database. ```js //the data that has to be pushed needs to be async def process_data(data): @@ -23,6 +24,10 @@ async def process_data(data): password="*********", database="*******" ) +``` +Then after this we code in the infromation we want to put inside of the database. +The data collected from the websocket is json data, so this has to be changed. +```js cursor = mydb.cursor() // the segments in wich the infromation will be sent. query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" @@ -48,16 +53,21 @@ async def process_data(data): finally: cursor.close() mydb.close() +``` +After fully connecting t othe database, making statements of what to put there and telling the code what to do, we ofcourse need to write the code to connect to the weebsocket. +We begin by telling our websocket id and what type of port we are using. +Then we will collect live data from the conected websocket, store it in a variable, and then in the previous code +```js //here the connection to the websocked is made async def receive_data(): - uri = "ws://145.92.8.114/ws" + uri = "****************" try: async with websockets.connect(uri) as websocket: while True: // the data collected from the websocket is. data = await websocket.recv() - // dara recieved conformation. + // data recieved: conformation. print(f"Received data: {data}") await process_data(data) // error sowing. From a707c4f9bbc0a8c8622c47bcc1bf580c64d7fd36 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Fri, 15 Mar 2024 12:39:27 +0100 Subject: [PATCH 008/215] pages updated --- docs/.pages | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/.pages b/docs/.pages index 9803d55..1481ee6 100644 --- a/docs/.pages +++ b/docs/.pages @@ -16,6 +16,7 @@ nav: - phpMyAdmin: rpi-documentation/phpmyadmin-installation - Websockets: rpi-documentation/websockets - Reverse Proxy: rpi-documentation/Reverse-Proxy + - Db - ws connection: rpi-documentation/Databaseconnection - 🧠 Brainstorm: - Ideeën: brainstorm/ideeën - Database design: brainstorm/Database From 54fc6f2306f0595c9c1cc6ccae45b39401a10cb7 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Fri, 15 Mar 2024 12:40:38 +0100 Subject: [PATCH 009/215] hoofdletter correctie. --- docs/.pages | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/.pages b/docs/.pages index 1481ee6..d32cd03 100644 --- a/docs/.pages +++ b/docs/.pages @@ -16,7 +16,7 @@ nav: - phpMyAdmin: rpi-documentation/phpmyadmin-installation - Websockets: rpi-documentation/websockets - Reverse Proxy: rpi-documentation/Reverse-Proxy - - Db - ws connection: rpi-documentation/Databaseconnection + - Db - Ws connection: rpi-documentation/Databaseconnection - 🧠 Brainstorm: - Ideeën: brainstorm/ideeën - Database design: brainstorm/Database From 5fa07f3a8222be3a6a67499ad77ba10c722cf25e Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 19 Mar 2024 11:15:59 +0100 Subject: [PATCH 010/215] foldername change --- .../{Sprint1 => documentatie}/FeedbackRetro.md | 0 .../{Sprint1 => documentatie}/FirstDocumentation.md | 0 .../assets/Buzzer board off.jpg | Bin .../assets/Buzzer board on.jpg | Bin .../assets/DHT11 state 1.jpg | Bin .../assets/DHT11 state 2.jpg | Bin 6 files changed, 0 insertions(+), 0 deletions(-) rename docs/LearningProcessBram/{Sprint1 => documentatie}/FeedbackRetro.md (100%) rename docs/LearningProcessBram/{Sprint1 => documentatie}/FirstDocumentation.md (100%) rename docs/LearningProcessBram/{Sprint1 => documentatie}/assets/Buzzer board off.jpg (100%) rename docs/LearningProcessBram/{Sprint1 => documentatie}/assets/Buzzer board on.jpg (100%) rename docs/LearningProcessBram/{Sprint1 => documentatie}/assets/DHT11 state 1.jpg (100%) rename docs/LearningProcessBram/{Sprint1 => documentatie}/assets/DHT11 state 2.jpg (100%) diff --git a/docs/LearningProcessBram/Sprint1/FeedbackRetro.md b/docs/LearningProcessBram/documentatie/FeedbackRetro.md similarity index 100% rename from docs/LearningProcessBram/Sprint1/FeedbackRetro.md rename to docs/LearningProcessBram/documentatie/FeedbackRetro.md diff --git a/docs/LearningProcessBram/Sprint1/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md similarity index 100% rename from docs/LearningProcessBram/Sprint1/FirstDocumentation.md rename to docs/LearningProcessBram/documentatie/FirstDocumentation.md diff --git a/docs/LearningProcessBram/Sprint1/assets/Buzzer board off.jpg b/docs/LearningProcessBram/documentatie/assets/Buzzer board off.jpg similarity index 100% rename from docs/LearningProcessBram/Sprint1/assets/Buzzer board off.jpg rename to docs/LearningProcessBram/documentatie/assets/Buzzer board off.jpg diff --git a/docs/LearningProcessBram/Sprint1/assets/Buzzer board on.jpg b/docs/LearningProcessBram/documentatie/assets/Buzzer board on.jpg similarity index 100% rename from docs/LearningProcessBram/Sprint1/assets/Buzzer board on.jpg rename to docs/LearningProcessBram/documentatie/assets/Buzzer board on.jpg diff --git a/docs/LearningProcessBram/Sprint1/assets/DHT11 state 1.jpg b/docs/LearningProcessBram/documentatie/assets/DHT11 state 1.jpg similarity index 100% rename from docs/LearningProcessBram/Sprint1/assets/DHT11 state 1.jpg rename to docs/LearningProcessBram/documentatie/assets/DHT11 state 1.jpg diff --git a/docs/LearningProcessBram/Sprint1/assets/DHT11 state 2.jpg b/docs/LearningProcessBram/documentatie/assets/DHT11 state 2.jpg similarity index 100% rename from docs/LearningProcessBram/Sprint1/assets/DHT11 state 2.jpg rename to docs/LearningProcessBram/documentatie/assets/DHT11 state 2.jpg From a82acc526c7a99da67847d109713a8c0a607de70 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 19 Mar 2024 11:59:37 +0100 Subject: [PATCH 011/215] BramDocs --- .../documentatie/FirstDocumentation.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index fa8c5c4..a1ecda4 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -204,8 +204,8 @@ And here is the the board working: ### Python For Dummies. My job was to make a connection between the WebSocket and the database we had set up, and to do this we wanted to use python. I had never used python before and was totally new to the entire code structure and wording. -Because I was totally new to all of python, I asked ChatGPT for and example and some concrete code. -I asked it my question which was the assignment I was given and tried to reverse learn this way. +Because I was totally new to all of python I began asking friends for advice and started asking chatgpt for some examples. +and worked in reverse in order to understand python fully. I went and looked up fitting tutorials on W3SChools. The following were used: @@ -245,3 +245,9 @@ Even if it looked simple, this was the ignition I needed to understand python be ### Python for dummmies pt2 after some intense trail and error, I managed to connect to the websocket. After wich i also managed to send infromation to the database by including details like pasword and such. +I began investigating deeper and asked for other people their vision on my code. +It wasa hard to notice what problems there were, but eventualy me and a classmate found out that the problem was inside of the database itself. +So after fixing some issues with the primary keys and some tesing with the code, I managed to fix the issues for the time being. +Now the code is able to send websocket data to the database under the name of node "1". +This will have to be updated so all names could be sent to the database without causing issues. +But the current code does what we expect from sprint two but I will surely continue working on making it perfect. From 15504eaea6e49d1b6583f907f8664c3c4c8acbb8 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Tue, 19 Mar 2024 12:21:15 +0100 Subject: [PATCH 012/215] Daily standup --- teamdocumentatie/dailyStandupNotes.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/teamdocumentatie/dailyStandupNotes.md b/teamdocumentatie/dailyStandupNotes.md index 87ee9b2..d91b0a7 100644 --- a/teamdocumentatie/dailyStandupNotes.md +++ b/teamdocumentatie/dailyStandupNotes.md @@ -53,4 +53,11 @@ and im going to continue with working on the connection between the websocket an 15 - 3- 2024 { We are all making preperations for the sprint-review. -} \ No newline at end of file +} + +3/19/2024 + +Dano, oop arduino +Bram, nodes registereen als er een nieuwe binnenkomt +Sietse, onderdelen bestellen, verder user story 46: nodes beheren op website. +Sam, tft scherm, rest api ombouwen om data in node tabel te douwen \ No newline at end of file From 89956bc4c880295e7bb79558c6dd44196cac3e5a Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Tue, 19 Mar 2024 15:50:00 +0100 Subject: [PATCH 013/215] Added put request --- server/Flask/main.py | 57 +++++++++++++++++++++++++++++++++++++------- 1 file changed, 49 insertions(+), 8 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index 7da2986..c434884 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -1,4 +1,4 @@ -from flask import Flask, request +from flask import Flask, request, jsonify import mysql.connector from queries import * app = Flask(__name__) @@ -10,27 +10,68 @@ def index(): MAC = request.args.get('MAC', default = None) return getData(node, dataType, MAC) -def getData(node, dataType, MAC): - try: +@app.route('/putData', methods=['PUT']) +def putData(): + node_id = request.json.get('node_id', None) + new_name = request.json.get('new_name', None) + new_location = request.json.get('new_location', None) + + if node_id is None: + return jsonify({"error": "node_id is required"}), 400 + + mydb = mysql.connector.connect( + host="localhost", + user="root", + password="Dingleberries69!", + database="NodeData" + ) + + cursor = mydb.cursor() + + if new_name is not None: + cursor.execute("UPDATE Node SET Name = %s WHERE NodeID = %s", (new_name, node_id)) + mydb.commit() + + if new_location is not None: + cursor.execute("UPDATE Node SET Location = %s WHERE NodeID = %s", (new_location, node_id)) + mydb.commit() + + cursor.close() + mydb.close() + + return jsonify({"message": "Node updated successfully"}), 200 + +def putData(node, name, location, MAC): + mydb = loginDB() + query = get_query(node, name, location, MAC) + cursor = mydb.cursor(dictionary=True) # Enable dictionary output + cursor.execute(query) + result = cursor.fetchall() # Fetch the results + cursor.close() + mydb.close() + + return result + +def loginDB(): mydb = mysql.connector.connect( host="localhost", user="root", password="Dingleberries69!", database="NodeData" ) + return mydb +def getData(node, dataType, MAC): + mydb = loginDB() query = get_query(node, dataType, MAC) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results - cursor.close() mydb.close() return result - except mysql.connector.Error as err: - print("MySQL Error:", err) - return "MySQL Error: " + str(err) + if __name__ == '__main__': - app.run(debug=True, host='localhost') \ No newline at end of file + app.run(debug=True, host='localhost') From 5b327942bede3cf2740b8984c315b0b8acfaf7b4 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Tue, 19 Mar 2024 16:01:53 +0100 Subject: [PATCH 014/215] Added comment --- server/Database/DatabasewithMAC.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/Database/DatabasewithMAC.sql b/server/Database/DatabasewithMAC.sql index 131cdb7..36cbee4 100644 --- a/server/Database/DatabasewithMAC.sql +++ b/server/Database/DatabasewithMAC.sql @@ -2,7 +2,7 @@ -- Wed Mar 13 16:04:58 2024 -- Model: New Model Version: 1.0 -- MySQL Workbench Forward Engineering - +-- CHANGE NODEID TO AUTO INCREMENET IN NODE TABLE SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'; From d52eabbb614e795eb3ccc6b6f5e2e3097aed66d2 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 20 Mar 2024 11:16:31 +0100 Subject: [PATCH 015/215] Bram documentation --- .../documentatie/FirstDocumentation.md | 25 +++++++++++++++---- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index a1ecda4..c522fa4 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -185,7 +185,7 @@ pinMode(buzzertwo, OUTPUT); void loop() { - //read is there is input on the button pin, if so send output to the other pins., otherwise keep them off. + //read is there is input on the button pin, if so send output to the other pins, otherwise keep them off. if(digitalRead(button) == HIGH){ digitalWrite(buzzerone, HIGH); digitalWrite(buzzertwo, HIGH); @@ -243,11 +243,26 @@ elif c == 2: Even if it looked simple, this was the ignition I needed to understand python better and continue my own research. ### Python for dummmies pt2 -after some intense trail and error, I managed to connect to the websocket. +After some intense trail and error, I managed to connect to the websocket. After wich i also managed to send infromation to the database by including details like pasword and such. -I began investigating deeper and asked for other people their vision on my code. -It wasa hard to notice what problems there were, but eventualy me and a classmate found out that the problem was inside of the database itself. -So after fixing some issues with the primary keys and some tesing with the code, I managed to fix the issues for the time being. +I began investigating deeper and asked for other people's vision on my code. + +It wasa hard to notice what problems there were, but eventualy me and a classmate found out that the problem was inside of the database itself instead of the code. So after fixing some issues with the primary keys and some tesing with the code, I managed to fix the issues that popped up. + Now the code is able to send websocket data to the database under the name of node "1". This will have to be updated so all names could be sent to the database without causing issues. But the current code does what we expect from sprint two but I will surely continue working on making it perfect. + +### python for dummies pt3 +After the sprint review for sprint two, we as a team decided that i was time to make progress with connecting more nodes, and so i did. + +I began searching for leads on how to grab information from a database, and used this website to teach me: +https://www.w3schools.com/python/python_mysql_select.asp + +Once I figured out how to grab information, I wanted to put it in an array and look if the connected node(wich I put in a varriable) was already known in the array. The webpage for this was: https://stackabuse.com/python-check-if-array-or-list-contains-element-or-value/ + +This originaly didn't work, and by printing all my variables and the array I initially didn't see anything that would prevent it from working. +But for some reason the given node wouldn't compare itself to the nodes in the array. +That is when I found out the data from the array was in a tuple. So when I changed the variable to turn into a tuple, it worked like a charm. + +Then after all of this trouble, I finished by putting the new node MAC (in string format) into the correct collum in the database so this will MAC will be saved in the future. \ No newline at end of file From 38d34cce9184b2090bab281c3db2e1086351aa24 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 20 Mar 2024 11:30:52 +0100 Subject: [PATCH 016/215] Bram comment --- .../documentatie/FirstDocumentation.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index c522fa4..98ad456 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -196,7 +196,7 @@ void loop() { } ``` -Here I made the physical design but instead of buzzers i used lights in order to show it working. +Here I made the physical design but instead of buzzers I used lights in order to show it working. ![board turned off.]() And here is the the board working: ![board working and turned on.]() @@ -244,7 +244,7 @@ Even if it looked simple, this was the ignition I needed to understand python be ### Python for dummmies pt2 After some intense trail and error, I managed to connect to the websocket. -After wich i also managed to send infromation to the database by including details like pasword and such. +After wich I also managed to send infromation to the database by including details like pasword and such. I began investigating deeper and asked for other people's vision on my code. It wasa hard to notice what problems there were, but eventualy me and a classmate found out that the problem was inside of the database itself instead of the code. So after fixing some issues with the primary keys and some tesing with the code, I managed to fix the issues that popped up. @@ -254,7 +254,7 @@ This will have to be updated so all names could be sent to the database without But the current code does what we expect from sprint two but I will surely continue working on making it perfect. ### python for dummies pt3 -After the sprint review for sprint two, we as a team decided that i was time to make progress with connecting more nodes, and so i did. +After the sprint review for sprint two, we as a team decided that it was time to make progress with connecting more nodes, and so I did. I began searching for leads on how to grab information from a database, and used this website to teach me: https://www.w3schools.com/python/python_mysql_select.asp @@ -265,4 +265,4 @@ This originaly didn't work, and by printing all my variables and the array I ini But for some reason the given node wouldn't compare itself to the nodes in the array. That is when I found out the data from the array was in a tuple. So when I changed the variable to turn into a tuple, it worked like a charm. -Then after all of this trouble, I finished by putting the new node MAC (in string format) into the correct collum in the database so this will MAC will be saved in the future. \ No newline at end of file +Then after all of this trouble, I finished by putting the new node MAC (in string format) into the correct collum in the database so this will MAC will be saved in the future. \ No newline at end of file From 5bf19a82ff38d5c44d8fa25fe81841c96bbc32db Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 20 Mar 2024 12:02:22 +0100 Subject: [PATCH 017/215] bram documentation --- docs/LearningProcessBram/documentatie/FirstDocumentation.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index 98ad456..b963112 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -1,5 +1,4 @@ ## Bram's Learning Curve - Here I post my progress on learning and mastering Arduino. I originally did the Game development study but decided to switch to "Technische Informatica". That is why I need to learn everything from scratch, and everything is new to me. This is the reason that I made these documents, in order to track my progression in this new study. @@ -72,11 +71,9 @@ examples, basics, fade examples, servo, sweep ### Linux and raspberry PI. - To gain more knowledge about Linux, I first asked my classmates if they could get me started. They showed me how to gain access to a server and told me how to navigate through files. - By doing this I got taught the following commands: ~ $ 'ls -la' = show file / folders From cd56c45c476b87efa6354043e501dfbd675fd4ec Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 20 Mar 2024 13:18:08 +0100 Subject: [PATCH 018/215] Daily stand up for 20/03 --- teamdocumentatie/dailyStandupNotes.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/teamdocumentatie/dailyStandupNotes.md b/teamdocumentatie/dailyStandupNotes.md index d91b0a7..2bdcb87 100644 --- a/teamdocumentatie/dailyStandupNotes.md +++ b/teamdocumentatie/dailyStandupNotes.md @@ -60,4 +60,10 @@ and im going to continue with working on the connection between the websocket an Dano, oop arduino Bram, nodes registereen als er een nieuwe binnenkomt Sietse, onderdelen bestellen, verder user story 46: nodes beheren op website. -Sam, tft scherm, rest api ombouwen om data in node tabel te douwen \ No newline at end of file +Sam, tft scherm, rest api ombouwen om data in node tabel te douwen + +20/03/2024: + Dano: Adding comments for OOP Arduino + Bram: Python send node data to database + Sam: flask rerouten to use put recuest + Sietse: WireFrame \ No newline at end of file From 6ce7ac8c970066bdab84e2f8ec145fbc6a153cc9 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 20 Mar 2024 16:09:15 +0100 Subject: [PATCH 019/215] Added documenation about put request --- docs/rpi-documentation/Put-Request.md | 71 +++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 docs/rpi-documentation/Put-Request.md diff --git a/docs/rpi-documentation/Put-Request.md b/docs/rpi-documentation/Put-Request.md new file mode 100644 index 0000000..6e80883 --- /dev/null +++ b/docs/rpi-documentation/Put-Request.md @@ -0,0 +1,71 @@ +# To edit data in the database we wanna use PUT request. + +### What is a put request? +To edit data in the database we wanna use PUT request. A PUT request is used to update an existing resource. If the resource does not exist, it will create a new one. The PUT request requires the client to send the entire updated resource, not just the changes. This means that the client must send all the data, even if only one field has changed. + +A put request is a json its for example looks like this: +```json +{ + "NodeID": 1, + "Location": "testlocation", + "Name": "testname", +} +``` + +### How to use a put request +We have been trying to use a PUT request with flask. But that didn't work because the reverse proxy would reform the request to a GET request. So we tried to let apache 2 run it with wsgi. + +### What is wsgi? +WSGI stands for Web Server Gateway Interface. It is a specification that describes how a web server communicates with web applications, and how web applications can be chained together to process one request. WSGI is a Python standard, and it is implemented by most Python web frameworks. + +We couldnt get it to work even though we worked trough all the errors apache 2 gave us. + +We first had some paths misconfigured. Then we had Forbidden error because we didn't give permission for apache2 to use that path. + +And now we ended on not found and we verified that all configuration is in the correct syntrax with ```apachectl configtest``` + + +### How to use wsgi +To use wsgi you need to install mod_wsgi with the following command: +```bash +sudo apt-get install libapache2-mod-wsgi +``` + +Then you need to enable the module with the following command: +```bash +sudo a2enmod wsgi +``` + +Then you need to create a wsgi file in the same directory as your python file. The wsgi file should look like this: +```python +import sys +sys.path.insert(0, '/home/pi/webapp') +from mainflask import app as application +``` + +Then you need to configure your apache2 configuration file to use the wsgi file. The configuration file should look like this: +```apache + + DocumentRoot /home/pi/www/html/ + + WSGIDaemonProcess webapp python-path=/home/pi/webapp + WSGIScriptAlias /flask /home/pi/webapp/main.wsgi + + + WSGIProcessGroup webapp + WSGIApplicationGroup %{GLOBAL} + Require all granted + + + # Logging + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined + +``` + +Then you need to restart apache2 with the following command: +```bash +sudo systemctl restart apache2 +``` + + From 4cf78ddb0b2115ba473215ac88ac9d84e55d46e5 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 20 Mar 2024 16:09:20 +0100 Subject: [PATCH 020/215] Added reverseproxy script --- server/reverseproxy | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 server/reverseproxy diff --git a/server/reverseproxy b/server/reverseproxy new file mode 100644 index 0000000..567d696 --- /dev/null +++ b/server/reverseproxy @@ -0,0 +1,20 @@ + + ProxyPreserveHost On + DocumentRoot /home/pi/www/html/ + + + # Enable proxying WebSockets + ProxyPass /ws ws://localhost:8001/ + ProxyPassReverse /ws ws://localhost:8001/ + # Enable proxying HTTP + ProxyPass /http http://localhost:8080/ + + ProxyPass /putData http://localhost:5000/putData + ProxyPassReverse /putData http://localhost:5000/putData + ProxyPass /flask http://localhost:5000/ + ProxyPassReverse /flask http://localhost:5000/ + ProxyPreserveHost On + # Logging + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined + \ No newline at end of file From 54a2eef7c5e22b20df7446f6f12a5cf5fd51a890 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 21 Mar 2024 13:22:09 +0100 Subject: [PATCH 021/215] Added so you can change node information --- server/Flask/main.py | 42 ++++++++++------------------------------- server/Flask/queries.py | 11 +++++++++++ 2 files changed, 21 insertions(+), 32 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index c434884..76362b7 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -10,42 +10,20 @@ def index(): MAC = request.args.get('MAC', default = None) return getData(node, dataType, MAC) -@app.route('/putData', methods=['PUT']) -def putData(): - node_id = request.json.get('node_id', None) - new_name = request.json.get('new_name', None) - new_location = request.json.get('new_location', None) +@app.route('/updateData') +def updateDataIndex(): + node_id = request.args.get('node', None) + new_name = request.args.get('name', None) + new_location = request.args.get('location', None) + return updateData(node_id, new_name, new_location) + - if node_id is None: - return jsonify({"error": "node_id is required"}), 400 - - mydb = mysql.connector.connect( - host="localhost", - user="root", - password="Dingleberries69!", - database="NodeData" - ) - - cursor = mydb.cursor() - - if new_name is not None: - cursor.execute("UPDATE Node SET Name = %s WHERE NodeID = %s", (new_name, node_id)) - mydb.commit() - - if new_location is not None: - cursor.execute("UPDATE Node SET Location = %s WHERE NodeID = %s", (new_location, node_id)) - mydb.commit() - - cursor.close() - mydb.close() - - return jsonify({"message": "Node updated successfully"}), 200 - -def putData(node, name, location, MAC): +def updateData(node, name, location): mydb = loginDB() - query = get_query(node, name, location, MAC) + query = update_query(node, name, location) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) + mydb.commit() result = cursor.fetchall() # Fetch the results cursor.close() mydb.close() diff --git a/server/Flask/queries.py b/server/Flask/queries.py index c9aae44..e2da308 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -10,3 +10,14 @@ def get_query(node, dataType, MAC): else: query = "SELECT * FROM `Measurement`" return query + + + +def update_query(node, name, location): + if node and name and location: + query = f""" + UPDATE Node + SET Name = '{name}', Location = '{location}' + WHERE NodeID = {node}; + """ + return query \ No newline at end of file From 3d85220adc13cb055154cb0c9a5d9ce6a23452d9 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Thu, 21 Mar 2024 16:23:36 +0100 Subject: [PATCH 022/215] added fritzing to BRam documentation --- .../documentatie/FirstDocumentation.md | 5 ++++- .../documentatie/assets/DHT11 wires.png | Bin 0 -> 305704 bytes 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 docs/LearningProcessBram/documentatie/assets/DHT11 wires.png diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index b963112..733278e 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -157,7 +157,10 @@ And here it looks in action: Later on, I could expand this code and the physical product to include the rest of the sensors. - +The wiring is shown here: +![the wiring]() +The red cables are 3v, the black cables are the ground and the green cable is the echo for data. +This version of a DHT11 has a built-in resistor otherwise this would have to be included. ### Buzzers .pt 2 I found out how to make multiple buzzers go off with the press of one button and increase as Mutch as there are pins. diff --git a/docs/LearningProcessBram/documentatie/assets/DHT11 wires.png b/docs/LearningProcessBram/documentatie/assets/DHT11 wires.png new file mode 100644 index 0000000000000000000000000000000000000000..c8cb600bfec7c0950807fab83d10cf68d224f9d5 GIT binary patch literal 305704 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
uxlneVBy3-I}YwyDV=MmQ#^Zd?4_IixVZ$BFF|e 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

lc7<8vLH<^g(UGuGqN}gcq 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�}3<=#m* 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 Date: Thu, 21 Mar 2024 16:32:11 +0100 Subject: [PATCH 023/215] Add node documentation and wiring diagram --- docs/assets/imagesSp3/wiringDiagramNode.png | Bin 0 -> 132978 bytes docs/node-documentation/node.md | 64 ++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 docs/assets/imagesSp3/wiringDiagramNode.png create mode 100644 docs/node-documentation/node.md diff --git a/docs/assets/imagesSp3/wiringDiagramNode.png b/docs/assets/imagesSp3/wiringDiagramNode.png new file mode 100644 index 0000000000000000000000000000000000000000..f1b6d5ff0b55618b8f1c997830fbc5cdcb4727be GIT binary patch literal 132978 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 BNOu4L literal 0 HcmV?d00001 diff --git a/docs/node-documentation/node.md b/docs/node-documentation/node.md new file mode 100644 index 0000000..ccf283e --- /dev/null +++ b/docs/node-documentation/node.md @@ -0,0 +1,64 @@ +# Node + +Since the node is what gathers all the data from the sensors, it is the most important part of the system. The node is responsible for reading the data from the sensors, processing it, and sending it to the server. + +## Hardware + +The node is composed of the following hardware components: + +- [ESP32 S3 DevkitC](https://www.espressif.com/en/products/socs/esp32-s3) +- [SGP30](https://www.sensirion.com/en/environmental-sensors/gas-sensors/sgp30/) +- [DHT11](https://www.sparkfun.com/datasheets/Sensors/Temperature/DHT11.pdf) +- [OLED Display](https://www.tinytronics.nl/nl/displays/oled/1.3-inch-oled-display-128*64-pixels-wit-i2c) + +## Software + +The node is programmed using the Arduino IDE. The code is written in C++ and is responsible for reading the data from the sensors, processing it, and sending it to the server. The first couple versions of the code were written by Sietse, and because we all had to use Object Oriented Programming, Dano rewrote the code to be object-oriented. Which is now final version + +### Libraries + +The following libraries are used in the node code: + +- +- +- +- +- +- + +### Code + +The code is divided into the following classes: + +uitleg dano + +### Communication + +The node communicates with the server using WebSockets. The node sends the data to our website which uses a reverse proxy to route it to the websocket. The server then processes the data and stores it in the database / puts it on the website. We use the WebSocketsClient library to communicate with the server. Because [websocket connections](docs\rpi-documentation\websockets.md) are stateful, we need to keep the connection alive. So we do not use any delays in the code, but instead use the millis() function to keep track of time. + +Flow of the data: + +```mermaid + +flowchart LR + A(Sensors) + B(Node) + D(Websocket) + E(Website) + F(DB-Client) + G(Database) + + A-->|sensordata| B + B -->|JSONData| D + D -->|JSONData| E + D -->|JSONData| F + F -->|Data| G +``` + +### Wiring Diagram + +The wiring diagram for the node is as follows: + +![Wiring diagram of node](docs\assets\imagesSp3\wiringDiagramNode.png) \ No newline at end of file From 0ecc2457e74a23f7b9df0284935a4ec98520ee8e Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Thu, 21 Mar 2024 16:33:26 +0100 Subject: [PATCH 024/215] adds future improvements --- docs/node-documentation/node.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/node-documentation/node.md b/docs/node-documentation/node.md index ccf283e..b3cee6d 100644 --- a/docs/node-documentation/node.md +++ b/docs/node-documentation/node.md @@ -61,4 +61,12 @@ flowchart LR The wiring diagram for the node is as follows: -![Wiring diagram of node](docs\assets\imagesSp3\wiringDiagramNode.png) \ No newline at end of file +![Wiring diagram of node](docs\assets\imagesSp3\wiringDiagramNode.png) + +## Future Improvements + +The node is currently working as intended, but there are some improvements that could be made: + +- The node could be made more energy efficient by putting the ESP32 in deep sleep mode when it is not sending data. +- The node could be made more robust by adding error handling to the code. +- The node could be made more secure by adding encryption to the data that is sent to the server. From f2907117bee0fb3550e89ede503a28aa945fdeda Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Thu, 21 Mar 2024 16:34:34 +0100 Subject: [PATCH 025/215] Add Node Documentation to navigation --- docs/.pages | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/.pages b/docs/.pages index d32cd03..effa9ce 100644 --- a/docs/.pages +++ b/docs/.pages @@ -10,6 +10,7 @@ nav: - I2C: arduino-documentation/i2c-ESP32 - TFT screen : node-documentation/TFT-screen - Classes : arduino-documentation/classes + - Node Documentation: node-documentation/node - šŸ“ RPi Documentation: - Raspberry pi: Sp1SchetsProject/InfrastructuurDocumentatie/raspberryPi - MariaDB: rpi-documentation/mariadb-installation From 61c8d09760aea38bb1429a4b3fbf7c7a5be1158e Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Thu, 21 Mar 2024 16:48:52 +0100 Subject: [PATCH 026/215] Bram documentation --- .../documentatie/FirstDocumentation.md | 5 ++++- .../documentatie/assets/myconnection.png | Bin 0 -> 18096 bytes 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 docs/LearningProcessBram/documentatie/assets/myconnection.png diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index 733278e..c711a38 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -203,7 +203,10 @@ And here is the the board working: ### Python For Dummies. My job was to make a connection between the WebSocket and the database we had set up, and to do this we wanted to use python. -I had never used python before and was totally new to the entire code structure and wording. +To give an easy picture, here is where i would come: +![my datqa-websocket connection](assets/myconnection.png) +It looks easy, but for someone who never worked wit hpython and linux, this will prove to be a challenge. + Because I was totally new to all of python I began asking friends for advice and started asking chatgpt for some examples. and worked in reverse in order to understand python fully. I went and looked up fitting tutorials on W3SChools. diff --git a/docs/LearningProcessBram/documentatie/assets/myconnection.png b/docs/LearningProcessBram/documentatie/assets/myconnection.png new file mode 100644 index 0000000000000000000000000000000000000000..0869baccd000ce9bfbda21d0c711c9014efd2975 GIT binary patch literal 18096 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 Date: Fri, 22 Mar 2024 11:52:51 +0100 Subject: [PATCH 027/215] Fix import statement in node.md and remove extra line in main.py --- docs/node-documentation/node.md | 2 +- server/Flask/main.py | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/node-documentation/node.md b/docs/node-documentation/node.md index b3cee6d..3acfcfa 100644 --- a/docs/node-documentation/node.md +++ b/docs/node-documentation/node.md @@ -25,7 +25,7 @@ The following libraries are used in the node code: - - - -- - ### Code diff --git a/server/Flask/main.py b/server/Flask/main.py index 76362b7..c8ff4ac 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -50,6 +50,5 @@ def getData(node, dataType, MAC): return result - if __name__ == '__main__': app.run(debug=True, host='localhost') From 4708c9c71edde93c58711e1ea3e84013aff78898 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Fri, 22 Mar 2024 12:07:50 +0100 Subject: [PATCH 028/215] Stand up note --- teamdocumentatie/dailyStandupNotes.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/teamdocumentatie/dailyStandupNotes.md b/teamdocumentatie/dailyStandupNotes.md index 2bdcb87..c514a22 100644 --- a/teamdocumentatie/dailyStandupNotes.md +++ b/teamdocumentatie/dailyStandupNotes.md @@ -66,4 +66,18 @@ Sam, tft scherm, rest api ombouwen om data in node tabel te douwen Dano: Adding comments for OOP Arduino Bram: Python send node data to database Sam: flask rerouten to use put recuest - Sietse: WireFrame \ No newline at end of file + Sietse: WireFrame + +21/03/2024 + + Sietse: fritsing node documentation + Bram: personal documetation. + Sam: Rest api improvements + Dano: prepering for retro and making docu for aruidno + +22/03/2024 + + Bram: Fritsing, documentation for code + Sietse: Database + Dano: Docuemtation for arduino + Sam: \ No newline at end of file From 11f9f53f6b7be20534ed77122b678316336fcbc5 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Fri, 22 Mar 2024 12:28:23 +0100 Subject: [PATCH 029/215] database documentation updated --- docs/rpi-documentation/Databaseconnection.md | 56 +++++++++++++------- 1 file changed, 36 insertions(+), 20 deletions(-) diff --git a/docs/rpi-documentation/Databaseconnection.md b/docs/rpi-documentation/Databaseconnection.md index 46f49fa..52df974 100644 --- a/docs/rpi-documentation/Databaseconnection.md +++ b/docs/rpi-documentation/Databaseconnection.md @@ -28,26 +28,42 @@ async def process_data(data): Then after this we code in the infromation we want to put inside of the database. The data collected from the websocket is json data, so this has to be changed. ```js - cursor = mydb.cursor() - // the segments in wich the infromation will be sent. - query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" - // the json data collected from the websocket gets collected and transformed into data usable by python. - mrdata = json.loads(data) - //variables get the different types of data. - mrtemp = (mrdata['Temp']) - mrhumi = (mrdata['Humi']) - mrco = (mrdata['eCO2']) - mrtvoc = (mrdata['TVOC']) - mrnode = (mrdata['node']) - //an array is made to holster the different information clusters, for the time being it holds the infromation of one node. - mrarray = [(1, "Temp", mrtemp), (1, "Humi", mrhumi), (1, "eCO2", mrco), (1, "TVOC", mrtvoc)] - // a for statement to go trough the array. - for i in mrarray: - print(query ,i) - cursor.execute(query, i) - //commit the information to the database. - mydb.commit() - // if the connection to the database can't be made this error wil show with further information. +//Making a variable for the database connection + cursor = mydb.cursor() +//Making a variable for the database connection + MACDataReading = mydb.cursor() +//find the correct section and interact with it. + MACDataReading.execute("SELECT MAC FROM Node") +//the query for what needs to be inserted into the database ( atleast where it has to go). + query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" +//the recieved data from the websocket is json data so needs to be changed. + processedData = json.loads(data) +//variables about the recieved data points. + processedTemp = (processedData['Temp']) + processedHumi = (processedData['Humi']) + processedECo = (processedData['eCO2']) + processedTvoc = (processedData['TVOC']) + processedMAC = (processedData['node']) +//change the recieved macadress to a tuple. + MACTuple = (processedMAC,) +//fetch the data from the database an[d put it in an array. + MACDataFetching = MACDataReading.fetchall() + MACArray = list(MACDataFetching) + +//see if the fetched data is not in the gotten array. +//otehrwise insert it into the database directly. + if MACTuple not in MACArray: + addingNode = "INSERT INTO `Node` (MAC) VALUES (%s)" + cursor.execute(addingNode, MACTuple) + mydb.commit() +//the websocket data that needs to be sent to the database. + pushingDataArray = [(1, "Temp", processedTemp), (1, "Humi", processedHumi), (1, "eCO2", processedECo), (1, "TVOC", processedTvoc)] +// forloop, go allong the array. + for i in pushingDataArray: + print(query ,i) + cursor.execute(query, i) + mydb.commit() +// show me the error it there is one. except mysql.connector.Error as err: print("MySQL Error:", err) finally: From dcc99c125886486b1bd2eec90c951a08ef096cf1 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Fri, 22 Mar 2024 12:35:22 +0100 Subject: [PATCH 030/215] Add graph class and extend liveGraph from graph --- .../brainstorm/SoftwareDocumentatie/graph_classes.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/brainstorm/SoftwareDocumentatie/graph_classes.md b/docs/brainstorm/SoftwareDocumentatie/graph_classes.md index 5df185e..fc9f604 100644 --- a/docs/brainstorm/SoftwareDocumentatie/graph_classes.md +++ b/docs/brainstorm/SoftwareDocumentatie/graph_classes.md @@ -14,11 +14,21 @@ The graphs are used to display the data from the sensors. The data is collected ## Class diagrams +### Graphs + +```mermaid +classDiagram + class graph { + +nodeId + makeGraph() + } +``` + ### Live graphs ```mermaid classDiagram - class liveGraph { + class liveGraph extends graph { +nodeId +cnt +timeArray From e5d2f23d5912c1cf3da4360775ba075901bee210 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Fri, 22 Mar 2024 12:45:02 +0100 Subject: [PATCH 031/215] Add classes and graphs documentation --- .../{graph_classes.md => classes.md} | 53 ++++++++++++++++++- 1 file changed, 52 insertions(+), 1 deletion(-) rename docs/brainstorm/SoftwareDocumentatie/{graph_classes.md => classes.md} (57%) diff --git a/docs/brainstorm/SoftwareDocumentatie/graph_classes.md b/docs/brainstorm/SoftwareDocumentatie/classes.md similarity index 57% rename from docs/brainstorm/SoftwareDocumentatie/graph_classes.md rename to docs/brainstorm/SoftwareDocumentatie/classes.md index fc9f604..0acf0e1 100644 --- a/docs/brainstorm/SoftwareDocumentatie/graph_classes.md +++ b/docs/brainstorm/SoftwareDocumentatie/classes.md @@ -1,3 +1,55 @@ +# Nodes + +## Introduction + +The nodes are the devices that are placed in the rooms. The nodes are used to collect the data from the sensors. Every node is connected to the websocket, and sends their data with their mac address in json format. The websocket broadcasts the node data back to all clients, and since our website functions as a client it also receives the data. Every node will, depending on what node, be made into a class. + +## Requirements + +### Sensornode + +- Every node has to have a unique nodeID +- Every node has to have their corresponding sensorsvalues in form of arrays + +### Feedbacknodes + +- Every node has to have a unique nodeID +- Every node has to have their corresponding feedback in form of a 2D array + +## Class diagrams + +### Node + +```mermaid +classDiagram + class Node { + +nodeID + +processNodeData() + +updateNodeData() + } +``` + +#### Sensornode + +```mermaid +classDiagram + class SensorNode extends Node { + +tempArray + +humiArray + +eco2Array + +tvocArray + } +``` + +#### Feedbacknode + +```mermaid +classDiagram + class FeedbackNode extends Node { + +feedbackArray + } +``` + # Graphs ## Introduction @@ -29,7 +81,6 @@ classDiagram ```mermaid classDiagram class liveGraph extends graph { - +nodeId +cnt +timeArray +tempArray From 3d091cec980cf6f00b0bd39b068e8a7fc80a6a24 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Sun, 24 Mar 2024 15:01:31 +0100 Subject: [PATCH 032/215] fritzing and wireframe documentation updating --- .../assets/Buzzer_board_fritzing.png | Bin 0 -> 220153 bytes .../assets/Buzzer_board_wireframe.png | Bin 0 -> 101269 bytes .../assets/DHT11_by_button_fritzing.png | Bin 0 -> 202571 bytes .../assets/DHT11_by_button_wireframe.png | Bin 0 -> 91043 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/LearningProcessBram/documentatie/assets/Buzzer_board_fritzing.png create mode 100644 docs/LearningProcessBram/documentatie/assets/Buzzer_board_wireframe.png create mode 100644 docs/LearningProcessBram/documentatie/assets/DHT11_by_button_fritzing.png create mode 100644 docs/LearningProcessBram/documentatie/assets/DHT11_by_button_wireframe.png diff --git a/docs/LearningProcessBram/documentatie/assets/Buzzer_board_fritzing.png b/docs/LearningProcessBram/documentatie/assets/Buzzer_board_fritzing.png new file mode 100644 index 0000000000000000000000000000000000000000..78385bad14b119e93096094fad2bf0a61df0fb42 GIT binary patch literal 220153 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 n6q@MXof8ubdFELbVWmy#L@e;Ou82rs| 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 tv_GExqu)vKz@h*E literal 0 HcmV?d00001 diff --git a/docs/LearningProcessBram/documentatie/assets/Buzzer_board_wireframe.png b/docs/LearningProcessBram/documentatie/assets/Buzzer_board_wireframe.png new file mode 100644 index 0000000000000000000000000000000000000000..98e94dfc43a6e380642e04b38fbe1d50c10f5b33 GIT binary patch literal 101269 zcmb5WbyyZ%_$`dmozmUiozmSY-GU&9(%mWjNOvP0B8_x6k^<5xNH?C%`}%(8cYWtO ze|%ny_&hVSXJ*gd_r315);2;-MHUr_5D5wj3RPZCN&^ZCngI&xc?|*__(qq0<2U&A z?1P4^1XSf1@gDd9^IBY4915x?7Wv)`7JNp0C->?D6cm>8)Anq|n#>&v>QAA(l(?3= z@nI&cH_jY(zn_!akL53VQIa*dEE=tHlYY6qii*fHlj}GvIBc`#y~w?Vjdmxd6s~w} zn~#nwze1qokFZ=NE!(}5ezY(DuyS-;9XlRPCm_m)V#LPBf>U*SJ-@KX$g+?1;_XW* z$g?bmF@>mGn1imh{X+zJFQGzdBNUFBi4f^;OWoSG>e(1R{23%9Yr8q496ddKlu~%l z$W(vDh~wcRdU+W*5u+(YHBW5)Q8KLZHFf|E1xrf}W;=`6O24coZC@9jpP#1(mm(#A zb!uMQ&RgaXMxN|mT7J>cut+Rfu*;Q)0_WcNX3h~NB(&40wWBSQ*ThW~aHFz6NhJp?7O$TYs|?+2x{!2cg7C>2roJ>Kt5 z=7-h7!N9_rP2`BzE-x$)NJruJ&evFA;^Gz^cCwG8`~Ph-HFRJ=PD)mGcuq^a#iBn( z@2dkzk#c%y-Rp6M08XnRob%&VlcR2MM!g`dn)WT*X7|5Zm8J`%zt+gXV~-}c4s_WcUGwf{OQd| zS!i^k0!@Z})-E$&ZTA_-6#7~l0@@5wR#Gb8S2qiwF#GN77P_pM>8~#(O@x7I^QK>7Xdd*vzu5^7M3yPucP+uL><$&amBtv`&OTAP#& zzZ*3^C%Oc)20u8U1Uc&e7|wbp^C(jx5nd`SzLI3545+qvbZ>7(*KOm_UbQZN;<=E| zY*(cl3u@WDgM=o#|9QA7q+e+FX)%nAj0`L*Ll(WW$DmcsVqQvOH44lU@fvD4+2|iG zHMXYA%QIu|iM(5sw^b)=NM#1If^11CN$zd>pv;e-pQ9i-6Yty`1#CULrDggNEF@c0 zf=Fl1-%V%~Oi0QN6UC6usGy;xt-Q;2T0&?H(DniI@AH4L{F<0ixXL{p27*Qf&shf(O znQ|jMl`+=S_F1I=R|j~Ldud?#i!dausXsd~RgHA1rt9TAl&?X%EYOp+{#~H<{W@0c z5x-2QBH;j1VK-lGR%=Rik-X}A$Krc`BHP45p^_yUZ(B_)-om@5&o=?kW$=zo)8B2JG% zubMm~^UE16J4!z5-|xXplGl8vq(J#jDbmW_x6lRre%h?~X?q2y6qS%J#D+&8Pc$cZ>RQi} zf{_dXY-o5ity%wE$uP#Ml(|mBg81w6X;qH5i`-T$H~$^pkXlaFKH5V`g9&aY)RF(d zG~OKCAage*cf`|12jpRR{?aab?di7S|-bnUbn&<9s&OYgWd$_wg`Pm7rRj#Lg9q)2Mtnhj)BOp0>4p|y+Fi}F92=TH2+@(H9BT68RFl%51fKIy(twY0QnC+zO@D&p^18wNlVRl74-U#&&Fj0y$5lN*XL$zw-#ZKB0E@%bs|V{HKG!t1Q5aPrwIhBMO`L`)BR$cq-YaRt24R{a5|| z7_~ocC7VoCnTXx!D}x?|2g9VmD%}=jmv?S%s@0A5dV2WQqiG?J4|m<8qb%BQY2O|p z{4*fHESM4&d%UKy9?z;M7YR$ybpEyYf=cG2ze=&Dz9#zr&agdBM?VB+N;TmR=Bjk{ zHOT(%>6vVCb9_o=L2#(GZ){iFMMSTELT`N~2$esMdzpK_Q(0N*6r#TRUowfXn9P#~ z^AsB7N$c;mo)>TKZ+5Z~kdQQ10?bm*QNEKd*1eAX7@H4+~G?-7SnxH;W&`nAYY zmITflTHVM?L`mczH`6H7VHr(0(L?^5%ht)ed!F)jBu>qn-13(I9lYtL40+0O;3tI} z_U~aJv%)B43clzLLkBrc&C`sI?$?`Vg*Ze;dcpg>#HBf@Vd)Ja5hd(IKA}2l>SQ3) zM+xkAQ~lhkG*Zu2b3#!e#G^&}Zf6h&`Tc&W8etaM5+)f*tdi zfLu@aCR>9Mjz!bBUfeH~dU&+$RG_7)rr*xf)fjn=#ia;&Nxj4uYm2y6`4UZNgm@oN zX2U>^N%ytb86&yQDJ(5X0|zjCv1xk0wF#-Xwj4~5Zg_Rqw4E23o14p~^x%2@o5Jg0qQ=+5OCwq&g?%ao3rmO3`M7vJV)A{O6eJaJeO4h%r%<8C4Wjk)khcOG|7myI*an z2VfY%cng0Kf-};iKIFM95XPP>%htWUEP#PISYsNK^t>#H;~Q8qGEh~3bV8w{iZF0f zDr6C|h%f+LycdG-1Ok)|R3llL70!JKW5OfbzpGoQD#WR@OiC%--K=;W56t7`8;7rXb@ELH*O0!g9Fv*)THj(mTvD%-n)c2k}M-@MnS zB9kuUE$wiD%4)KQeG$k77LWHgjXrn0NG}+JMSX5t*VTDGTpqqkwZ1wIiOD%0#C8~Mt@`@#ng`zr4d8lwF zBDP*A&RKijcCbdp&TVgcXDbYBf2*-d6wp`5Q=zmruF8+CZ*3K}c7M3Pzb}6@%=5Xs zJZ%e>Q`c9*VKuz|G+t+&%Jn+t6iwdZ(NO>C`|lxHV&}wDSPiL4<%UhCAqW0=ZAIN9FaxvMj1Y zCF=Q>ccq%e5L}mkE+ng}u+bO&NoU(7mEXzy$JJtm0be1HRYAjOLA3qre?u|=O%%e* zOqgJdTKyfT|9gxsv@v%-L7-x={vJ{xG$%5S5 zGX*}#%qv~e8#I)=C#6*uH+|R{%9i@-uw3naVh*rMLG!2-rS#i*7h8g?BP)`>v*N!i zf|*f;2WCYT{E`wa|2yNmkYX>6r@}I^h{Mb1%V|5-_7!jJE~k)H$%8RJ>s$r$=F{B8=e1AC2+ZSsx{0a8(Rz!1v$_!uT zOyu3ViyIJO@@zHd?PqRB}(!Y4$F8%~n@+r?h@M#bJ2_Y1`dJ0>` zs@dkpD{TtHA6$=qFd$Fe+}tp*j4!l#eI0QyclF`=r?cCis&=Kc!Z+VP)2rn`=~Nk4 zfS5F;&1*M%7$Wey2fS2Jk3(+`eL@D&Q&%4#478e>n(*-O>NgP)5$e8CW}Kuh2eZ-u zL;t>9ay0ld@l$^+L%=G{ar@%mwnMO2>%%AZxY{1fA|=`?beuu6_&)3;WUF z_s5sv9T<_Mot>ThzW4lwhKA+(^!!%|SCj6<+<(9H zfTu02mNUbrRi1A5@q&SYF&)nmQ9%AZXW}RS%wo(RhYX9B#h_t^d77Zx(s{+_%1Eoy z@KvAltGbyIbxCW44N5O18EV-W;?pJx&De@pqL0@WH(r&Mi&mne%>Op5Sz|7pisk}p ze1$06&vWo(-sG}Q1flA93IR%4IHz%Xb;SJdUKT}cdD5eFmmpq&zYA;!s3cZ!(oSEH zkg(Ws*srt-be0;Ubn8W^zy}Av{Gp~0G&C{8=IN(TN%ctvfTIJmfBL>(cq^*bTfLJJ zDXEy@>FxO&d?k0FHC+|`neFFaruzw%5%UEsv7n`=-&vRKH}D2%4V^?W8`oQ{z~=I< z*WG;;msG@)nyYvuOT^$v_Ctv6qp-4&2f^o*hcTgJ zQ-GFBbUU8uW_*2K$?uptQ_ipIeL6@tR5sUd?EQ!4XeGqNhCZYB0fQ!MTD7(H9gCZT zRJ#n#{`IE&C5iwvbUY8W)TR8mq0xz+ci*qWg-;?g0sGXcYmsLWi7Rhu(-iay6<*vl zzgz3#G)@Nv`zrFFL8VbkD1&Cv!1&4KrH=mh z?)#=5H!uYhdOdiaD)Mc4(~^Bk8hUPGQU?`KbjMF}bj?pxPUpaXiAoGAqLd~hEiJ7P zM}I?iGBK%95WG*t!^3;Nrr!0l4zn-Rm6Aryu*&kM9W23ha8zOvoG-q2kH>^Ufs|CL zRAiC_lN$cDu>-3UWug1pz0J(E$ViHaY^5skA8g!_Y~(hT*e`ze-!=Q*y}$5n-Lh_N4MXXX)5qi`NV zGyl0smRnK4719B+PRI#`FcM0 z_}w-8rJA3LP{~W%8VIK14$_OC``e-2v7}~o?7w4%Di+yKc1m|wx^b$@Y2&Fi%s-}~ zO;nFUxQkUYrMhojHtkrXBiq{AluT5EU{2H(3!dP25IlMkPy6nN8QONa8}petd`|md z0GL2zi$K@PeBJ4p?~cI$lDi;kK06$Q=Ph7wxFU%RUTKn<+2cb?ojbBL#pa+ zhxiru@{+!|57vdUzJw3cMU6h@TlVl{`6Y{-Go>8^rd`3p18pW&!$#Bknwt2z%Ec%Q zhCXZaRP`KxC*5emz6zHELIWW|LXq`fXU$LhF3lHC#)M9}Xp@; zR;kFTJl5^;!mXC$c1`{7GyqII;X(aoR>c3ZALqI=+tBtWAvXuDDu>e)j2W3da=Y)J z3+ti$?oYzX1ywaWjkf{VoNxCL0x%Z6gLwgDh!;;V(ne%CYQEKqDTY{}{Pv3_+fjf7 zpJUh6i3Puu6!~K3v+?)aJ-?pAVlZUky@^x);kM9ocXxd^eDTu61jcGS#%tYIhiE_j zv)1R}hPO+AgYJ5QqKfGZUy8h}s8tn0Q;&KnY0RE@fqxl{m}Ke5MX5;9zk~-Zj}($J zd=aFbJ48l1n7y;osIkF=>nKBvOo`-yKqvp|vmWNB z7UyT5wKZMUV*O1s`O%N^jx`Cj{=I|;S`=gsa2N%nB%S|J5Q!4=i3tc#jM4vreiC2~ z<>hg~u9*65`G}7nd(QW!b5&*b4;(ulbgZug-HtM*%q0LI0?8!?5t}v#lm+zq^(6p| zoh$v>&5u>9HWe?VaRMFs36MDi|B?})&~HT`ka2ZoGrroBE|^$V>9dvCNsw0Pn($GI zYFZbFf>4{rCoqGKk=4g$08EE?2+|7(&w-PZleixKR;yQxK4r+%nx_8!Ca1#>euj6< z0OSLdr4g|`nx3ze${E2rv(~?J`D&B)wNDy3f}?cdLIOUv_$swiL6K{g6qR#P25M@(DcYH897Mb5|dJeO`AAf%3LfV^hstlVz=l+@jmIr z1C)dWNKG6cww0_@IZwMm{(ybOJaunuS$=nWtB{{Od!-&?56hV+_HeE#kZ`r|I$K^` zyzlS{0gEVg6`S`)Hc|>pcZMy?z7~$9wA77zzeTO3H#1N(w31d-}$NA`*8`&pgM~ zb~fQ08}2I2u*++3pjGZLK=B(ug*ZJv(dA^IfhFN<3%h9q36-^2l3A}B3eX$zAzWX6 z4t-*(3Ma=Rphntrmyf$VS~h5yUd1N7Z8eAYxdMEQ#;nqWRtx}rgU5^A-I6hcX(5}c zVh_PZ%7n_hPW>l7bS;Lo&c!fVH7X+16@S&MF-P?E zl~62H__Ud0P}E!UEaPm6Q%f=608CJ@$;y-`N;K`+&6MPp(~PEYSXeq-pY4n@vCsm1 z_^}J0&(p($AV|`=*0&El)KK;n9OkyD~CJ@ z&W(Hel+(A`0mx212*$9Hfrp3R*c?m*RZs5fi!Rw$UNIQ_G8DCznf@Des%6G>G(hF( zd*YJjwCHGF8dg2rUL^XB^R0R(ZhleZc{h~IR#l#g&tV>XZ$$AKlC*>1ME}+2bPx(m zTxY>d^>DQtl4&sD|cl^PlN_MJRiHzXFwv)4*47SCP3RoCJ6&k{2Pq_+N|Qh$?5q_$;`Aj6?N0F=vT zhYMT+()(McQfY$HA3Q*%?*lX`#)=5Z4prl5Y&w;JcwfR!EOcA}bH~u47l`rCDTpDs z1A;6*x99PGK?F$7Bgt%J!N1k@u|gkR1B>W-!elN6qNW?(8UzOi5Ab?+IJVyzd#aCE z4ksylVwY#KWnyqkJ1o>%y??VXvNsLU!QRXz5c6%lN0W&rq$ws($=$=@Hn}}oZc&Ir zJh2bJP@a-J;XH3cBN9aTussrgtTf-l@6QBv?t+odVg$~;4fbg{Kzwr?;9_F44n)%5)V z%ie)CFBdA*J2(LeDsaDAcH0^U4B7BiOe7~PDi(LI{l)%wr{_glr5e}v6BrEb2)AAg zNrAyC_Z@UJ6JFChhYM$4r=AlFIwM#OC-nl#d5b$7z?C6eb80MvG)`H{prWYWFyC01 zm-iMFaye?{V|gLS?0^~nh|eLha7vu^p3m#j{wA%cc(P^^M+Au<6$J&t1Gj6a$*gQX zlGy>SxZJYoy-kT4rt?=gf5eR;!7|@< zEA(lgTjeq0=YrQYv8aTF4dG5Se~b2hqK54aiM#Tzot*GWd`amDfjN3L>-5&2f7((g&GXpOHGGes|t+gIy?8WpD zUiV_z^%_s*+Ci2GghA@{8A%rcn$DPfBnlUfi3TWy_dey}lPTbuKB~}1bRI~M@?zx? z#QQzo$Raf-C&#&;h*ov`IAu<>Ny}5xHzrrYcP(0Cq9o3evk9>1oB2Ajh*9Nt0xCC! z8yVI^%;%Q7GbGrbfRLkj@*R?Q5xEDFo=JyqTLv0L%8K~Bj(TE- z^)|D{qMy-AB<%Tu*ZD3*8xQxCDrs;q`J`muF;L?Q!YJDDXgTDZMLelU}-B+N`!eAn#1*)7xZ`bM#ZA83}EMKZNPCpbD!q0RhCyTzU~$-#`J*TyqLI8y7`V{6ewe4Abge2K!0Y{etiDd*24+?yTi1K(7u`PteM zGM*9t!!+2@8wbD)5AS`j{rtj1WWa_N;7dlov{K!wtc)=!WP+KCgE`fS12fX5SagqP z;n(7u+!uu&)3lB5CxO@HZ>xI3Cm=MDsvK;Vhu9GFt9~*+NY$v?J-mmOoPQi%kOot_ z$IWpr{0dNR=w%xQ&&18?9(N|pN6(+1LdE~4*J*8>G7o&@y>-}N1BzT^nU@3{qer%l zAh9y0L9=sd#(UXpA~H|@^x{dE{U1DIR92S*dWt}H-y8>8)^IlB$#kq(jz?V)rxCaE zgV)X70JDq)VEqf=)sT17^3H5|_vuw4ix{SSdV%Z+_fL$Ro7kNJ`Oi`biC~b;f>glO z$>oz+BD8V`W&BGQ(RB;bUcM+oEPC!=k-m?0j@cs^mz><6KCat<_v4DO8J&BbaQ#Jm z1Yk{LRNXDdKjxcqI78W2pKLX@&1255)G9uK7aYaoghwqSS8~34Q)5_c_z2_i$p-SH zb;3zwZRlEaVt`31(7*L14&Hffa(FmdiVCIK(T}DnCW&5p$K~cid-;^>Y-xh|5??4~ z5~|qI;fd9ggTR}0Vi8Cd^sRyMqv*)=V#-|5n8kfFR=vt}2Z(wz|JW;RaZd>+gs*yV z7ga(rmAfgsQ;S3y2S?2}AFlHjh)!}V`lbLyEP`@s?o10#nZ&_%sitx;)Z~Fn z?R@^iJGy7my(FcdTX@WagTrqe^H&RPt)Ssh;v^zk`JxHapZ{j4!&mmh=dxDH2+tWW zD0RRo#xl{0&&fRwOhAmQ=JZNS2rP<;*9|QynG{fvGsUVW^Vz{UFc-CEgp$`>-@Tu> z;gxj4q%NSh-U}o1OPGTL?vR6*(~_lsaz|WdnP+ikt;(gGZ$Ed3L@;;v5?2I83Fynp zux!g2X=w}t_`KELRl_egKfLaJzBoQU-srR;^Hibsn#Um4y!pKoQ=xn7Pv;fYlW zsqh+`$-L8JA`#E}AEenK$aq6n`#+lMrcN`GfjSl%JUG|$EdYA!7;%ki&b9+^eBg^f zSmaGt!EKMTZH5Y&4WJT#d{t-tX=#@jnS;t?dfWt$Eq+Hx!1-Vn2yCBW@jfWw+H=v2 zo@g;{r{K^0Nfi?l7=A+AZgM1?<{Yv_x2nW(pTprXgqJhTiq%&F|HDOP!}Fe*bOxiC$bof{q`MA7q;=WI%+5{_ZYVHe0;lA9LeBG^SrtMN zRV$|sC7fxXkgYhKO&^quaTv~tk3mqBNQ!)l6UWy>xcfjq7F?tqKlc)U%Bk~$dr0+_ z8Ny^u*TSIsxzG4G^b3Om28|^0aj1u1oADH?7*?9IZ4{#0IoygUV+( z$M>whp&+MJRiER=rCsplPYS*7M(6*p2eyD}67?B~YKMVbdA2*x^>YYoIt zVQO;1a-EAzdgPM(d6Eh8K_VCWjL*H+@7`hco3U)VP*vgiBqw2v+rsR1^@tQ3b%@Vl zDaU_s(r7x43ePbY`&+fg+Bl)kknv;0pb|-Bm|7LjZFa%Fw=+9FT$p0o)vlprblZEb zRaSJELn^@>dG?dFlB`hN>R-!D*Rpm?eGM29s2+-?9klenZVzxOl@YnMlZ7wN7iM4j z2zY#8Xt8)RYeE^z|Du>CSgupo#D~VDO#XkH0sd934%}ZAltjNO_|Nf%XwgS-=?c7R z*756Gl`4b_!A}Q_4pT}aOGvM#8OA3NgA@Iw6>3cZH?vYNC(mXn6`$aV75i6d#_vP= zf9zKAZxgNg8xL?sTc&=N0}banD=>lL}==Eq0xf%Q^p)tQD8 zBdjuY3XPD*WCGSCawjNK!j*R&BWWSunRMyx0Aq~XtANx01GaK2=y;j`>dLzOq8%zIh{O}J7a90vsgzd3 zp3OLTv=^CQ*b&XUEsLDeQ3P@@Pf(-%nbE7HzYc@MTX^cL+~lIQ0%|-KrBq~;4CU5l z1a`@*4HBRbevT^itu!ntqrTUp7Ckm`%5K#oVcNQm3=z$LU8wNe*|pD4TzsB9_?~yN z=#!Y$c}flbO>gp0nrECGBF?w~3%rdn1_NYUt+Es$nl>TqWf_sf*x`a+-J3#hWde(O z|9eG!7fz@-ckCearUElZE;qohe_O(rC~mMDmGsw$O3oSP+*l9wm0$7S%O&=8&q zlZ$xq=SXHnlC?j>y}Tt>oDY7Zxm(kU=_m1lf6&e2H-&CjdxU%Bre5DB;`ez$j&_?a zBSAv(ZfkFkVbO)qC-Ds0#on?R1^>E9ocKjV5o}04ChI0W>Dm?|=OId1iMtt4c$TAm zB}+*o6OO|N7}`Ew>)fRj@hl zoY}Bw8rE0iC;T}6tYKx$X3N@qMB706*w;eJb8;|vLjThdxqHQH;2;?~WM50RVgGnT zY37B!Zv*sI{{0%+1%l-JKj6P9;iyX7j49yCpXg zF0((&fD<`=?u#38$htR^yQaqL;U_zDoH4D1fJ%FxwsnFC%L5X%n(fmc3+=7*Ul8WX`i zDQ^fK)ZZggT2P%VFAom9%|0$P zwTXh3-0AY^LV^E8!|xoCe$=8xVku#yb8txN?D7q4UbS$1R1UcfJ3=XXzlj(SR<3OQ zQ$zYUHV%z`CwX}!zN8=~33$I{O0P=_3NZNq37iiM%p&y5buN(SA^7RXAMOpzz8W@s zGLF`$>{b7L%fM`OLwE1od0ndDd&smOI)D0NLP88nTcsmPq4;2~*qzUG&4=p1uji zr`9$3uAEtvtPWYV=UYab`gj>GvHdS64L4ja(vf~TKAD{Fg_U}bmMno55|cLyCilmE z@9y2*kQ(5Qk~+vpiCDkJzqG)oJ$tJ8o>&p6&QOedY;O!jvZ|!45NXwo1#FQq*lSaHt(Kis$^JCH-YA0#t^fTJVa~Hr@5Qf}Hep#=n}LyHF@D$gjJFG*g0zKOf)tqRuqmPN62@ic>hCLGCY ziPf{=e$}Rl(QJZ0UbQ%R(o5L4tk{8~R2(C#>i93*BjGc3?HDk&(v6R_TzJPNDhHRG~Yh;jcpI59bV&g;B`17&qJlerB5qG^c;Xuw{XRLiNSJ~2-91BfiE z-e=LZ$q|z#K8SpLU-2$;FFJ$ZJ4_2$_3L*-d~8lmPbF&1d*4NVPVURstul7H+Z@is zUZ}H*uR;diAY?65#Q+$E2K$BeOCB}==52s~BQknZyG&>BD*R8@(b193L{2BNISn~E zRC{|n+o5b!SQxzM?Jkv7)utwJ$ld?$MjuK;#CiertxiBiRMtZQ#W_A()=zTnzG*{L z41BsisOo^U8C(8&d;rc7Ho&vR0FsueqDo?wl(J08N zOB^n@;H|8z)QV8l3;{o>G+uskAE$?+r_r4fLW0}mp}FiH4Tb(~dssHIZB_(HDgv9w zL%i$238UBQUUM%G$I9_~j2Kw>$pFQl$bB7AQbK{v_VUtc6wdFp{%BZ1urBt zzp$_##n%23_zKva)}@-F$tCYVDLRxE@#OOYrVV~TSPdofMK99GNG!B{)~$*G?3wvM z+|EwO8~cx>B7|JlBj5a=L0b|Txq?$-xh6*Ac5g4{Oq>8e{%S$EDV1^e&St6r5trHB zcsK|qH7Y7f_|mL9bg%(%g>vF&d&Sw5x>@&}6%-!1yLG^8!PJ4*;$Hepo*RcnU(5Fo zHRbN{J$Us6rXEkEe=a!HW~qS%*fApXzu0YDeYZ0iIQrsoX3g!mV%UB(Q;H1?q0#TR zhStC!u8nS08p92IwE^rn|5|eDyk7M!9vbUHe*V^Mu4}|}LI#s1G|Bha?7nTUD}^;2 z#1i$zFOBEqtskucD|Esw7sk9&^je`7q4C+sXITEo)dzR3xGyQSYtkBYb-7!I#+%Z) z&La^08}Us^?(m;)V;9L~-qM5u z^ZUOrV&ENtx;#MXb*63V!r>5}i&WmXX*K#=jD6X3$~yWpvVXl|vs5r)H5!EqL;CCC zL}PkijYaZ{i;GXdY6gX}$&$H)=&pCXz>cS7%R%UOvxSG1&_}15MbAPDhem93etN1g zYfPhuXN?n@>do@ec7rb4o6>|Xg#Gi@YZ5@B*~$|?8P7J(zU!I{u9|#x$ec1?Uvli= zL0T&;rx^olGd7P+nw{kRNEnfZf3(w|Q=F&CL#+dAAgFD$)HN$ZVdu?zeR2m+D zBSGdQM@K)p@5#^P3S3Wxy}>uc2+z!MB*y4J!slZM14RxY*P>iKKU6)O=BDY%taIPi zEgQ?=l`>y%n`rMiSDAUw024V0<|xo|y_!@y(usi@UiW1^+wXGFtI}Yu60EmDu;|9e z&R^z`l9C~kJRiI>PE-VLx|RP_Zpx3Sla5lrW{3TM2;DrQuU+syY95bsxONDB)4Q@q z-qZ@8-OvuLBwl zKNdEF1NY%;!FDW^TP5V^PFnmcZ zm!57v{wcnJYSwayHSVAL2%=vG>dP6~1Jj4AU8! z;xaLTdp_{`0Z#SGGe{|&LosIdtL-$c10$rYj42o)C_6jbP!);LO405kA&-Kmf3w>$ z8bv!q=O>7#F=r@+xOi;F_4pfjVt!t>qlpW-(nadg4LJS!`r*L#HwHrAql?mr-?2Z0qvLwo+8 zm~?d-fR?F4Q8kcFkg)Ew1amH+0o-i=~$hguA4?pY|0lFoV?so z=6h3x{LZ^^=lmFe4^0qDg>+I%L$AYIrL)Zh4hO&kf&(iB1k{H zQPOpL1466%>sLQ$L^zVMU zZ=szp0|*r?wgbirn^Z=UJ>Z8&EPEV#t$VHL47BXw-V1F7=T{^uk@#?*2e(@D!r3Q2 z4>6Bh5i~*{Wp(WeH?Y_e)gn*a?=g&M#nr`0oD2nmkDOPOx#k8NV(-Tyn6&Mq-Cg>P zgguXT*;GN9pbVuUv-rGcIC$o0Jw@c#1@2%8f@N!8t<`XWQw9!BI;YFNR+CZ+`!k?! zOO|RBLMp~{)jhDNx4+$hC2IpjA?9T3l3n5E%=CK8t@SpO5`?qoLe@IvdM66(!Yr@u z?-1z` zAYkxnL$Vt46!4lI9!cjzU-tB7HqjJD@{nnEIiQ^zRU1L4;V#iV_V_$bDIJ*ud}C}q z(3tfrCF)cQuTpI%yKp{88K(!6bGU)zrW;Jq&0dO3kO*;#dS1o=`@7j+ne&1Lw)xNF zrs|JaZ*mK~hEIk;%OQLlS6Ij=>J68tZVVL;Z@$yYyP%E3#;`&OvOXj9F68D677$tx zBGumHQS196l|dI;TN{7XJJzSufI9RY{d=$Pk!ulu&KFfadDRhFH_!aVh0ytXd!gs3 z;`pblbG34G9_A&yXq`Of#^{mag*)#-mrl0(+%?hwQD%s=Dr{jamw;9KvsOH>r1`ja zpQm1d4ODc2W*k2Ya0YAZV~5FXfq=jaJ31`m=xrmm7>1ihEA>1`=Ex+p);In{#OZWg zVnQhjdA;~h-8xIuClX|WJTQcv{Fqp%As{u=tu85POb^*(Em-54P`^vSGI_F5tc#|% zk^(ylFAxVV1L0{)$NiQW9I1Kxyw5U6oEw0Z0j5nE76~WL4;>MaYtyM2EDHL8OQs(y zHX7aNe3Ni*tCIGcb2Bq{{53wU3nC|s;y8kMFEmqjDI1pqY6lM-dOlfx(#}$f@h;uH zrfcGP!h{xip8tn-n4o1YVv5Ial4jJp`$#B4uWttn!oP|zDvB#+rA&H+$%}JQyZP-! zyh?Knz~D$!TPkbDX`bw}Ax0OW5#hjw>;?N&p~o)_rkNa4Pit#_^V74(e?(h}RW#FG zz_xg%kfqt;`ZlUgNCOGATqBS~K~PGoOh736gkbJ(@xyaLlp~9bCMEb5LDa+=`6jJdY16Ep-TpA~$1mIT{`zDfjfaWVh?8I# zMp>JZo~Qc8u`r}I97xHk4qVf@lJGYk+vB`!;+>s(S7D{|Iudbmxk?7|5p1V0sbcA^ zjP-1Y{?~yyZrP&m85f7MRTb~+yBI=*@gV}yMV{(NTgkSw<*ClA3CaB^h{9=sGWnb* z6jcaTx?Hh26T3s>z>fl6%aeoI9#nl79I;ZeeKLdlzoOadCBJi_PVO`hE*W)wp@-W% z4AJi0*;qaG8y-=C>^DS=w+!rEzrpQ58E?b>Hly%u+iX2|9nn&oVH)%7`DR3JO0s7b z&z7B|7u&0XL}3m(#{1~PUM1*wEvoHlL!W~FP#8|5aajq~oYjlm+HY1{)5k;n_<^Y4bbJ;VqCj7#_f_8E|E6DIny*Z+8q64i18Olh~OQMSjO^yK8#D_~`IKi`e_R$j6pBx=%>_ZG?L_QsVvJf@y2 z<;l+0pr6PNoCT=(aYzoikf-RD3)o1K*CWOV5XJW6R&u#RPRPdzB4#)&`UWn5qxR=a zY2p)S$5y~?jW6Rhpvd{F)6ltt_hpO(n|r;M&Rai168~mno`PgcGfd4N`gR@G*Zf|1 zuh=ICd9mH)6V~_9Om*I#m@?XbCLeFb94Ir-lF(cH5?qcgnUzu+;v4t8xm}lqxT@L! zx4mG`lH`*ffkKlK2gmfo&YB-z=-``s#q5d%iBMq^l@Im62yjMtb~Rm=iu9M{b>dpnVn9zz=P~8 zLGO1f&-pIUq@Cl)bFV17Gm5g7JN(Fiy-EF&Q#||Z^mRuiQ&JC(kDFFm-=U|7=L~lO z1X4{^BdIyIdtC70lvC?<=or}x+YD~o1e63W}mT32~koD!NQJ!X9hHZk!2loiObk0O|Q$LE=)8`wm*8yiI z$=5G-2HhQhY>If_{rbvwC@I78@R6+JrDimO9gc@N*eNM_#$mFZs45zXZQJX6 zh0E>Znft^Xcl^aLse$1as|;f{V7c`*@R@CL^A7zKFAc&D#KKZre|Ac$KG}bQP22YV z2NsJA&f|Kh5tv>?({*&o7AkuYxz6*O zF1fZAuSo7K)2y(#XL$MD{F>NckI9flB2v+DdpwL(_Q!_y;vtzIi&E6%#GF{}i^}K8 zu*wp%fGr%ml0O@Pp(0B`hNCxzTIxRXEHp(A1}@C}_=v=5Iv)Xx?YRA}62+HKvIZSz zXQJL#6IhzC%J@}fxU5Dwizf>4(LdW~W8mbA%QP15$s=lK6c0ye9IHnsT&qRne3o$x zy;Lk&7be)Fc7DG(KrxqSAo59A=E*jybftL0i$f%_LV%^PS;{H7!umN%qBKmhD{uXC z@zhl8Mb*gnd{CDl9-h*6Qiu-2Q29Vn~@ z30+`5EDvECGYAEntUkC&g0BuzKOmtRuwOX`_EMl7vu&AW-E4=D5i!%AON#fnRwrwI znNsMznWNBV8j}ruuDFC8^?`4~ibn0SSFZ(8#w_!@n2UdP&-ESh9YS zbbj56mUii5=(O@?08L>u@(ipor6{EA)t4*S?FpJ$l5ANwrnr6Qlq-m2A(?I=Cs$CS zEYq@9ANcR$-Tri32Cd{x{cBV$XQnV{iZG7rj;frf$?ncR@$h)@-Hb0JD!VFFU)g=% z^V4R$hy{k&o(Krd+kk_vmj@?wYSl@#7Z+w=#gy%<0=+;u_#>&6{_j5x!fT_y!M{p3 z?`U+STg?uES4S^wB*-WeYkqx9-p0<_z&daMQAFcEADtvo&4af5sK;8I@w*;-NBv$A z0hm$aC++`R9$EwCA%D(Mgp=7JVjMz?CkkXEX zSy4aNKiGZ4@^-%PAU=56Lg?1|_FNhv7MCx0AaP*$aPOy}z6H&K`Ci-ZoE`Hbhc5 z9?p&1NVzZ#C`UZosyNBFT|d?Z0bq>FV;XE9?*Eba>&$kk<;G_{MM^ftxUD0{4tR2rsb+ zB(*|Ry8Y(4$YGU++H2v|%X|*u0oES5CiUNElRy=AYe`&5dTi5gn%fvsF}B|J-MhBuM3)2(qB|zvz1Fu&UOu>zD4% zMGHuGcXtT_0wNs((xr5FBi$V;B@NOYij;INkPvApsq?J8_xpa|b*^*%*#GQ(>0U6` zob!IhJ;rZZ*AdBnc zO1&b#Ucq0f{uFs4c2{6^-ms|Yn|$y&$dsH+a$lR;=dhIdo7z_4B!9*qu_#cu)EAR` zjOgCPr&f>}VtVOAU*V6__+|CQ(E%mAuDE6F=w;`I)(2h-s5O#5l>-8zdEg(kW@nQi zxxtXB%{Ta|4s!%k*yJCng$uw9o|6fgTK*U}m&IDSw>D-yZWY`iBZtCP{j2XkiH}~+ z>T0Q*hCUKIWwA5B_$~+R<8r}1&YAU#eiALjrhkIIz|v&KdAUqg2#1}+~_N1iJR4qIPMqfLMu-oD6}46Hq=NbmL+Yh~DoUAD=U` zDx@TY_3a-0Ey|&SU?e+lt3(_8A^3B00?7n~*mnkaE_nBUhI4|ezGHKdu%yEtt@|%a zpFBkpc0)3!6~+2Lu~109sf0eq2OCf|^XY+I zW1v^CURh4V^UGK~>Y90wY)mN>s^a$i&|Dnh{>mmS(z{1HfPtPqkH^fv*YIo9hacbn z;IgpW+{P03otTi$Bg@+I-X?sj-ER1Z?LUv@(L$}D+qI3*%(D&Bml;-@CDy!2{zIWR ztz@pRUa$O>d}MCpvR=y8+hg*$yvO@#q&Ci9pf37U5arsvP^&mJ7{wHRQH_NH5;2tx zWF?-<2_*h2$2iBb`4MtWn4ST4bSdzKzYg{LYR8{vhuq>q#b4Hr>_g5;pb$tjk2*M>_v?me06ZSNUv>iQ8% zUB%i37oLkb!t#pfZo~=Oc->upu21LB;53o+yK_A1z?B7#B5Rkk!)Y_U4Y_nz5Tt?hA8&dA)^*7 zLQJi334v&ld?@6!qGhNq?tO-Ib-b=W2VuO&C!t^rM|~k*Zt%Y4*}PJ0Y#z_nre9m9 zf4UxTfR*XuH|S=oVNCK$g2>N18}L;gJ(0rv`VrfT1;ft=$z_tWiLc-4t!eyl1c0w-ZRN4T6zpk>C9Wd> z+lzz9E0DhrF9Wk-rBNGiNN8wU=aa!HvEvTH7R>`aj>&p&_nUTLD?=;t+ra=dl=p|g zj;mv+?svIpvj@(K^+VkIp(*WryjyxDn2ygkb&bhRoCB$Uq#J$`hN6fj)2rQ9A#aSda)F{Qhw48+G0yXct3(TjCd zkQ55sRt$W8ThL!qxXUGC3aiYoSc6y3E#4pCKaQGRUofPPl+v%z*yF|$4bi!Q~Fm*+*lT4!EIn1|k|kkN|tE2ft=yARb>czw%vJS}1;(P{W&UWtIPZ zo0&>;*@ECHFVS@qvWpeoPNqF;@nAq^r~I*-VFJt;`^O~!RmefMnW{p6pZ zFBYrgYuo5|U%nRb=7&L5nHS!dd-BA+$Tfmr5yAMgimdyqn4cG`gmGJ9-`5{a^2-hK zN1u*xoR@}duQF$!YDA@mg;Zq4;cAe^#>a=>+v~n#0Fo#3y3OV9MODo6@+Z#AU>6jE zic8JR(F1ma++HVU)*M@AHEObULD5+cn3H>oYInywT2;R7=!wNNB_Y0K4xCL0Ol-e< z$Drqv(^nF0wR!P*cca{T=Nniq`&@;FTxPQzg<6i*hyY_E109h1g>MnBn5F7vKDD2z zed257dh+7ZOglx0RolYCqR#E7DhytvikYHUIOUS}j0yO0(H7ISq{U^HzuhwO$2jdw z7Rl{_e^#`Ciq_@~yvL~$+KRyl$S~4^8Hh@A4GaTWHBT*ui&t}oe$P)!T?hQzwDdpY zd~$_V8nRgT$M(9CI;L|BWOOD#pW2itK!IeOQ~c)WRGDM=ux%paQP<48qm6_kh;w!Y zVN?LaDs`;ZQd;2SUlo$w^YI$P8(G5|ca-ezz{~L8`6}oFrK!O(PT+S+v$VCUvWU z-L%-G(`SsD#Rf#gy}%{Gl(|;_C5w*5956CIu4Wh9fwR=&%r$85^K=sLsig{eu5*0L zcmAP_mhOy0ex{oSBY!ZG_y24eMKv_vMW{S}j=Ctkg;~O=du!#&R`?rLdbmuL9$W_A z@jzOib!s$IRA+YfF`gQ`aPZqd+xZr&n#MZ%K~#Ndb4F8YFqK6InhpylT>^1@q~J9( z-a}-;P01W74Dp+xZcoS+)x^rJ78qx_;_bhwtEU5$dz(KjjyN!|ps7i+d%tO~Y_?nAXYG zZgVi=sRB84bwkb8;72EdJ-0r}1fMF&X+9Z)g!?`7KGB%qI<+r)S&zq=BDm4xy+bT{ zcOti+#mxo25bqC(S#^`7zG>-IKRi;L^mPGWe~OOph_Hr+gM-8NE?8co10J2eVb&~k zsmb209maAh6{f{q1lOPxk_VD0M{Auq!qQ!3N{<(;sxOI8+GQX5Q9;O z8gG9J99AmMXx>VfsjE*ypR#b&i4c2Nn3m@Ik5Ao20Z)D+b3sh&doED*I8(WwkZ+15N{cQ#k!wH zINxwQ1rzDt`#iCCW9+_fWYLNCBx4d=S_EfGnd|OzABz1tFZUHYJliD=jeo@)A3r0( zEm33M&ZX%l$xA@|*=(j1eX+M`bGDO|5oW29$v;>fDm`gjxawE*OY_NGZB#uVQq6Cw zcm#dzQ`Y&?jQYSagC3Y!Mr>oOj=F#rYHUo}+v$rIK#ulKpJ@S|wh-AWh;zM>OrzbS zccVxyRc~BNf+RacHiDnb9!8`CSCR>vm3Ow1c>{zypMwX#|_%l_GPdFv5Y5-M0S!1MVt+LS`iu+A4tzyR%AThpVA6wE_6e)ulix3ODh z9MM)6#e9=e!z54`hRCK@B@Lo>R>Tj0yg|n;pZF$?O_f$@-m~e=4{oy_xHhT5h&$je z(Vk6SD23o>M-UScg~76*1sft61$r_2+JYJPoA|; z|D`;8FHeCD(+*})-A{lik+*qZVu&Pi%(1^@k4c!?M-`2e~r~s5fE<)@3t=>|4sNm-gJ}NfaewvdDBn-H+<0*Tjc++L{Bbsi`EO3 zP98q=lov^l+ev>5u73%5KBzOms>)ZIkFuXMxNHpY08O`DVQ6S`(dQdAFGrrq>+)ko z7}(9&DinI5c(;q$zvfd=pcrt4Z0wgCuam;|`>B`yM3kmmzkPYE+qpS2FpP*5Ka^s)cT=qGORv*yyPs zXVgD9sPOs;-IPpz3K;dqr+nR$xUB2xEaS1rdHJ2zyTYX&?+6{2o14Z`%s6zJqeO9R zuxX@|q4xk2+b}a?Rveqw#l%5V{CtWBD&t6>D96@EUn1ZirM;_KIpwXx*a4%*$%UDL zeG$8nv2ikk8cA!b@7TGtT_($qbC4FZzK1L+hU6kFvmladWYB988h`g#P03trcFg&s z^>Z{u=_WM;@9Np)Ty-ncz;kL;)Kr4wtV#cycD04-Wfzi=(Pww}BWak>0eW#k1it&- z@jprHt9fC8o)xFTraJr0-w#qLXmy$izvd;!lda4erfO>Gun+5XKdRQbFZ`hp{zD5Umx_V+b~?uXD)+3wHY z!gX@u5fss7HD1*Q%Yd}>vNUZYLuP~So4H01GU+aPIr3hPqgO)JcnB_2l zU6ai;`1Xo(!KgbJ(SH8P#=cJ33ks(w3R?Yp6k8$Jkm>ireC3+``#Kfd;x`WkSW$dK zb5$nsBT;A`H+%H#FFPQdeH->yn~`qIp93{5PD9$XSNta11+oS0IcXqolAnvS6p6ZG z?fdBlDSq~wiDn8%8s4kz?&EUbVdY@VM?Uzu_f>;-O~~n*Fg}~VcZ`_rzv3 z0&UocO=#o>NM&bAxT6G63Ypw!%=k+~EBqsIRL5f%u5Y)d&#Z+dY;aa28rkS7t{Qu9 z-WlO7HX?CaPnk>CbTJ7IwJ9`h2r4qkcnr+&y~&SZVtk850sL-$OhB#LgMu&%ixX$Hbsgb$H7REC-1s z=5{@*MDI9bh!seJVtyGS0$8aEK%+3~(iCMYf4=o?!DE^K?7K(+=u~XgOD<~SLG^PV zA_Y(5s!I#G(&L&$8f>7Srq)OBcfPzkHd{&^%@p=#jlg*z3XQ;$>jLPi2anIwd+Jv5 z!U4v@G#~+|xcrt8z69l|_Mc6BXvEBs1vWNjWJ>6eP%gJ^BaxwxYyYC1e}8yHzkdHS zxo@Zf-j}bxX9t6Q&A4Z~AeV_S7j`#`j?G4Qj?ib>sFjs~s5Y!<1cT z07eEQnGPu|oi4ls$q;8U69{GsF#`VUVM;ouHj}2;rs;`OQ!S1mCKm%{IitKE9Qi&_ zq`2J)KZz?1LQTZOI}t{&SUQlIsZTI&jVeA|D%wqyVy>Q(2_8yi`31IJ>866#RDU-@ zaZfXPAbnAA_36KDMO*G7dy6ZL-_&vrTmalfz-XJq{ILNT+ zO;ITCYIwbGn~zuj_hHP>JSZ?CYCu51-kQW_^3H$s(hdycZX##dtlho#XX>SRPrDMS z#86C4*O3%31}*M^S=3F1RpHO(w^wy$18AphH>VewJRtipdGYJ$7sB#%8M8v>^hfG{ zrAupVc5Msnp7}268Vu>Hi=bB|*8QLU%>|^7R?;!(-Q6Bev8wxXlY)bErvA1Kk-Lhw zo;d8s?NW#dnG>RnzpF85SDz@-R4vsaH~;7^%VO{$0_Dfelm3Jb=GV+UnU^=eKGj;` zNq{gQPSwi>#jf(NroiElfe;>Y^aE_A05aB_I7W>p7K?!GsdkM~XUxs{PA8rA9yLVN zqf))wk%YygT4z$CQ&U$r_0QK-_Ltg61(4gz!(p^jNe0#Q9*g*Cv6)6}=Xd&Ke=3mw z`?=n8Xz%g(UI`~vyubFw8o4JiD`=b={}*n`SQ0~|%C~;xhU@Wt4!vOK7dGkg{DBU5 z^mvDN97W){hnGKl0;wQmAMap_d_>woaF1Q7_UG?ISIv8LL_1p1mZ+apkV1=KR4 ziF}DK^%bo&h=^qdMGhv7_rPggpVtxk=gZuGxLL-TXri-x2M7{nE;5z`;x>DQgEINQ z3>IE8mC}Xwff1rVHL^)Co!EoNr*-+m`Q7V(Z!3VPE#c zR$tHCscl)YJF*kf7`B=ASpsJDrLbxj7^!qBhiW)}+Na@X}xe~$O6X22UVG`=+bX!aQfK$^jpIt+`1-y{K zn_V-v-s7afUj4<;(Y=4yXppAXI`~W$d6f~w)36_}ox}j1tkS{{Chn~UQiFq5aAfD( z&pPT$;s0_aD|-*=d!V>MywyQnU*Na(SCALWGWuk}#iMhH zhThpf7MMzene(FoZ!?7sJlA46eXr=WqcHe%+oZsGZQ7E6lCr8%*2jpMgOhl$w6R4l z0xLOWP#wJ4tcX3%Wff4P0UD-Ar(yyI%2Uq{?Of*?{hp=f^)XV2dsuj98kcgdu%?s;XYgEfTES+{hO|4EE_rr0~q zyZiezJw}O*qoV{-&tGWp^*VO&FfIkZ-LyQ$doYEL3-TJi18`cP-D=iE0_e!O2Es5w z2AAp35H>}s0HcKTng9U{zjfk~9qUt-`B7k5WBe}BZ-wN*=?ttOZPMX5J$2{Oa~3cj zJv-0Cng?+Bz=17>rC||GnqGu=8c<(GZ0&%P-LS=pV~Zg3&)}^_j>Q#cit-I`ySo5z z%xv{5eGFm(mZw^_NO^HTBCsjO?g^m37aLq(Oxk4upGsJ{B!(t@!uYqzw17lHm9aOh$H}wJy zlvb#v(_5BHW~pVxI#}Q z0>n~yihMK6|0dhaPEFwh-#QS)tBZcPEr13c& zi5fYAqpgVU>YJ9o|VcuhjRK$42jW+HVS1y`PX zKjF3_X#Yph9(Un`a#^x@<^aqHjOd(@8hq*-g8QV!@>%1zX@s|e;$;OYlHguRflLY;21A@>;Va-!a0Ge=IYV7R`$NYJaVFx&suff*-rR94>>&4Lqs-XyK}>M&_0R>}w3-iKpnXpsxTUI*p%x=D|~=>QE@%AyF(Tl7x| z^L?Xp_&OK?iPdF#CBZ`T*cK)<6eZbmm7AMA(S&H&7~wgw^bP{Nesi^^iBea;2VY6} zm`&CdseZB^iJk8BeU}w(d%p9HH#0*VZUA_cx6$|*o0%%yUP=I0rB}=%M_Tqe$<)?YGn|Tl{pd(zGdH$9BU!oo(9Vp&b%rnz!SI@F5})ArbPbn0JqyY zj@-Y;Br#34!8Iw2tko)n`1rIl+uCndzDwR>fl${!;eKpE-rul<1TggTan?Yy_O7WV zTO+;Qcg+BupBK;IKRW(_a)L4~&%+?8X(1p$X?r9Mv#KBh@aH=@)L_#pz@T&IQe1=fq^O2k;AgOOP}>zAk-D>OZkm_e$>X+!!jrvMmsL7PCT z`D1*#E0dgiUOV}D;)zmm}V15<;OrY=?&eW`K{o_5H{tiFpUYd&q~)Zhs3U- z%X}|>zz_Svn^trnl>WZ)%`jpXgqAo-Jg?I-Uz9u=KAt@4$2qw??HzEHf>xlXlqFyN z*(dy(DTs`}xoJCD$Ft_Rpe)Hg8zzq-5!ToNo0YdW3iq)|KPJx3E)*U|VM#J!JGb^s zy4Y>lD|nUeN4UFAAIWIsMI;L2a>b?&C(@YzO&z^{s31K~;m8rPm``xbygv7sDq?UP zS^Rsuwe&Hqwb6^#$f)TyA1$=?JL~1|@ZZ(TeauH{0<_5l99ULobGFFdW~&3Y_AJ^! zt$HCO2qpagt`YfryB$MRVcCG6Qi6bW^O21MU5<{y0KzXxj>8+SfR=0laNgJo7}!p> zb`F4-UO~FstHGB{paKqbwfkLjF;7mh&RpE5bxY+HhkN9Zi!Pol(ZnKTY|Tr~!5FUn2(QVXzAf;QxuOboOpvjl?4ymD$ zz&)e01YIodufM;iA5MSc|CIFKlWP?{i{@BsK|tTE-ApQp>meByZ$wncG7D#w&qXOV z?^%M0K{J-p>+caQ8Kk*`$9C}8wyl4?N?sR8x;)j4sjaP7pn`Q>WPMAqa6d+J$Y_-L zjml@vzNl`eLHnHfKj@3>Zt{BYcQ;(lW5t}(=X4;vz zh=}P*SxkXnIi-nesoC*X7Q^@)yXB&m0}TyLI+0oeyvF`JN-4RO`%c}<>2$%WfWVkT zox-G<{&Jo`A$M2joYd@QTZQ+uw~$sY75kTLL|L55XaP-Ol@sf$e{L0>=u}LKU~8&i zapzIGc$cPUkcNLF@X6HjW5NGgJAABie?Z$-}a&ksRp;r{Y*6@)r5q^B4 zFNeP3o^!Fx>-5s&FhYxGiGO#+|v{3Fk<@lZH~q6Kq;`vq(|H- zDJexOfX(W{CBKb9Nk)oe>S=6TE9UNZ%k{26E6Ug;+7Y4ta-CZw+i)3)7q(`i8z*=92iySk#j<*%mZ4R`QU;#{M{H?&tL zZCO^r4aF{}w1s*5(5;N&qq07^0yQUD5t+P@sY>3mZvwC=0!YU&I3Z;##_V6THB^+L zh9ktap;4un6!9;eN`!$rr<8edjSISwQ04uW4>hXqqi#7C)~H2QsWh^B_zmLtJ7Y;m znB&s5P-+R)g7;iD#&e*wbx3tKC9&qvhW*92{9Thc%LwmElH3Cpq5`SkE_ts)7-<_% zIlAI%fh9=$$AkWpuo!ys;3%^hBJOw=Fww!*t2&s#JR&?H%qNGu`%(8paTUA?m`3KR z$V5GUh2TosQtf(ziVrjmYf5gjpn4Q<+<_}BA1|*FmLw;qr8Xxr#&39J7oHA{U5K4q8+#4)7EPQEoemp-@;GzO&NmgmH4#o^pt~lvo2I=(T^0yJA z+mJXESAB@9VN`101ae*3EGux~8V?n4s~c{7ize!u!uEP(+NhrB*?-Z4iyTy4qF($@ z`d=GkQ2YpF_MDKnnd$R|DF2Le%U4~u0B2T*e>qRH_;N7teV75i{>W~s5;%!Wqd4o8 z4phjZZgkQF1qKMl`-DsC3UV950Ks0qz9nGv<-HR4Y~GKus8?eo(pE!~iqH-iv9KN% z!}m(c%28F0a)A`cp&M;~*W>fK5}|DU~jWz+EW9^?yekB+r^dbVAq+9>a-S0)-HC!omo9nGsq9~(+DmwHWXc@`g(llL|pnQX^XMT~AR&eVJ(lq~2I&519rnIHPb z*I&9S`nfNQ#z(yxPCc7{KU`D@TsT*)=8-Icjr#IW zqwcaZ9l%xBAoK@r>0zEY)G0ysZDdvE3onGRwluwFUiBr0!|2p&zeW`1znpcA5_Qdq z(<7DNz&r~!Fdx54d7oJkab&xgvAkdn1Qg2WMY70k9=|8yuZ}viWtYsjH^5XY15SX? z0puMFErei@dEP8(1I{aZGrK>|MFB_`7K0cwJfp?MM<@RnC>O|dpUZ8IU}0&QCINbE zT*TYa)N2`I`6E2n%lUcLcV5pP(r|Bd<1=p>>6R0L8(@Hfl*MXtXkdWZo=YaYS+o{T zat(o~5@#UhzUC2|LX}~(QV~2Gr&^p%t-j|QKd48+4o0#;z(-au{TjGK>a52}_}^$9 z0}Kj3gFP6ePEJo{);hdD!yG5TUIjwPfItt|eSeu#f0+xK2h^U)sG$?RnrZj6j|1Rp z7}P896M%oS8wgvC;8}AivOUWc4h9_uBl9p00n}xs)m0c^lR@(7TcK?4%{n{^wIaLC zi3KkY&k*G9lNblzJ7QPPC^Foof`tlQpulA+I$B`%DKVGfN!ZGr`%b6hbHh2aI08RGu(C<=@srea^vW-b- zJaW{81k?aX+y^K$KSkDBoC~nt29lkv$tx%@aBAzo4R$4sfEtV9JC(o#pp2KfWQ({n z_VwSiPsL15YTXzgc!;){0Q~@qMv@XF@>9{tAc~&0H3p z4<7J0^tH?sne&4)GlU??0)ps2VYoZ741ipoMo6vIf`9hx8F)u)89oU;jt1J!cma|| z%iqmN8bDP}Ql_P&n^hCh2xO8$;k72<;{sgMG>fQ^BQi(8_(lH50z$6AwLeoa ztv1a4k$|nHK?*hIC*M@?PhD~{#`F4{#kY-}D{>^3cO~1}059{=0X)xPpPL9vV@3|_ z`oqCdk)@hsL3$X=$6$Is5Pr~W?D?^T=KP2d-9rf4@2df&Vf|o*DE1@?o zjp;2B2s8E;OzPUa2$stD{`Uc=PEypQ@; zrdM2UBVf(eZ^iBqw)w#)ZJ;NK+pAry|A;~E+}gJE9D_;5u;MPVu3X|!hfI!?-(i3FEA&0v>$g#RtP ztXcY}@DiFyMMWSP0U8mjz}o zzi3m=3$X$HCjZof#AFv}n%v>=z@^y0Z^iiV&_l=VHr=~s! zJ`u4uGtRIcqb_CdJ4ml4;!kWxmC{lo-qZ}|g{bm8v2IrFC}xQ||Hitia=KPouDxFg zia<;KX>MgK_w+|{zo}c1az!xLuch_kMyJZ6Y#j!`g#|QR1-}+YR=8r_X4~iK*z7=Jtgf z>BM;rXCj$BYr^#Mgk*-LcYFPeQzFC42a_Yirg>7{#fYmsRU9FFdvj);#hE=(H2BqL zY6@+s8T$%{T3V8cN%vcURPXJXXGW#()g}=hTuzdin{QUR+ec+kLhGk2Y-i<1Xf+AQ zdTByYahC1*jXrSr;TdaQ<7k$G6t$60%$d9!FqXpS`R% zIEVYWjDvIX$(Xb{ki4St>BOqoyOV2Z0Fj6Yyf=NV>{T}*H~@QX%7$?2k>`QBoPP>! zIr-TspW!UQ3T;QWzjJ7!{Gpnvj7S$UGP7;vKWU;fYTGp8_tVm;*rcBbeOY?fuQPr3-5)4CEKKc!_ifUzalJ96V*r-{3^6NGwpOuSxu{q-7L51~yMvf6o zwW}sQq-dL@$mMgEGcnn>TRD+ZMJ=Z9JT4u%V)?poo@$S%75;>apA*#izjRPbZ5$dD zr`3?hZ_8e13#N9u1@^LNc^z-56kfF`Ub#xKRHyUAU|Q|$(rn&$S!!L6I?>Mf1-l&* zNI+@Bf)*tG-S}e{hJw`l zZSeWqIz#Dw$N9qtiWlMVf?f++Wdi1XeSKlomhDe$w=?U-?g6`O#K#~i$6rUiH`DQT zj@!{NtO^FyxF!fOXfvC2fp-`$_0OyIz>LKytUl!mLq`7l*dxu4jR%oAa&l=Oy5^M7x!V<+ogK4Tl{gRS%M4LX6s#Qsr1C#G(j?qzIQRQkwtc$B-+% zd;1Q%9Q6)Ci2_xf^_t^NWv+H6%q9T}%Kva^6IFqboA!HknL7eND;Nfc3ad^Wz-i(K zm1Q?0JU>@W=V?y9B4deLz0m>9hGhRd>|=>Uhk#gSQodHMyOR1N_RTcj(`y>30Cr4M zM&ybo%>VFhl-9Lry(~<(yone1PwSsCK4~oD8hFnszBJv{$)FgsKR)=s?S(ul^9m2^J`Ki1Y#@!m>iByGyRpuW| zbOKc=^&}TEAjf?Dt#I+Yk|dtYM?*lDAM(izGA;459iQ_GT=CiIhzRjLn@L6e+3hu!;f^41vA0-kFF)4M2J zwU??GF}gsBE)jgi**N@>>0oN9HftJy=47ofk}Zg90>I2|mFAO8ap)Bg58S#C5P#2! zdSYfM@I(~h`cIVBkJ0bI|Gtl&J*Pl9pC?Z?|9-*HM?i9H&ZHUC#c;E0LoIjVW+~v~ zx)Lkh^2~fK&;f||I!S?C<3fVB)&{Dp#tv|%=(|`=w&Nqq{aieFz1^zHm*QX`yK+OYg{!5wOi4Xi;*b?8%-kX`g<(+uazq8)`xBhp zGkA?*_>7jUH=kCnm4MoomE*oUu?Y^YW7(|&PAfe?hz9lo9hX~f?k_k=WoRd(0YJm! zB>{eYYnh=5{l8-f@rZ7hvX0;1rB(y6kJC=J)M2q6nUvE=Yi^pXZ491st%u7q_(x~Z zo(ss|SV>Zgdj$db4ivaD-TVRO$1N`mBPH6!1^JCX3P=yNo<{MeoEBQdQPutluE;}u zU~eO;X@+LoKonoBwJHM_BL=XQB?TxMO1MX(o;nrwTWst|&QLml)5yTk5EMMVlmOZ) zjik`1&CPb9uBd*<$`-&PXb^+LzXcin4898F9X#VvM+rvQdWU-0zqQB2yrqXBMS6!b z9{XM4IVq>&7`NexqJpZG)l)&|wcLkz2u5Y?3O2<1hi<0BbGDgK(Y=Iv@RRs~n#Qod z7Y8tlvK_qJ?nHHm1us87ZBOmDV0!o97EzXXaKr;Ka=~`vd!&13tp4uy8RjiRgl~Qn z{fc*%5Jd{0yS(i55dfwg#8=B$B;-2oa2tU*nOYdam!H59oh$=jT%cf>RnXNX0%I?| zMCsgY_2fCtbL{kz|YlUY5Ul*4Jsk zfx90x&3pz?pSG3mK-0zS36>=|NC15097U_=9$%Ae@3D6n4t=;VKvQ1c6nE6%HCb&q>jN?hBw1uZa zJ!_*qrEWd_9@(RDqb^Ci{kHsouq};HrkqSSMy}Q7W}V9VLiMF3FOm`|Y^EJ+LXph; z0QA724M3~eblG!NXStT>8s}359XpIoDulgHZq9czV$;QaFR?(E(7?mJ^Aj6TyPSOx z4;N7&WZgL>kv{muvG`&P2P>r=7_Yv(Dp zoE%*Lx=ciiMjtE5i;SCSB2&@guaG9g(<*G z-B*R69}6Px0J_nHJ)*XT6O}-8%iPj3^ay&zj$eft`Kf`P^7kQVl#N~$CK6;y?<>Dh zFEkRC-OwIaaq|%s8Wo*h@KCJ%@GZcU+ z(gWCmE3Wa$sVRc99?nk>N`5l`GJ>eZ-Xn0`?#}4Y7Z;mz55(LWit$kYw{o8uc^wlY z7`4USGo$gPOB1jJz?S~MMQA&n^|8suga1mK8?h#}RQ-~fD(B;BdpMzxQ=x56^ByQ7 zQMHG{3}w8`Qo!HX3eFkXcq|bcN>TS)I>Py;uy~e-sqAhb72Ma z>iOa#cF6>gsPpq3%b8q}k$es|){Zib4ckUMynvSt#V+5n>p+P-G*SECUAnSXsg|f` zmfk(}|piC*^W)PL;yEpl{ zp zr+emOTz*ElPo4a?LLa4qKqNizx^9k?TH6@|?wTJSTHD=_IXMl{GM--QAclG=>mRL> zE=t;Bmn0@me+2V>u_czvyQxc=!yRZTV88#<(aC*5!4*Svh3sigc!~9Q;sEbJU)N59 z3}$_w0!5=o5RXlKm%16fQY6gKp<%f%x3uiCQA89|S9Z+Wwk~pNmh|8vQPZbA<69_dYpa9E1F=Oxy@#DZe2OR?DHqr5Un{uWgZYY7^KxufP(ghF znl?Y5N+Fgwn=c@(2T##g2+P!RQ7(doIjoX#+e^FB;;z2p6U@abekj4svi`1ePfu?# zn;Ujg1?%$&N5%uM-V{1Xt_-teB@ zoC2*Emf}kjaD|Tu8zILLu%Bxb{>k=30mJo5xURf~f+FSQ_Cd;7tXZY%z}GmEh^6?ui?}G}0`r9D za2eFk;8OAx=D&kJ)hIqo5s&Ds#5}@bed9nyn@|6bxwD4Ye>~csv6j{6it?0c^TlOO z8t_`}_u7qGU1-zq+u%7wJ^MC_<|x#4g?YaXlshDZDZ8@BJCckSyD0^($1Ql{`QWWiUmEL4@qfe~J_A<~+T{zBrDmdWo+_U)1Ji z*Sy!+ftMeWBLZwqcHJhSd98K7&^BL`6T7$)a(}2A{X#%p`MZbvmrOpseYrE);qQ~# zUU(T!D135{#D^h*d1u={g|DlIcTTMfXLxC~hd#1`BZt5usUMmKr(cv5;)AT(`jr($ z1#IOdS6+_-D$*l9zWBsyzYnLXvEqvE;v~T>6ZNTQ87SM&BWt_~DQ(gtv_skI4mviKY#;l@k> z7z{2T>ThWBJ7gbsr$p)U8S_4CjScuv0_@t;6vp$J^#P98>d(HJ0rEJ0Dj&l}IZL%m zMVWK~RS;XEFyB6=zXPOifPlP2$vh)uLH7+Z%Fkb@s1%0;IN)R=3OHW{Z-fB+#GoqMptMx~?1casN$*wgx-UY?82tPdGX>bt6VR&SvOAzq=HYr=V{hym ztBZyrsV3SZp59bDTm86}5xHe~1(ur1;3FMhlfXsfA^M%cyZ=J8nP&yYc5{NDaxaNC zj6aL$x(~_#nbfE$@9=aY(m1_V?F-3p4D|fOx_R^D^HsVd7Lf7{O0AIYFmkXGr~?s@ z-@sjIB9IDZ?&N~DalBbB2Wlr)oZB)y*6;(^FZj@%dz(4i_;*xd&1FV@>Sh~ialJ1x z*a&cw;ghhCA*<>ewKHsF5w>=b8q8wUur2p8X3h}vsh3BhaJ-&FIHJ}k2Um&vYSY=x zM<2eTV?oO;i`xi@@0nlW*7wQqKN>uqk}ODy;zoWTR`0#QO2L4{D}K%7L40?dJ#Y%r zfT4h%XbFh9QSk!A2A0}cpTvR&Y2d5}r+vlrlWeAuKSS36-3g5ssifZ5`zyOR^?B?w z1(S*u*e@Iui&rX(c>W@az@d1r^oG$RL1KOR+pDw*^XDd;7b4!NiR+mN)L%AzKaU2x9ky zdo5`^UR=LJM%U*i)?GL-+PLs`d)Nz7d=Yuis*%Z06Tz$N1?(RP$+cPj$_IpsP`5H` zRh%9PF$1``eSlZ z%||Qq4UNu4NyA&zbT0y%(*^)sY_mnXk!xA^s0rN05`Tvem>Nd+Gw*8YEr5-K)fPA! z7^v0(Bh>}UGwU}ynu3{D z(C>y5q{|}-3kyTLH~(z$l|YP@Se(tWhV}pcS7I{72m*UfI>~z{um9qJbwx-+6+W5I zTsTODs7LPQ%z}#DZPI3zmnnf}DKs$=8&s^OJ&&`x*+Ld^&D!}yorSE#Jlv?6IadlK z?3p0`JdUeKG7`8gpmDk&d=nSY{GmXWUj%YeMpoh&4OY+$=55I0NZz3islQq1;V#HV=J z?Cyq30)4QQA<&X^C5z@ z+C4v6r6PUoOAPd~l=E zyW^8~AOGYMlM(sRCyx~8Gn6aj@u$Ki#0;g?TAKTX`bh$)P2D^rJ_@et;Sf6D44MX& zWqbJNfknN+>Tb1RXEI$jg!G?*$AOXj-G(MUgg@{BF6`_#AmNYccElxh}j@E zN}@v!bMkSwxXej3-~z?ipHER)pn&GVlbl!Lbb}$SDmv9x77f>q6LFTD&a`>Qyl<8i z$-Lmj$iOb>38%DGD_;6~NxgH=4Z>s-we?cKz-?gAgfSSHg{i{9@lNau*F6fclhgG6 z9JTW00enY?V&w}9f@D1RbCfo%K$M~)ax-7YV6|-+?|-w+NI#K0jXucg;GB@x3tDtv zz=;c&H1if z^w8-@_D#PdijxSI9FxXpSV;kcaxrxc^U#iG!loy--o1zs5wGBlS$opS$7H3GrT)<> z&qk${m&+@WiDOm$`XXDQ{{8@G{y*~M7MuUdlL6TJ+agfk=m`J6gDqnJV6BPJUqAX4 zG?F)3TY_7dDDs^;@#M6{En|H$|6)4G#{8S;_Yv993xVSB3%IlOBIJzUaqo08t@Sr>v2T_bhkL&Dc&BYMgEn0xn*<{=$EV9sEoG z_2kJ9XjOBKS!~_>sqTHvS<@en8ePjM+}i_oD5%8G=IjH$bl$`@TvO-UG?eafd)H6B zr38)u3DC-{*6e6l!eGkX$iyJ#=6!#c4dHBVy{WEnX@mn{>ZRUUaUTl&yQyLYZc|w> z0HkZ7i}*%BVfg5h5H#C*SHzKufcv<@*Q??Qe=kQ-j8@iX z7-J_FS9~*KQ!r4ZBnm;rw@2v)3^@)Sehg{&fFwuQ`}mtOht*UrQYY0c3v^gb z6GC24Iv-E~2%RBjp7GW)X-Xj%dQgv$0DOKUO?@WG zXLwv2g>{6)59>l*mz|aj2PET5e!aSqdbkkKF=#(IJ`S$qZmN1!n|og`b*{EEhO)(} z<@_F7p)f@!CD=)tPCkmZQK6YGywq4-DptAy_ow@FxA4`u8_6GZ{djEZMwY&7t0b=0 zZ8f zC5SuY^Z_#U`_n-MGM6|+v^U5=kGgV%zStSa>#dXNCJDwZVBf;l9W0gzhI4tR;jKtm z1lxfa9PmxXdREicBvU}e!k)lNBr`FlY=2#=k5Y-5lSrKK=7lows)F@6sZlWwuwqSd zo}Zkk>SfOLsF5`NV4~fr^bPv>jI#s}usafNE%orJM6`(t;I40^Q_d}tiqz@}muZ02 z5{PEQhsiuN(~|Y2cjkoLCZGa;N9-Qc-_=dps7wUv?IXDyBA^SO%xr!Edsmtn_eoe` zPRo>J0B-jQ!DIi!cls3FbEiI%s$|7ybPs(aqV4~}#N3%Tn+D7Pn#f|z1 zO0|6dgcy(x=oQ9Kf-I|=?@Ke^n{oeRo5Co14xZ@}q65!tfUGkMd(%jYgZmkz&+ZV? zN%i?pQRqzLq4=X%aFpoALx5oy*h>viJJ}C%(mb9g%rFp{*>{Yuo0h!}_W?Ki3=n@< zo*0{GOW!i5by|!L=cW>rY12hg3E*-ZJsS*g@jm=1lF0iQWX%q^iZ-Du1nRCk;urbH zm$bFbb%S%>kszFd6bfdPfOJ26G6C;(5G?X*jc%ew7^^n;n>pf*Lu&F#xn%5Z@U-d!17tUhdYM`5tJN~XZ5(1Yxk z)+Nf&$2&ajUZ+A(L{Pq~sR5>RjPo6@O*#f%UV^9lbLg}MOopUH!pQkY&iN&rQ*e%O zMGrxI{z|smS#JLZwQK^;D3jAP#Gupvjvs)RNT7!^0rO>#*shWja7fQ{lGq56?bU|C zZ)FLLRGjeG__jvI3F{i0p|UtHp#sBj6qw3E)gu>Z)c^zl-AgPFR%@1WdBZ!|u2%Q1 zu#~Qk<|9aqqA7fKTF^8=5DxP)8js=R=G2@**aHLf)k~x@zD^QwGFobbgxOj#s3VKC zBN6x$lQ_fJ@V-YxJD1~(351r`nGC5BxU+;ni}J2F&@D00z{jb#0Z<9JLKT7zU1p6^ z3@DxRg*yw5d*YKDvYY|jNE81|bQA`nTVgt8<^|I010Y*1y~qSy0UBruy8$#b4j~~! zJ7hf9a_YCgq-Su}Oz`S2IAtnOSpxPX3WiXbC1_PU9gfEptPn@{)E59ksZqjB&`O`$ zHkliZk%%^Zm})`D=?O}wziiS3cP58_SYX7epp*`b76KMeTud-?WHmCaL{ldWHgk3$4E#> zaQUST?NxjD>kbOK3V;lGZ>l6V=TQ?RFIgTd^|j-JpoLO`UfmcLKzaEo^ zizbvl>;P4JrieFpsY+f#;L`)K`~I|~mzSW`_sn3R=^_Q1*6`HS)Ot^(NRb|7Ygpt` zcugOe_D48_2f(DJz5uO9ocmYTdtN2j)e*+T&*jpbA!yc%N-osg7^z3zMRX;gk_M`j z#>lNvFF^yu6ENdQ+p4JmOQv|D!sb>L25&Y^wX$#v+grG@-|0c*zUlEwE>Y3Z$*=s} zUM#aZ)VuMs^8z=WhDIeBumT7>l+&(!SKi%&|3+JdrKGP5v)U+cLZA>TB0ii zZl|OL?7;r9{6Nm?E}MHTd;UZFLm&g~1$mlKKx)wlD(gr@yf~pmT#2SXbN^}cYCtRq zI$H-^sUmAC70Ph~wOmbG7sq8#dup220GWIg=t@F^Mxh-*z4-@j97&n;jdmIK*3-R~ zgUs_(`Y2#MRL=9p)-rQ?y)$Z&#LJcbapvPdzQMzZXO=in0g&3aP+@~pzyX%d$^AFA zf9}1*kivU@^y4-){j$jiB#Gp7HAf(Ujkt-$=Co~iM770{T{HFJag5eSHg>kZ>#sS2zc zPs(N#zuFLiyA|A!Z@GL9bxJf1_k7$vUBev~xO;wis{Nm2Q%o2#?3FS~yE|HSf=BHr zN3{lK6o22)!SJZz!||XJpqwtq|Hs$a*YF=-r*!$AKINZ3>+}iI=>M0EGp~SM84Gv~ zfg$DlnQ@dib_Pw2hU0g35m*p7%dC&TYnz0n+g26G&Y1BZ0;=*HaAHm9b?HpTQ(v@FS1F!Yq!5(o zZS*>PLg|(q=OzDE0MUOLM#8dkBzRr5SZ{YTJj1I)2s=@mhWnk-t$qhY-T>f5>M=dmm)^3m8Oh^1kKTG0gWR&(-% zi4UxwLMVh>^8-SWMv&a22?iv_M7-DZ>k;~>+2aD-F_nJEj4TKC^DR)6PZLVI51^S3 z=%Uy;#9=}s@E2r8po5BME7RZIL#U`PI5gfJ2`!cYx;KXkbfAV$jwph6>eIN8jnU@S z4$L|!oI`^~^`&Vf%TWF$7iXFGzuYIRmIT4b&VOG=Ri^S$rsE#bqNzatX}NERqcfx^ zoW|&@j$saf85cNHXA$VoRHK_*VBVCvO#VPdenGi_8p`pAX&va#l*5k|^jZg|=P#w) zp`FF+LUMLaUIVflJ>2RgXLd5N@`|4)xVym!FWuaD8RPD7+kLM4(^)gNd20Y0!|MBC zzSUotN~9&xQPhX!d9?ZFaUv_L_F7NKt@8}0V_XzYgk@2;^!l$akT{k=qUf|e68I&< zX-k3D`JA zp84@oSfJti=e@?GW9Y((sz|izo}9%s-lYiEIUVQE;%Tw{-1&q`&WN!sg$ko8hnH5qod-q0M+NXh_-ooaO3;qE$B305a|1nQyBp7 z2do)WDVzth)si|oBwqujUssQR5Q5kIq$NA^NkL^02pKI`_R1xSu{_G&KPxq3n*W;@ zJlT&ta9ENaKl{u{&~)vt)Kz7K$JBnpnhk#H>`D$8Lh3xnsg}NZ5*vOEC_Y3r z=x{@QmGKy%W*pzdQj{D21aF|%K~c7Q4<}G%_p!w{e>jQO87EMf7YFjzSDoVhmypRB z;s~wIq2ET51*U+3f&p4Ns6Di_tBPb-oG^hufh2X;b^5Zr!d`(2R`SJ72{?-elaG6M z^QkEW|DmiHp_b?}-;ZLLOC9kOs-k9vuPHwh9pXmJ1xrV&6}wtrPzuX|WzVl`;2POu zyJFZG&r1aTocX|!;UdZf?ehJxyk7_u6od?p%Ke>dF zc8{=CzNKMPoVaoP_vbXsOvm6qP>ge-)$B+s$oytyLT}lbcP^lR=eZ4A9Q&)_a{@Lc zBwbKWYRS*_X5bU5+Idc;Ku&7byw8J2+<`Q)p*8h$2i@RQ z{v#U%uQ}3#PFC`OJV7o*``^xM9RdgfB9;@_p(bz(*iIop4LnWsAkSsAxRsoJEu!Vd z5xqd2QjnY4t1`7^B$cR$^mTC?1w!Cj7wm5ZXn|{;Jf-IbPKqqCBYX+8gWap25B7lM1=vA~zsXHz6lg@`+?4Z;Fha8I$uJsQ01ek`j9 z&O8@UCe7I8Z%syQW5yCtT?kU_p&1QBYfN%N{Q zGr%%|!b`@~^(=g_gl7H)qce*uSny*=JXN8k7Wd{C zaZ4+BkCB#kEjOrjoE?Y;F)FtY_q`nbivt=Cld*;!3rB84@GA(7Ri)?A*qgxNe$nn_)TxcL#+IK% z4iK#`HnDby%+Cp~3;UNpZjdc48{$VXF}3DwWoIo;NJt+AE$-c&d}9=D2s3iD_E@3x zbu==|yly&`n0;26CK>hTgz%e3Bz4djK`cvddhM4XHl;D~5i8$394UDpNlCQfmX0Un zcdP6nn^jd^;^GR?^t~JHb|w1o?J96tvGUPj^JBU*vb-IWMDSEtgFokY%Xba&pU%r^ zw(+D;6rw^1Qr?|~3zQ zDbhZ&y1KfFw~bTDx@NW&5yLR{M~L=+u+xrB9`8}>XvMe!Ud~e)yfKy~y;kA;wkGqL z`2{iJ$8!a194Qp<3<6Ab!1+V~LM~bxT)A+;K(mdL0#{$ZW--B+udeOdd%1uJ3Dt4A zIWhhIfe#({Lb`x)RQ4CZq+IVdWT5n*@6{o$Z3WtDaq{uUpFX6j#{!UKoW&OEbClKP zBiaZLLoMUbnyHue-)&xwBcamvu|V|nn*hiHjm7vNpBzP8T-;(rrk70~&D8~&Oa=B4 zg{uas$(N+o8o?wgS(zrf!l?bL*Tlp(PbYAfQz-_N92V%8lv(ZYf4B3UH2FP?j2QgU zA)nL4&A~IEyn=+{EUu+)W-r@E;z*OcC(a5@(A9e-6ow=9Ih}>-caGpYI1p7G5pqRG zQ-MegH{iVsi}f0T(H~6&g|jUAY0dH)yh0tIB?JC&x+yYVn;_s?gGP_r%(A&3<~TfU z6nZ1pEcfdEvBvh=NpeBC1r-a*=4a=+&Z>eYnvZB{>f0~GIPDyYc@G{jQFErW_17|W5 zC2or1X+f0VGkIbT*NOT{99T$)-bvBc9pLOb_ zM55$z{Sa%a9{QwEO6f53?F7L>5{;JncgGQIK$|#1bK^B9-L=UfYaOcb-`UWR2U>90 zQ*c;YFaUzyZ+6OsmDwu&el%%RV`w9U3#zw@qILcsmO5N|qh*An!whb90WpMwKZH$g zFFtz7=g%FKq+!n$E8yQB2R`)@8~f2RPMiy|K*>LlBGE4$1y#Gh;34go$$}roZwPKn zFP4!K!&-#|oW<(eJbfY0-OKG>Ucq#{s@{-Aq3!dqr!KZ>R4vyG8u_aI_&p2%waWf> z7n$~z7FOdr{#mww)8k(dSd2hSObp3L!hUmzzP5WO(Rv&dRMGYM?amJx4d9bxevh;Q z!mZMJ9<|}&Pw$R9%|Y~(83%r>5~CLhrt{`*MC8-1B{gBVfurNl=QmQgxTh~ZQd_@s z_S#(XZ0}p$DsYPQk;&f`$b1>y1Ii=u1QS)95lAaLwglm^DY@RIaC zI!(Qn7s5S~wj3q%@4Ib66!GDmuy1oaWGfo~4Sg0l?j9nmR{KP9<27HZ8mcB%`oZ;H1tl5@c`e{@ElSX5ID6EWqoBO?`fxpruRj8$AvtC=`FZ>he>)csvtP#fOI^yY8ot$z#V?l_P!)@bGD?`aVVnMs&Pc zax{^IA>?MI=Zfl^C?j`P3ZjKW-PDGWq?#rkP)D zVvC!El+bMVqZ=64!7*8l2PY;97#MEfw!J=VaK66m-~A}uTVVBCtWI{ME_dUv)_m35 z*p~5tu-~Jn>YqpvA+rTE+pq1U_{}%YJJ%}Q2J^fl)_D?R4n2q?QPLwq2+*0q7zaJ8 zB(slh#KmEu z?X*MfR6EZO&5=awL><;$yNUlb+$}i^M_e^K{A+%#^V!OpYf4>L_)9xrP=4QLl@=rx z$Y*nq5H4r>xBxzo<#O+m^LAe z7Ei?xIfR3M=lSF9k^!h1;6`LV#W-X%EOjNeaCpSrSmBX>_u^W>z!Ou#KALEPH#f8e zA((D3l;9B|=X!Q1e6@UeemsLmesce!o}a&P;q_Sb45wRpk zqjg#?v&sw2wwH`aK!zL!{1|OCpqm$kg3nnR*)oA1=>dsX|MUHkspi*^LOsA-#Jo1^ z^gD@e zy0~04`t^G>6FcKNy3FcZDH8O#*H^h|KuQ?IfoRZR^;+iT%UExSpZYgYJne=w0f-u| zE!N>&0fMuDf&^jN%|1P-mp}xe=pZy@lK`5@!Bd`$sA&^@Q}M3)rOwn8v`@ zUx+h&)IXkUn`$Q8i)L`{|HjX6N zpw-n>BBaylRh#KB`3>6DQxt{P5kgHY68|+2mLbMWr{m$jl#Frbc1dz!{0oO9LV*>p z5ZVpeNHuq?qS+xz;NSk&H=hzsoz0XwWC<}r<OrBb6JBU` zs(DBv^{{nsqkbS^zW9ycEhHoq-3oE4H2lU-aU;fPtFY(aWr5I<+Z&L_6#QMb7(?na zu@%b8pV@ynANp5s#11@dwiYEuz?_gmW)Vdbp7iFKr+5BOtu6ua+Cm1--}q~fxR6x( z=tSUJw@zTiSQ3UgS%GMaLsD@LP6`bD%Dlwpia{xnJx2%HgUdxwsv+4QHTtk5x0nzx zNGUdC1*uS(C}VPU=h6owGiL`PG-1N*V<4k3i7MnKHJ>tsH-{a`wA&ePW(*ds7hMdL zw}}_!yNdnBkV2uY02gTRE_Q}UH2X_bmIM{?qCVfMZk1GCDV~Gz#Lf)Vz6{K8DAGv@ z!1NP@lctK7d0oSDQ`sd5Ne4LOt*j&(EhJi?X|x%6Kc2Tni?14`HmXL)(&&X??w&MG0T)>M{R9n(Ec+&jiM=l9fF1X;1~Zsnqk2%u*{4m}GZK%lV;2X|F= z_2KR0hQ=Mb>e3)xBjjm0bVLraH{5Ej!IhqX}nx=F7rn;D!Y#GjqiT>{i{3I3Q>e~m})jY4WeI4Nj{$&N9_a{EBx~| z)PqBU=!b9+@e^ZW39d=%EVNtVH%oCJq+tnj(tBZCZ$^4`8@?Rd9|WME(bCElQ< zK$@+mrzha=dU|`M5jYfl+$ctNcTM)cVl&SvE7ET*W64qV=XCX-yzw!yob;YIum^3> z>1i&gv|+{W5Hb)%CszmrPap{zPKi;kJrbw#LKvCg6DHde(Y&aVqLMC9qDg~4YF}*B z<`=Rm)2B*a#n%7X*@*x$Wl-i}RNNU{v*zwcr20jy2U!#e?M*5-ih_aaA?v+YAd1ft zc~s=rK{I)6(q3-se{LAduV!b1ONDpra~7ELH8 zMw)2%Av;sU8IN&`98v-W+fM4d@(Xq5$N;a=gh2Z(m_)5U;+&QCGzRG%VXJyA@YL4|^p%`0A&ZJm%F&)mli%pZ4->ClN zv=(_6div&?V)Hz)?+EWeZ86(t8GH*xUro}0mI@|j;|>v*o$sjD*4BM}#hdA|D9PyP zT6DtH{5AJ{jRr9YET@vF)KmStMSU6D%ilbU0v`Tu_y&&`taGgTN&M^#njN)8g91K4ZSVnt*klqAw$cqmhiV|khs(o|{l!Nt zQ&Up_{Y^}0p!m@UWMQSKqbm4f2#wHHkCOsKM5AH4wjSibQCI@21Aogdm~H%%c>r;03x%w0w4WOf%`5sO;MiA z@)#!VEv#S*%v=*p!>9Gr;=l8C0pV_N&QFj2K%)u^;07V9%K}=SYtJZGpk|exX7Q=1 z5h#1%8&`?;8hH%-1e2%&t9cjWCxzD=>2|7cdLHsViq^2~)gRe|?>`oPu*f=TgP(Is zmV=$YSXmgK-(ih$=*9@4M5%TuF-H;uzt-QEsRO>M8+k{JeLrvUDxSSeAgG}d^#NC= zV))hj`22nIB%u=&7K3|D`rns6AZJVA!lcReClZL&g>w8u4Kl-H=X2%BiO0b%kN0<- zvsegka3%hPvzfe8xuDoCiQPFaDKMws)ID(#>S&q7yEdaL4Dr=XmaFu@m69JQj@pDD zatMCP)F=zG9>)Rss_t(P2&RCK#p7{FD5u2>H(b9-Dnl($zT$X*Y3safz)yd0_cSAm3CvUo7|jqUpWAqsMdh=6?PBtkkP(h60zdd#2y9h2E`(<&0eQ>)yr zgen$=s@o2(3})vgR-KHBvnj%hbKFLdy*2v|%h#E^g-2Eq!Er~ip*^$F`#Iq5j{tAE zI+0}aSfOQJvRCU@aelGO0qo8M;@uM}nU!qaO0DPb?v>djTKS!*_`m0df{fq-$95m} z2ut>XNX~B5x+`57O58H9>)rBLJ{s5A??Z3e1i|io&3@4v`F?kh4CBN(-APPZ<_pr% z;V$c+?TWh#q@tGGwk5-2g2h<%!P>J@i^~Xg#k%M4m5G`kbhNJ9Z>f|HRW`|23lco} zE{0}N$2_RTv>_j6suC0#a^~-nLWc>Upd(%Ab|14*i^=DiVa`^?T}u)QA-DIpS1+3~ zMBMXY{IQPe<0;~!XL?OI>s+3%F10#)U_&L7?Me=%I_<&j*zh9DTa|ZPjywRvy>wuF zmGbRJag^5JJfpm6r{8w&GUsx8?1PdlF6_?tRy z>UZBg`*VfN$#QZ&p6qYGdh_`W>2v)?@8zLQ;>y_6Hpv)0@?NwYKVrKta_CIR-slwH z0xU4UOn>fL7&TbyDQYYX=E&G;Q9D=cjpX~gQM1};r&Sk3hYThq=bZ~%H@i7FkDntF zq~xd?58?$i)A-+Xy=Us}YIV zV|o06Z(_Jjofuoaex^K}2%kwFqVO%?feh<#HBrp}P66_?A>Ap5aYslg>?sFi6S8EN zfHy+RiD{4IeS8xn-hcM`K;Z4{{F;ijR}wUi_rAd#`7bs_6yWhUE-EzkCeM*6mKq7Y ztDoXi){*m_cqzXXp3%|^A~^hNN)J%n0FQFrMl%4$C`YPUQTOM%TZH%M5m9Sl$Pg`8 z7b#3FInn*OmrIMIM1k}GH7UDX78`WS-v71#B2S)Dg-v$Li?g~Y<#JJc5;V;ee_b3V zSH6}p;H%z4r+MfqzbFd9J*3)_6on`#a)?3z?mvvD34aJ}B0qA!VmrBj(DgnmP{ zT&lM@J)9~CvM$h?9pkG5@7YTj|A1|q6UMa~f=uQw$QC;V(&9QFqscxa^aJl~~Y{8hGORiL5Mwc!HV+cCgx=uE^%TA0JUAZOs%15VPkpX99Nvb zm%lX&8iDO7%E;|b#eF;W?K}s#y7kDemu%w9xKF-0S4JJZsbL!|1*1AJiQB+YBIH2w{Ew;?W zxek9{V9r1UFgtf4y(w#=i#ttAwpZ)Big6}(r;!nv>HX38 z!k#f-5gsn&jZkgZHQeaA{rCl|7%tKc4=~`xvt9&9n1xJrb@for?P~NvTN#7(Sk6!e z$7*LU*X=X;W09R>%sRF;8`~qob#hKn?aSSK4fE9|e-M`F@DP59TOo`78P7mgEw>l^ zzL8zRqzcosY;&Txkvkq2;qA0B8t5<}2XNDt@pEEWLl0QVxuEuEC4DlP7+pI?UH3>` zKO2Ia0wf@-&L}BOZr|px14Xi;7(0wj>^nf|2SAZ#q5!SXI-OYu4<_kLoa^qiGNN~e z=ui7YQn^TjW#fZ>o(F5a3YH?`52Ys!87S@!j)Li{6L)X3Gx_)=b^qR)Q{-?v`&Lqt zU611bH1WdKHO++;0;LgXkHPmxYUtbT4*cKT{%23@HmP?E5qF1hyaf_vRTAC%QwsFY z^snAN_gSG1Gh>&nZRjKO`Ze18mKeO7SD`KLonO_DM38gO@V@Z?|Ne>npp zYLa9#PKUZ4Gto^&?Z*KR8=DBcE81%*<-x-#Qt&no4Fa@VhYsL?wgYr z5|dxM(&M|r%(@z%gCiHUl(t6KIJx&lF_}AS`%>TLxDK&kV=F)(V875U*KmJrYyg0}Z~e_N#Biu`Qv5)crM_E+Y=<&ZW!CWCTc zIA;14bn?ljKYhWeL`B09@gY6_r8bF^4KpTfQ&U{#fp^e?5ygg|lyGCSJX!~JIVK{U(1nocV7n?9a&2umK^x{Nd zDb_m*F}%zi!0Ug$qI8`ANqVUks%A3j4-5>@adWHtsh}vp&Naj8|Ap~pZ3x;#NLu*2 zE`o)H)q=knABct#>fg%W)%~vAyOimW3JDDHh=p@$#h4k5+LPCl<0ybw^5{mL*Y$h; z$@@`d1aLi4DKBG?Ab`o~2f2N+&*ZAKq$}Pi3WX(E^!jqbm%_dJ0Qc1fa{6$(Zs_6R zF>!Dyku{6L*IIDD(7m_kgYhbZ?fn>Cg=QKTS*O?|{;K#RZt{SF!i?44jD^M&!Y7P!@dFcw}TT zVC7~CP)XrCX%q!H5gXOW%nZDvCgk!bVH(U%KVxB!!>(LWUuc@F4KEoqg;;s{Yo_}P zGX47NP^Z}()i_oRHb)E@k@QC*1zT)$s-n^M03FIU)E^HWJ;N%VMRjw;Uv>fFP9n%C zl#FR;;Ni9&iv#X9V987M{C*Bt(>l*%qu)c{ZFo08;d!Q*|5u&hsHBT75VH%0X*y@Y zz{h)XboDmBTlKWi(U(o|JS?!Ri!dv#!E~3!JYq_Ku}WgqW}nPH15(IXQ)7@wBn$2| zQ2BqI1d<*bjFAB>BM~xtRr({N0;-?xdMDiOW+k~p-wIRSS3=@o)YT{OsiG)g0s^ZR z3D3;D%BNLGFyA7X?!@Jt0`HR{hcA(V&Yk!ed@?BAG6&yWsOK^5?Z9r&QmZR6U}yOB zzSz)~;H5NG8MTvvFq)v$RD6%)m3Z0M@6s&*geCwLe=pxXKics^iw!guwbHHfw zp6s6DU*2>Ci?%6mL+QE49p#iBt|lgW(Wwc z3;X}1y0jtvSB2Ahg2FF)KuzYgiADS@vnGb0$hI#wOFWih38gPJmU@iC>3?vQ0Qm2` zTx=~?H<$Do6Y_k13%gx4+hLVEphFoNU_vl=3%Hnm&d(fwRNxYoP5KN2FCHujK&DDx z>v3Pe%5DFvTAwAIN&P9OE*Qw>v+!Kl>Uh)cSFSY1tTKa{YrvZ?J6R}!yXZs!g;(zp zb*ZX}uKaINa6ccpT8kUoa;Pvhu9y(arDlAKO*3o9@h2G&&5j`dusE-~u`H^qwojt9 zlJa&*7rIuLs{#>&02NF9~wN^Hx7yPsC7#MDx`!$-P`k3(jCgI;BM zFkGfQX;{CbH6IM_74y4mWBVeI?g2BiOHLA<&~IJ|W**Zw}j@V)XLrPXpWIfe=? zZ}-K(tWT|RtsDDG={p}g4B9fff`B}WPUpV=Se zD1v@C%RX0lgLl_Q1M8v46Qzd8US3`%lOf)F^R29BJEI(DxA7lVDF9Nsc`ZK%H|PZQ zqSX_%*fc874n*jYkCOSJ&CVy){7Zcqvjd)}t5tB=vuGzh0vmw%(6p*-fsN_tO;Exi zIp=7Ye0S(2n3tXSx;)hW`M^g1`RGgrKlPXA zqxdV<9CsraOj&W>Vn};-9R5-h@yUb)9s?fi$_0so>$^x(v zx}gIv2O^d3`Ijl(-s3{3i-=cpN1`h#bmpPMLj<>p>EhE|0x?s;fEMCB&Zo48PLIQRH43Q8EpFXux;$C16tGQu6+!MPyS5vFzUqQvyDVN> z_Z)67W$aFqj8mqPB> zL?3lFz<3>~W)If`M7+Q+kBSOAmizj>5ae4TMQ~u**q(!_vSM3vXd1Y1nFFgh(8Ooj z%!6c6>TondDUio4EA|fq+@KtT2#Fx+TM*i)$-SIt9anA1C}*{-JrL%`3q`{00XLX_ z$J6&Y`W>HDe} zwfVTVG#QT-hQW=ZImUm^)&&`ANDJ@$MuwPpG3Z_M;)bc7CgAD8^VG=O8F(;)L2-JK z&*eU780xsdPa(o_CJ=8}>jP+ri2c3wwU?NE?_w{eN839;JAspZM%6~@lN8@3pQ9+g#vz8^6h0+;nxdW5!xPuS@=I72$0zQ+yFJDuKZGJ;=nzGPjIzD zlpM&I?1mk<{+xVsbOnx|k?Yc&+B_$rP3;lFzb40>b1g zQH;E{dm@EazPh7B8A4Zm%&S|JhJ@2#1spa)puR!WkR|7yhzGiU{qJRTgJ5zNmDThfr0HLzU`b0KWE z;>E3DO0$7_vK5z>#U)Fwi4rA3+u^jQft-DxvA%2Yu=bW|l@kt3`1C?*;HmV8@e#)x zpXbkWh4HQB!CfWr8xpc=)@r~#9l%+kY7m~a!D{%1C z@jLCU&|`I(h}1Ul)#e4>sArJF3u1rFkk4C2nB!k0paY#m67i0CU|E=Y0%>N}|^Uc|LkoaB#Ku(y?pw!bNk z8CX_fNnG%OUkb$HRXcKD)0Ig76%?Hfx0f_Id^LUfDO#u%#Q8l=4jm@_XF3f8@P+>Q z*AC1ZQF1W2-?&i31%wyJVf2ZjtDgD-&6BSnXPuz49}$jqin9FOSS5SG?;jo{w-#_z z10r&`yCI#&Bu3Ao6D46|M+oyCVSd%{V{FR}L z=8%l%Tg-?SPXs7|7$-Ahj19-flquXA&B$Dd6GzG_7~Z^iD(>T^HMK7huenuEykA0} z3Mq9%as=4Aa0m$KDPf`3xN5_1I3y&@B{(VFr>N^Zl`z@9@JP?svJ6M$MK63r!O|lU zsEeel_-mRj&$eIXfa;7kqc)RZO_zhQ9X2`jEr){_$j6Uh4`u9h}lOUw~cAn zD~3a9Hb9@BK7^s-_sxL`Yz=UCQ86(g%4PVr!z>!K`F8>NyQVbOw)2L%=-ZdiB@A-h zq(+2s-I3apY$48fcYaHjD4|2gbBz@pkfZ^H_$8-+YTpSN3-e} zeqXLbZ-dKdtP1Xr|M6|MEZtoA&CT8LedH4nG4NB7kLby}I45j-tVXstMb=|SGI%KdK5Yl&Z6sV~2*8X6 zN$~gcs||SYxd&-cP=}WMD}{)^fl`Z(=qDR!wQJ}QK1+M72jsHCaZ|lu@w)sIH^D`r ze@IJ|b@iD(Z(`z%xn3#I>al(ZerZhfy=%flPLGpqA=+e%Ij09TodbaQsRNR-$?U0? zcjgxdbJ);!Jgpj|=O5GSF~SevLu=qEb!!VXV6y{Y;8M#5-*Z5g9>=ifNjtDV);D!0 zt2Aw*=Y8en%7sD{nNMiyF+|T}fS4}kxW>3MK`NYk4auF}T$qnqupP#x9iv>>KvC&o zBht&;%PVR{EnW^Di0Y;e4-Y}zCwqqq;f+hb-yX&4#p$Gi$y*_lxf-^RWNWM(aN#{2 zx5{7m;St3xS5*GW6gTsP)(Cv50i79x3<0jgldCJD)pOKyA(ySLG>8V&7P$32OQU!Z z&Pk9Vr){)zw-SfJuV3H`ih_q4M^INKRN5ywH$Ug0F88Yz6c?*G-X1_xSitJOPqhY= z8JGh7=*^MvRfjscwMzamDWI+;y511cJU+La*J`1~^QFTwv#IWw-|Gy!5&_p|sn7XQ z=EcVjj3SEgDxTK!i^KTvKY-Y_@_miOs8-bkbZL6Ie6vKfqO);s0A#exQy@Ay2!x8p z918_tQRhy5vDJ7-Q8Cpsvw(}G==;vz4yg#0bowJee2|F9bl-Xog^*7>>fCd;#)A&UT5x9b8&x z;gn-1k>T)ol$K2qs$H3180NWGAhwhE+zo?0ClitU$*3;BAHC&Az?0_{{AHjub!JVP zZF`gr=F-AAHb0X2#m`|B9vKsNwM9g6pHMXe5NgQ&4+CbdHeBb}Q|6*@UI;?4&6 z9AE6o&yMbISl0ViA}N$g1!c;4KYt(Ab}DatF^T?rgMQTvjTV>1;_Q7*#!s_lYxsg> zmMfu_SU&D89Q?}2ZWFU@y$)}4m*y<9OQb6?P!5>tgwnp`Pzorf@*fro;2-Su>Ac!p zcd-EF7`d^pDN&k1ZD(Scz}JcT$}4d=lgk{6%_0490>7YoMkC;)l`2)rQUxtLKpAS` zV$H!>NtRT>IpI-~c5_NWLBVM=L4!fgkCDM{i1!M?RYYR_|6%Pd!>VlCZf&}|yBnmH zkQAi_L|UY~L7GW-cZmWDC<+n+0y63DQ0ZnzSw{)LU&+)grG)G?8|TB7HixAv?lh)Q9Q zjy0uny|qIw7PmKS_-on7d7YFCHl68js+pUO6Jn24AVUe*C3b(1<;@j3U7{tWrNY(M zYjVICTpQUFlMFzh;Waq@6&%{=iS>{nghA(r!AqGL6Up=vJ;0w()zraFuIV$4(Kt)`wuPd>d``J8(l=XZh73tkqQE zQwA#jyY%|PP6xvLR!j`vvUamu@l6k0EE_8+;L@Lkx zm}vOU#a{<=$mtEm1`{C^6T)xyjTgzsQjZsH3}*K4E^lDhnk<7X^6@#m8M&FMeTOg>Td!SpT4X9;UA-Hml?S2wE-L#-dr+6fGGhBOxT7T4##uI+UHER%Pdg-{+H z7I$A9rY$XRIJtETiOzzZADN}v5R=_p&schl)mCIUPo&%RQV&w86!Dn3_B+vVq#`NI zej`Ga1i_me3}-;h;RGXBM%mo~edB?(FBOLVKMr`oB*|Vz!p6LO>|-*?K*Vj&HYV1R zhLsq4RRCWfPB59`VorHt5+ zM_-j`=Q=RUH)KxoW8c2@blEwQF+J$`;g9Qqoiszp*##EBHQzjh+LUCN4=L$TlZO_0 zGP?7{>^-g)11Q{Fmpp_Hfk+llbZ!Df6{E+MYMETR3ABXg?~^_XzB}#v)MI6 zd*13(uucZuVQ=*%s5L18Th`tA27bszSevj6Zsom&Trl)L4oC6rHM2Uqg!Y;GfG51& zAL^xL-`fomG$Pl`Kpc&;A~uLKM#!zEjX$k|VZurdn1$CWJ-R;4QiE+ero7#6CSwNC z_CiS^du_b-LWd^9DTk(9AMnTaUn-fCm@&6ytK|Yq^zZT(KT=A%LA?5sa*M4RP+C)^u)HjdIU4cbsTUyfU&JfevQ- zS5Nwvckl%?k299errPwR-#9ku8YiX`VwT(*!)q3DNcVDyZO6WrI%bJJ ze|k*$6{MSE!RKyczQGxa*W>hDob-UDY1gmI^Ls)=P!t>xt<~hWmY7;`dOk*CujSpQ ze)?lK-J$tvHn(q>ehhdO7&e;=law=?)Fgu~HWpCWpDyi(EzO@IucOfezZnt79=}#t zn-6Qf__;<%x7?KLOl!L=xh>(`?56OndATO@-LmjZ@PX`ri95~Rr5lDd1IrP}O5jwe zkU;K?4A+?^%cV$QZB||)gH|_T#3qj`kqn!7x=8eUW`~=2^UX8{p{HT=oE!JF)eM+$gaP591MEicF`36Sfo5s8=kQ0Rta#uYScetG*mnFT z(Y4pms>2Y~&VV;7^XeU#Fu-9=A# z-hc^Fzzwfuz(58N7|2hLKHWnv2m&fzxLZ(hwQSd7Ij7@Lll>$je=QmSA!NRB`Y#j}HqH;K39-U2iKs-`T zu-gD^t_mMAbg|U%wUmo`4JGC+K4%X4zYL1eUQ#cH2RZW2;H9`tOw;3A_q!^bX;|b@ z*L*eXAYp$F)W9ebXD}?s-EinKa@0jLPr?K$kSJx2sH%yF^iLV-#S2m?#=4CnvWf>o z-`LSL&jl11sfro$(KH1y;Y|Xz(Cxd24m_t55oB6n$)~UtQFNefo-m?7`7yOo&4cln zG}l?m5R|edIZ~w-D$2rexK?wSm>gPBq}~%A;k?J>#);^b#B=fvrDl}SPg93}+6(`Z zCmQa5$4k29?3l&LWtD=3rQ@#~@(9gyG%ep0D~H^OU$wlz#M(cqF!&0nNFBTIj*tD0M0lvlg;`zsN}8~jQK zOaV8S!tT4!pnexzkAcesf4l=)RR3)hWfhdIj5p~Tazkso*2t~iqlx~#+RjjsThxzY zrkHP^Zw4P*hPfK)EZDvd7-z^t)xj(X+Jvs_Nemdxz??}XWR^6X`}?^b9WZJ74j5E? z(ZyqZGf;Qhk)*!Odi#vyN*;17 zu`S>puJdbibLiv3(MH~4At})Ui-aXa2c54_yFv3AgbYaWJ6wzhi2GGwT<8JuySpap zMhGYLDknFKz-7<8JZJF(O83K#qL8P^^p-na0po>9Vv2+}~jpMOlhXO-+)OCJlH%z01}OgQPP+dg=!9mJaki zdo#fF(_)XGUmy$1KF81P-4t|AiIN;{eBp-$fbG|2A12g~s&0QuQnR`Mf{9>Z*kPq^MEmIA3Yq8G5odw3eypB}qSxgiw&H|^Q_bWJ> zwYgPj4=KU87!D-$y1jm;t3~&q9(BTt)Fb;>8y7{%pZ7d1u(3qJhkL(tWQqaHF&N%T z?`GtIlZ4grYUl29>uqSlhh1On9Do1b3l0RHpvx9CernjyFF#y*;@vvKEWgMsaLY>O zYVcP5=vDHrqS_Or=rs5WQ*uY8Y{z~k6P^~Nu=!*U1A5J@RS_-zfTsgZk$VG`!2aps z>zk9}5?L+ieYX2xZ{Pq#;*CJOiRy+)6t{Mv>Kl&kAWz(;TE_Cvn8@!UIxLi9wl%t- z@N{=gGT>zME9EI0JGDRkWP;yvZaj@`Sr=_qG*_W zykAB&wt`!Dc(~QY3Lxhs1hB$pv(?MUX0D_0sm29Hx&MEV(}sErOY;`;~RS&fACfXUyU{ z>i3_4-Omm+pB@gVuIuRt-#%rQgT=M~zNUvvsQutX&<~av_a=Joy{-4~@r{bqE!@tyMu_ZxXWkMThZsUb5soq>?o*|>Adhk*Wn(m7Or^3%KN^$#$jj{luafpV z_P+veZ~iOrcJLeX;zaF@dxG#?tM$|TS(^8Zv2t^KKW^9N2u_C?QQ-tM&40+f_2Tcq zY&buBe6_P@Ok-{u{nlT@Usei*;+?%2=}6zp&mxs@UgK8QaVvBzs<^k}wUvjN?zrwD zH>BRP%*D47OXX>L#_2d3sdzD=gkQ zF?SUO-|kBEg4JFtfUAUl_WS0yTwL1%iOAq&I)#YruBIn%HIRsF5@7C8dh%WINqcp% zMQCOAb|gj2N_oSJ@inOip4CijEyAp+{YK4T|d7 z{j$ES7y8xl+wG4U_osk%N8*8G`S|^SGvz`kaHa6Eq|b?@w}`a3`y|=ckReF`!~Y=` zr{ipG9I4$&M=!cm?lb8zKTG?=I8pK8B{A{sQXb_eWd0!qXDo&LBN#%* z^W)10RAHaq-;}$Azs<7#@TC7%t>?aB^6#aUO;=yV@TNvPLbn^n7}SOra?WENZc}B_ zzRJ_pk66a~RZ1~w&AL8~kxTeAk`~J)jL9*s+8*(qEUO3*>l&fw|2rNBNq1`{K}3zA zKRebYNz0#(#2$VE{WZ)&|F1N{IENcDi_dHbb-e@GWo!uQfr!>S1N^8az+jow_`G}W z`w(-&5T|A93kyPuh3};YE5tH^QN!58YZrB|j}S?xzZ|TsJoL+y!0(chzsie%`GPb>x_e;ug1 z&MO#~V0j<>8VPE~0QUBm+CQpx3*VJ^Z^xBy(pK5U#PNq~nQ;p>Sfu@i$e{uWAqZ8J!mC;G;C>H9WBzR+W<`m>d z?h)geJ4srGb;X7vC|lQ4Z&+>Jh*?swzSs;jH0Yd1+FB7_Cf8nq+K<~;*WMAkH}^72 z3P#bg2s+zYg^|(|c2cW7`>SI3;l<8>4|X5^N{u73E1{e(M)JiEWoqbC-{K4CaF+3|G%983L6nt&dPX(-07}SsuzJ`J)|Jn%}gX z!Ue~7)qN1HQ)@3YM|ow4(ZwA4*-546!w(e(#nd452a63nzPU!RU^p#fV8dU5g_$cV z(4#UGVQTVVnVQ)bmH-SuRH-gSY1-MK4Tjx}u*BHUXBe;(by^Ni$WciPM@3ENK9&dE z+lStAcGS<}4pNNE#NrO#10P;9E|`J@+;L^3x&DlFZ-_B@IfB=;V~d{M3S9{U^azG3xLotw&&6Kq}y}0{jE( z8!)GG{90{sbKe7MtBYCSO>ItKa{YMRBWnE&_uJuFR7n?VLE;USijmPWhK!f*sjM5? zWs8$BKyJ=1gb2edTNFA?WdXfWjhR5&!jpXUGwd{To#Cuht_<7(Z+D+>yjBVA(0b7^ zM&?}G7m9lI7*E4KO|PVn1&Ge4WWB>}>3&xvfWP6~2VFKbw{dIq$?tCR zXFEIWS-JI{-W7^UW7!J4YXfP2Ew=^V4vAfD@FfDfcO-yiu3Js{$J2|S5nO5~g9VmDp#D(0is4it^F>ixG ztpt1ql{ip*tgjE~z3}Mj)rL~qW5*}OUzrs4IBe54yZn-VUrh4Uw=OZNQ*oFrhoWZl z8&D~=9DMuspvBh}v2L3m%IO$&2le6HkB(z|g={%6n0K7Gj}|CGQ{x~sHUi^Hw~c7( zBkf&aLOeb@qmbo`f`dRGC4yqW1Z}s5)S)2>EsMfSep^KAUQu@xj9tWZlKC)DVsrfW zc3%=)B8zwh%I1|(WY|eI)r3VavBBo-e8mP<;& z%UMQohePB+$4ljo`jc%b9?pXJ*KHgZ4#D0Ip|80^0%YhoAOG^)&3xyu`Ivb)_l63{ zk0F317XuqR(Q5>l4>d3Z0VH!huT(LB4-Ke?V7T(VCfGHSf?NVNId3B<8cdP_So8%j zl7RN>G+kUvwj%Vpw`kg9DBorPT}8@~9woOeC@S|S32bA=NIiO&a7#(NNG5=ds%sTh z{i=()#rNBt*1+#Q=NyC^#F$St(Ut2^dgt(wEpnG0p*MvdYl6@D084Kq1@NRcef*ek zqzzJZXxU(#v07~MT<5KP=g?pR+THfzN~Kb@YJT@j;+gR(SWm@O_rVpa#6o7xV4OoA zL;0p8v9Ynmoj$9=LA3!e?(oH3*n&arCG51>p5uAkQM14`Cy6j+-bfYtgInNJNV1@g zU?~IZI3B~QXUI0UrH?c>ohU$!HaFtr{G57^8T6|qQ1*meY*B+mAGY&MRkoL^iAAWr z#DVq|Cdk_nz|m}85~9BA+=*Ch4WfRn^}Gu-fR=p@1{GMQT^5@jWX1NUGK2krs(SE4g-u+@BJ#Rq+*0>? zWsQzJ7A_((Kt-ADkYC^X)u&Zaw$L%sT(OwGrRwP@1`{K8UrpH7iS$z=ZLrwlqVW7M zpA_{w51%@WTbqQjEJn@%|8_ptO>7JdmetR^6fP^Mva!GT%D7UhDQQ;{pS$KMgCGxAo`RJ1U!?tkV zK0$0_j7K=oVp z;^Joqub*JCm#tii=1?u+<4V+8EOZ%D@X=dHjGOLw{tH&tD)am^5K6E9BWD+=1i&X{ zSys_`s#L#zU#*XTKLV<6ZiWBz}~L6Eh}jakqn%T~rNn@VXV z4%knILSgkEjTSI?4|3fbgQ(XJ7kk6Me=VNO>#rT&;^H4^-oL5vwbr^c%Wt90m7j=F zhKCFJV{d^N6OSs(YdIMly8Ocv?J&m{axljRieC123hvScp$m~@H&z{BrmV2QKKZAS z^+iyaA$qZS5y;C&{b&>+-x}RMVbM#tgt1>f4*BWGE25H^i@8j)9#l9I+(0vYXL>dF z0DYpX`pp?R3MAE4nT8KP+36frYQsui-Hf8EObYy5ohrG~L*L8{hyh<=I%#aREp_xm zt?iu?Fec48jePQzk6fQLKx!_6qDY*nH0nJ|uTU~Jucd%0LTy7)9Rna@bkZ_P&&Wz= z;iG3cn>e}|b$=s>0;&%V=Lk2xJ(_LwCFK7+P1yfar*W2$C+PV{2dRB+UQSO|R@OW@ zA5prH3rZ$gSeT)Z`Aff*YpNh!WbghuhdXd#_SK+quk_Nro9r4?+(zrC6aRo$Pmw;p z`u@FC(wv6U%z=CQD{#@w4gqF`vX#V3ErAU&OVkVa`^s@DpK1O2Qe-eo?1qCol za(fGjz46ck%oXKi(jDtdmV4v-oJ@BIq9sh1Og9O2!OITpt&QPFJ!o0PxVmIs%M+*x zHP{n3^9dhLYnSRh0ncM-VRn@`jA4^VcUHCwa*=}cArJU3wl9ut)KUWKqjK01#*q~4 z__~Y0NBa^49RCQJj6s7JVak7bDUKDRS$SvEf6SvB{oy;~q-1A!>7~SM@>11 znX}#bihHv6?yIh#JMno!e~<GQM&2Uz z)Utl$Gl3LCom!|^_^yK~*lp6=jVu0On0sLOiZj}$QY1}EgUW`_jG$aMy1~meNU021 zMPZuSL-b~*R+JvxVdn|c^thizh)2uT%%)%b{qtueoYE`UW1Iq_XaUgiijD&}uwELK ztsSoO@EJ)RcUbqf{VHFoVg%_(mNG6k&=&hrBHEp3Fvw3iiH5apr)7yd8hn&oOjZr* z?QXzdE4;oD_K1r&J%Ylym0xuYd6o4+pxC??e1C`^?R|?jv}F_ieqrh#-DG8U$V+87 zbsI6RbtP+4V`SpL$qZ7>A9|||{iy9{5iIv&nCQWzXI;k; zTg5PW4T}FxPyb}?1YEIs$(r#O!5XK==>o6b<;##&8W}k`I~U&R{cU8^73fcc$l|(( zEg--*r$Q|mviIDa$mRyorhqk5OO^lWQ(*Iy21Zn{@4E}qg1wvm*Rm^5;)Li(X=vhd z?4>vKt2|(i=Ggn3;4>5={p?vr8!9#iLvLC*`kMI&vqsL1OkLMR;)P>hKU+ev026vJ zX7;~QRKN4qVl|aPIQuAU_i4#$wp2@&<^K%X0s2wY_ZS&YHcC%l-#&%uruCq*V_U;_ zxH_t$!n9$dtzkDA!*V51ZX58zDT~vH`>Cr|Ww`+)fh=4j^;)*}mW|le`->Mrohitl zFxgG{9Kv>@t1nhzcjE3h*<+aqMl3aq9zWBchr5VC0tnG(J`P@M+efQsu;TAt#jqgW z^w}Xp^Wf+gO0ibE+DdEsLgZ}$i?ka>qYCA646Yg5UUOy#Rq`%ot3vlK_3|ArX4P{)LFb{DL$eHGhHR&G1=CJf?e2-30cKSfJ9@b~3l((J7eZa1uS(MA)>bfaanvZ^o}u#jk<&L?ZSRDc@k6uH;4XM5 zgByLm(>QPNkTopP5#)2GI**kz3s&M^JPxlFT6=eP$FVU(SCI7$fw>oa(gqABz~Ohg zPRn{e(%k`0b2bh@^149i!wo*5s^7x=c!X{WDY4Ol+GD37nB$uYZc1Ai?SrP2kg$2 zkZ&^?Lk|b5!7lFGo?b`g+m6gn3aP)gN9p26?+1%ucmC9=OQ+59-zl};f2L;Pkprydd4+(;!apD;<$7Rvn z!B)#h#b3x+o{;iJ!YX;J#j#`=!hzSZ^UD}*KI7GDu}4^ImzgxXEhaX$H85Vkyb?5i zkHM9>=MzvU>B**5XoJen%KUbgx?}aLLga%mdm^fGQ?!UGHRxSBRRSIY*hg^Fi9LAm zU|sUb_6Twng8NHJ+l*$zwi~0k1kguts^9`4}Jgy{|bY zK=QPfJ^S1_JdFPwlvIYHqW5&ig0*wk!UDZ);2DYIqsI3rIcce#x%^f0<1+2Z?r2hF z1U0AB^N)ZEI`szp{`n8CiGZ-Lp>nXiahNhYYqSUtAlK5;0y7M1DrknVuDIO=kH~$z z@BguAdTDx@T&V?F$PJjGVM;|Vy}51Q!FpMjUPVQPCtDqqN;AKB@nRsI9UBINt%6)! zWG71-nU&ZLDilJMf=J3XJR0yW^5zCpS5Iq$6+W>Jav}{46Hh_0Lb1&4qXQ2!Bj$-7 z7S?0*{p31~JmCgML_S;}6yr83L+f#qa6$dt`46rk&ywOt%ngOZ6v z>pL!8%c$j2Szm4&h69x^Hm}ea!=by399nz$ym4EHfq2bC^Amf-*>|u&)8$k1VJqx% z^VM&1J#;vf8Z@{w#KNrPEP7NQY#dCevtK?_S0M2KPdPO2mrv7LU9O;qW9>S zr;LFzmL;IpvP@2E!)LS1VL**}K!c{q(}y=MZBms7u57p-WhwAz+=Ew{wekh(y|)|X z+e*{h+PV+mMLcIFcl~DBIWtm8DK7C^4~g$>4S%;x60>wnH{Q)^xc@ev#(fYtl|8Pn z0v>8Q zi-)za-U}FL`YQ~pdn$nJ3baAWJ?2R5by=_nHK;O;2PrQ=cT&q?z9Ee>a88@ls@1Xi zNL8JK*~t%yD&BN`0}^=EuOA2qUm&fh(aK{{P!a>w?kegH#u_8OH2ANQQ1r+Nsa=)+ zK+XUnP1&>5Zf2fimQ8Sxb|+q-<53Cl1nN0`E@!>Ie;pX)z|DGVtFTvw`>?-6n8KOh z-m2~D8QQ51wA66a`YYxIEm?ONp1*zgng}u>Yvzl_*Qfd%uPP$4awVQZQ9WSNQ$7*stVoUfm>jV?Mz3VLkD;9?F4dve+-yixV3D9xfK#jRK zj@7<>{%wJKDxgEuvI_&`T<^ozbAMkOF)=YgmE+*=a7U0=IZVDRH)+`aN-ZBtGPhM7 zAvw;V1OJHXvP(2_H3IJkVTUyFd!+Wm{RO0?9ri9)&M-vQb5c1wkEWf^ zAN>^-lH45mnRJhtU0j#Y{D)MJ`3!ugtF!a!_C`1N#bO%h`hz;qfixuqSU5r_l|H_s zbd^j9datdqXjJrfLQjs^pJrqG8QSxxXQO#-XX(1C{Nr@};Xc60X2QN439ytq|63m` z?;q->&6ae|ADkf2<@mBa0s}~mW-$GI$dNbVD7#XRp6~p3S1YIy>FkAKMfmYLteK6l z3Wv7G=Yy=`y1jDPesj|<@&7PTzHyYzn*ATSl((G3TG9WSDQh05b%l-;%624DHwCP* z-H9|G{4hn%OyqlgfluMI%<#M~B^}`SBxXN5-Squ7AANl6QA?f3Nm0sC<4#c%Dt`R! zPVu6jE*qt!GpB$D2oviW#*dgl!hNmd z;}_kRutP~nmM5e0$e-u(V93Om^uj@nC5p!~O*DA-ptQU_>(uQ^dDNW<0-kVj*oSXO zIC1|7`ZuK!~S~9cMmtUlf>FKZhdgx(VqEt=C4(}XRhwoJ+ z-b+Jpg4_0a{9HG0H5KQSb)>#1Ju#-Ah~85VDap+I+;26g&P=UZ13E!8-xhk&d9 z{Pu^=$w6FDh<@k!$L|kbn+5N=bBqZJllaY4cE01pUt>EB;l}dK6#R4%Wa9`3mM~bU z-omP4LgCG{rN^7jF30o@^p_Xlk()d>o9vHVv+G|tL_|5R!%}iC zU*D@Iqb1Xq{0bToiI0ox7?=MYHCggIs>pomlvfl6iU>|?9!+6*Mmw=qeG%nF+&|On z5Dk9DbZREhdzDsJzKxK&=3^OuR_^z`^q47&U4Nm?$Peieu!N6uz6A z8a$M$)YQCf@ z=7IeW(s7q=$ytbyKgt^@_=Z@TkSDpjHREIx*IdQuDr56m=6i^^?l9h_^y<|2rPiPOuo} zSEh_9=t&x*dI0kH+abv{MZu%Cx%3y$PljM6A!4eyI5;E~&QkBkLjiZ(>O_WE8QBxC zOuoLg6%CkMar*5@C-Znr30zDDxrhhoKNGjQ>__w2%jOLvomYdJTe`+(KFIPQAbl+c zM|VAX5p#PQwcb*pTcl%09?d`iRqMa8IG>+UmCm-^t+8MkTUe0MQ+ky<_JtCQ-?9?uKP7f_7qIfI0(jB61NC5gKuaG*yWj<)5HrPdNCeH_+M9Km;bS7c7k=#vOt< zKUbn@S8C3$bM6yfvvD-r@BvwhNbeBKLN|7f-8gKEKuHuT4b{ zeXqGp2Ka1F7z|H&77|=&JJ)k7gwH0Atg16*Ij6ga<+grcLS$^Pv5i^ljx7P?G-$)W z2To{Rz|DeKaBq*_Y6|ubQ&3gj-Xs!#N|5A_N>Pc6p^52BjD1#*5CUhqQg7x`5`Fx2=?TD-T;1{lR$4BsHpHKs9)Q1A@PVq0#8@;E&W3HgMhHa3e?{*+qH8&PKveF6Blmo zn@@(4pZCtZd}T-p5hAt`KWi>gEm-gkkRG$m4PhG2z3P5o7RbQH*~0GeTTB}M z%fIFIl7*99T9me2jA6AvoNw!qfrxB#No#CQ<423lOoXtS_QO-Do$xy!ZfM}LzKLi> zp9qwi@R2w^!Se7a$pXB}yIK^bHWVKnK>i50L04x~6n?EZa#o)UZ_kPMg|cF8 z9zYaB(WIB(!;6?v^nWUNhS197-b6vG{xg5OBu8W=v8?k7*Wr11F_Bbcki~Oiv!PA= z^p%iFCG1&@$gC}!#mn-l`=zxD&Qo^+Yshme&?uhbSU4G?5h@JGF&NrGe*OzVopWQjKMW4;-p3h4c~7NeGgG3_ zEgz20AC{*I*!p+k-j(`S3kyjyD*R&H zOf5k00i1bpRa|1?erWgO0${hjN!UCkDyhnPdRbX_mhp>bgT3iw`fV`lD?5$8a(CRw z%u*wJq92St>h9YCFD`RfeMpb3;ikxVv@b5QtPY|W{g4!q&nO=P=UKptM1^3AO`aR2 zbvSDMZ-1Zza|IU#y4ztE^d5wjgIUf$@)cP8O{LQw$pUK}KA2|N%hJxRL_x9<_0gr0 zp)Cp~H`TFi^lQxV9*IV2#TPooA0%8IE?5B%G9I|&m_SHEB^(Wt1dvC-B&hdR4;M@j zxnpb`jQpSIKn|71gxKGs=b7>oeH_-!NWdt`0IW|W5~-?UM}Nyj0jMXI?(Rb1cb*)e zc?6Na?4%yr8h4le82^X`IqgUBi{o50v$Gyop{xqjF8z;$Wx`X}et(@v*x>+k= zxZVI?a)1p)OR@5%ZBP$NJNMG-#MTs;5?CZ zRFx=VWSJtL8WybDd^QH&QbJ(O75pJP7>DFD#U^5?x$vk2Tvlr^z5<6QF_<}sp^5=) z8exmDGe%Zg({2$6RP1)cLW3E!aNJR~f;cbAX-k>?9VII7TV=YtR_$Qz@o|vqsi~Pn zquYllwgviIxxu@qIC>BPGQE&1juLKU(OAry_KSQK-*@Ao-H5WEF6f#lx&BTyOYTWx zeL~c2Ur1T@EGd5c;;FDDnjRnJ_4TFuGie|7p<2z(q5IpjMo0(omr28j_Zv?pko@m{ zIFVV!o1+#l$Q5s`hgP2s*n5wX-%(`)he)@Uc|;%K>ay(JiuxMEJPUhnZIw}Q0X>ns zA{0)bCxqZqUp-i&ZE&&DxK5`;nNSAcRG|GqQ0=iSga47b7290UKVD7!K7xO|n(!Uv zaG*RVFVfiUIQg8 zJN|s=Ux1g37!F6P5$lPIfAd{pwcGHS6ZAj080)>!y_ba^G7?FZcot}Cr#O1D_X%37 zoMpbT=YVEFYHl8{9W3?i_ZLInP&?x^8h7J zlqR{-wEsPHM(?QRR4F6VItU)^x{FwN>7 zm-!O6Ujc8xep}Lp54ONJ@Ea8!6c*5(U*)voa;BUv{0!$WLzz0l1dLS zCu2Q=37*#dtKiLr2*czWFO;QRVV3j8p%#2bEz3VS`GCi?31`0H==fuLu1O@tR=B)H zs2A1Qifa_FIVJB+Puh1Kdz!UIG;jj^h}@EN?cl4zQ)=FwC4Vqv;jBQS8HhrK5~*SG z$`djsh5W*1d-TC&J=pJP8uQ8awX0{d`@L2CMbl<7>YcIhme|-VKH}Vw{0FD~W;N9h zbG7Z#bzK4e0m>}p17b_x;TRK7;}uRc7sk)&3QN9uol=^MEUm)#BIbeZ=(Rohc&FDBJXqpE0f3z_lI;5>%X?Eyk-hHWIx;?M_i) z?6IBwn?P5j3Yz`>b?+g!$k}W2)ega-_E*|UU!1-?_+To9IR8hW>vF#{O(of4IP*fd zrz@+Or@~V_uFmRO?H^F6X}t-zvvuU}lmp|)@uz4rKNam|rsX@&Ll`HPtFw32YVT4s zIlSAAPD?c4^APk}E;s(ufKVEdg&G{R(I~InJv^+zKzuNx!VnY~n6TmZ00V3N$G(13 ztp@-zY+cHFid0$}zjl{zl5iTS@?5~?4J<)D6g*ijUowT9mG%Et<|sfcu)$!tFGign z9XluhqzHXej{{Z;kNtFZ^*m&5;l`ldv>Y;~!t>$L8=HHP1}Hsx!$0qe18MjskcPnz zOZuN}2K{DUa>eN_qggUO=6z0L!Eq1<#kXl@vZSNV9tU;A=`UnpV2P6oNx9TCu84o)F=zz=TgRs+<`KYLw)n?T^jJZOFKeD*d_ zx5^b2Ec^k--()10?8Y#THs&3|HA%VvvinzbR*z=gvV8gDL6I_1eod75HLY!vVSC80 zV<6nIfj#nip7|wMe32&_a`3XD&20Zl{st-!G^Pc3%wI%+A*(i!{r%Qh{NmM4ohTmI zfRF)sFc#!w>uj}$LKzA%4z6f_Iz?KPU*MZAZhmboT{HWm(SfP){n=DzMrC)a3tj2% zci0WxyDE3PM|&T9km3c#)BdNwuyvv_S$<)+1;J!Ook64`GbOCfemvoqVcV}Ck0fv3 zwua+`(;)cuF@N>x(;M(7| zXSlMdo6SQ6+m^CK3z0y@?X_f}}*J`r0 zp9J-6HZS3TaOFQ3qe8!gp|BZd|eJNYDu{@ zzb_}04s&nyGZcpwh?r#JUTYU6EN3G(-aTprYc*7GV7UtnSY{Hly7$w(U|bcPB_Lwb zetviT%yjitdtU5Zcp}6_BpA3rm-!}N`Jf;@A`4i=tiVwTa#H;`S`i8)e^e`KlN=US zLL=(Ia+P>tJ^0>M_pK|!l79KHs-`aUb%WyH;ZPG)X}k;w!B5G}Q8Et2Ao2eK7tI3@ zduM2m^p5}uJyDKIiA`S8H+oQOI5rQ1e4(_@TM*m;XSobQxJ_?l#?}hj>mBr>b2O*l zR;Sr1Q*7_l5(5-9dfX5zHcm;Sy*ZXPg)f*HifzPghq4p_lEJux6ha9lGTj3%M2ejP z=AY8+qpds6^XTLWsJYW81`%MuiYj%dk-mILCI*0qC z8Vl6zvFDe4&LBWyHO6Z$&ds|sUepg_MWBvB)k)!9)@QqW&c|O`CN4SB8sBH-)h;DB zryibT#TDB?Ti{Jgv+!h+JE9mMo3@axFtemE`7=xl({u$dZ`u9f##xFG(bQ{g=Bu+$ z+STS)$O88^#btPa$dhf&y%7mSa7i0-9bX{Rk%ymkvl|#5Ok~;}n6|%z1>q4bBnz=y zi}umh9(*woAbcEsXAING<2_LwzSdo$eisPan9+HR65SqA1tgq;prs2K<%tQfnSs7$ z#Lu!xhaNO(K&?{&&0q*nUcIMT2cj!4AUo@KZE&6MD5|S(Y$T>?qQ1&TuX0C!k6eIx z*_b@J|AgFpWk0TV{8fTJoZ>)RaR&y}!zddMcy8;sqXIL!<_&xqIbLx1MKr&HSv~_x z-*ERsSeAP>%UT6JSpCxiWCV{%RtzzD#yogRQy+earHWKt76dR;L|CTw$0gH90H7sz z`w=)5JBauM-X9xqjdZR0>OjpG$Rx$(zJAS(N5R9wHMRpPvH-Xwyio#wm*b7y0_q*rm*t#! zi-0Kc%1~4r=AGtF{;qyq^|Pl;d_cmz=--eEyk?V|kQ2!jl~x}i(ZuhK0brp|$5A!0 zRwpo6*57#F>C*w`$4WpU1ZoL&MG)c!79_p_%u6vii%l7We-{>!wONXbZl{kfN*ROb z-w+P48OeSNA$kT!k7~I5$xZB>Vp=&RUM6tkF9Kl;#*kVGV5(te_|I%QhkDjQJW6!L zs~5s-0o~zv$#2E-V7At%&W;eg>byB@Tv4SrK;zmm;w2pa*7EhQ%ie8`D@q80^U4!w z!)ZZbiNwcCe8rb?9bdGEMkImQef85{++^ht%kQ=XOe7mRWy(9M^XV@Y zhd|*$ZP2+J*qJ|22lOym{=U=?4wGmgww0s%NqBjy?G3kZl`sh-MwSB_&-2oeq;Tz| z)a1nI`O;q3Z^239=k$Y4x39SpjnE%~pqz zWF&zS4`l&K+MbAP^_7BLJ~_$h#o>%_K+VSm#1sXnNDyQ%!9qi~1x(Qi6ufM=%+v=g zgyYnsv>hJuW$QZ8mDwl12NYeg#1Ve~0J~gK(G-X_1XwT*A$9EV1KAo7`Fwg2%=<%* zbuTtCF>%(u18f{DdiwiSWTMKAYS}==oz8n3HPRYDi&B_g-(C*#!KpbXw(#Ozy|&~P z`?W#73mlJp^HhIYcED!lF#rg`=Gu{#tO&Ww12F`J?|M)COGD24_`x_BE5HRXp2qKg zBea1i*{%LwoE$~_4lP?*##sXK-nzEH#l94rIt!bBY;24z61j{ zAk#7L&E$X()YwFL}R&uvR{5)Ec>evGV&m7RbjhOd6b!J4K;A zz#KC`&B~E|VF$k5xS{(#B&3&;L7!#Na>d{%(`IS`tm8d3LQEaAU7#qcM|uwcZmlHd z0bxg7>K2(jnm6C+v0&SV``0a6JIw0-TJ2-DTR4S34jqchIHBY~j9i1G6^ySd_oB_` zYmT=~UnH5FIAnTV-`Y9%)UdK2%EASew50f!(Bz15!xR9dCID(%1S5$gL;XTR+#PN3 z$h@;L+;*j=cq<`G4TqIiiS+!($oJIF{-PpTeEm|qD!~+RFy^)dN7Gpk4wNm>iuqd+ zz3j8!Mn%B!>w&95LHB0}!a^j*O6lEy@{Ch=ib2;$r33C=OjPtr=5<@)r^Qn}9Shz1 z>b0#r4OC+(DIVT6_iJ*~rb~Ozc0#QkkDa^+rs(9i_W8GFbN=a*h?P<5L;k0^^*^$W zGoQZuc#vpU&sc*N%iYg!GH1IttJ|;1_Q1}AbgOHAb@Qz6z7b+rXdshY0&BQlT1%Xt z_)t(w=h)J+`H9Ax4G&!0zqun}~ctXn$Vf%)%)g+#B{9yp&;>>N+haM+Ji)6o)z^;V~U0^o>TG$0zcHT#o{NZsLx~1}5Dx4^7sx?uUv({GR^WNR{t- ztHkA-?rqaK3K-3q2XAWMb|8jeozw?kpA>IwpFd?O$^kshXQbb&LL&hZ_T#1RopYIQ z7S(C5bwGi@b3aU8*luZcwGf~F+bD1@XeZJ|hM>YxdvXc3$(IA%Rjec|SY;TXnJ096 z^j^+LK4S27kvb?~9Co`SXI98#TE~^8UlDOnM>oY4jMjgqiJfScG(OmURezDzB@fkndj%t$J(V0jI#1bnSi;=yL_S zPG$USyzQp`E%I{8sJnuS3CnS}yu+p5wru{p!Yr>ZDfvU6`cT0ggUW#@e@-*|w&z~=WdLPM%)A8zC7a=el*>wFAq4FC3fP`}e#HMN2N z>G%jH!i~(rCO))Y*uKAe+k)g}$xGpogCgXUMU3=*_m?uNGkaFTMVQQ(coaR<=A3fa zBZ53QeumXu-+S?YpVmJhx_H!}45s1EEcVzeD|#8#NqRyLzw~qEZ`IYFrLR-)r&PU< zGV9pfqoI0%e`a@*t9?%OP!lr1ZR$R2w~J?qnhF2zG;=rkX+y2Wq?JPh9ZYwT8AMe( zrfm6F57r|fAF^Vr^uXADL8$LHQu(^jm1U%Tzb}I%L)eIM-Ns3o2J+*eA&sPiFz}&r zi~)gHVJl&)_=`i0ORtk&Zp^#bXkcD!xh3g)#*3<2SgxQptvV99ISbI$DV`Lr)0w^Gu(=hzWEqs_oG=VoUmPC z0e4&35bXF5928K@Fxp70H(zTOCbjPfA;%x?L}di>6*sjO=r2q6P`Zz#%vPr^sV*Cu z?5nNGa`Q*bSSnAf46LW&wj{ihc>U=iYDKA@_D~dJ1FZV7goLzr=Li#4YA!On%tIKt zo?8OutOzOm{O~k|H3%pmwJ@o%k^Iq+9O_G%O-H1spa2fvN&`LI`O9C6NaSCtRZiLE z|Hs!`Kt;K?@4^ZSg3{g64k?I)lyrzFBi$(oNH+tBbT^2UAV_z2H&T+)-3-mp=Qn%5 z=e+-O*7`oy+G`;jCZBnp>%Q(QQe&&16(ezy(2(ua9 zudk|chu>1L`hdX~XJ?|Q^O(e&ABK3oJ&_w`)E)5?n&m~Zo7nRg55(U{7%NxgNW8eX z$k+h=pVtVCz<;D5>DKU6e!JC2`}2*=gJfKW{9WN>KI0Y>%V2Vg@{A_aORum=|7v6J z+?^um9Ajx=gUr}M(i{HnjD8QF)i}NV?}}R(_CN|;gNoCUX^5j!#fKQgyl;mT| zJC#F@11cY6+(R*wJQatIiGDlSppM5I(lf zDrwuq<^p z!~u6&!y&x$>gIf*6ZTp}EelkhLCui`j7S0@vzj;N^P2}=ZimyR&*RwxYL38Wgvi*n zaUcdgVQwz{-TPh!KQ$qkB}9+TaceXSaW-R}m3;1?|0E<*-3DsPe~`6Com|28H>Yj4 zMGExtooO_6RvG3$XHbKK?hd&d1Y#3Z+Xt(KQwnq>v)u|eD*+ZobKngbzs-*tjpL+4 z!BTzNzs;mpHFZn(ah~EsVnEo_4%S)Yll!0~gC1!oEaCx@(AIBqY4^Hs4e^qcUeTH$ z^E6|+eD9;`jYo2Z3~q$kG?08l=fXfGq^=kM@xywa7g>mUq2Z-@U1f&bZ)rmm<_&LK z&%esEytp z6P=>cw>N=u>V<9$&M}{0*@%>-tIkyB$9hGtztN&xq#S3Iyt%*iB%1h8m!K(+Y6I+8 zf(V!mL4DpgZWGKpXZY>D+;KF&>U`UjfD&xfjLu|~xOnmu?I8&4wNl&%9L2ha%12MM z2MbZ$&T$^f)L#>O|!5Afq-PiB~YO~uC=G<|- z@}s)YrF<_uagoqHpIGHUbVgWv9l$i?|IAl~9nOm>Q1YpMlow;~44W4?5z_ z=*>UAx|5Y|$jPbwWfW>$es_;OEDp@GcZG&uvGBbCb+WKG^drx?Pn z1B7})2b*0=T8Eb25WyFk?@qV%4mY}R;=)L1EDv-^Z|z-+PXOm7scDE9T62M810n@f zUam<%bhRIRR7Noze+~SW=9mAra6$_(=6%bovOpt##YQvW9(r;8N8InW{)h>O14OjRs2%j4U~GhTptHgrNQ+-< zb2Q2L;n1$w>mV9pI}RSoAtGn`;_gy@ynEy-3S?ico?4r+`$*Jx&=$ee&t%A$V@@7j!C^pLmn(BRv-WCK(1=kpy2(l7WpFN>NXt5nW>H#RIC%1a>XJ zZ~%4%WTzmLqMK43(nP&H+0;w!p`ty(ZSPz@yyu6*ez#jbbO7+0e6DXKju_PnQ3g}LcwD++wlQ~EgACR^`1QR)2--|Yaa&);an3n-d_CPu_OmPwJUI95 zPyLPyj%+mNA3XA6OL>|G5~v^JPz&L<7rR8ZF#l$T*$NHwyPp+&`_Pua`{UT|_`o@NT2?aPJX901U}NsRYfDk7%&F++`4}7l$id z!HfYHw%4;nO`EdU3m3p=+BvjpuU`YOb&ye02HjAC{jrw#sNjs%`m-o^Bf2KYT;3Y% zaG47035{8M*cyWR8RPeR5A%APxRm5A*L#?|t+D2U7LJ~XF-F+Y?HLVsNrJ3(tlziw zi9gvN{=e=H)_;RYC+3mDs1`9!8bB4B!%?B@SlYvah zUVjX?V^=0^PW)M)FYqV|_4B$J8TgOt?*Lb$s~h$=WqcPWYBL^<2hX;8KaC5(9Dibg zHi6gYmQ)>mI#r-s3A|1rh*XyA`99Rx02yyQ&z5}yHqERXP-r37KLyB~!j|3bb!H); z&*(Vu9^xZATz&_;`@zR8h)6HE%KoPoCmQAG7RL<1Z1e3QJFNS1_zDUL<7+h_{B78I z1_FU!asM%|G>itCn|HiiQ7zHyAhhds1nQUmr276}Dlo$akh%Rxf`PhAq|H~T*+^-L ztY`ZmHAx-+C>0^k4;yf9!^@QZiDzD^`HBuWCY~4wq7h)ZZP`>H~>J zJW?gGVgkqoL$YQUkjFw~uZZwhXlOOEhwYtF2;O7H(LZqf@f#Dk(AEE}I{eec>MWIA z5AyrCSmQU6A~+j%Mmk*R1aE)*L#;J?3L_(iN;@`ySGDsT1{oq^T}|P6BkR`X%z1u% zjFcW{5%z;XWoFfqGSxH@kN2RjbgQQf2)x^XssOnmfzG2YI2QnmgoUmCpNJL&UCWx| zb#9geh;qxciEN|b(t{oPIT(X_M<$R_{4SHZYVbm4>7510nu_N|&p`2JyIp4__~Q*2 z{NdGg=l2vZNt4SHK#}Fq!Qo*ml7sI%>!nvMNAWJaO)OQG(_cY%9dI{9hO$Zd5H{IcfE?j0`oOhYuyT**)C&hf4=)?P z)Mr>0Pk-m32nnD%%%Hp6T)}^ta2on_sDTJ;T7fJ5H>GQcu|i*2dIo{RxIh;iOt0-E z#y7;JUiWCqdMV@@ERS3KB0~csa2Ijrmif?OdJW9coS*vno>nkz2I45X;I=v&RIh?0 zESKx4hJ>I>Z`_5#IiN2Alx`GMB+{LjE2DMz6S`eouHUb>NpuH7k6{SuNZ-gO>?&`Q zH?Sz1e9Zw%KT>KWbGX|3(NJZb%JwQ51yeNv|4&iEr9Lw7`(+U?@m1QBfeZRqCZAE= z{e<3Z;2C0A6S4#U2T}!mA9JDdq9cglo2XaQH&f!~hF1BJ)3(y_o=t{a40mcI70{$l)@&oR2FywBMawdDo#!4395 zn~J?xWFEv=Mb#}tza0lS`0;8}MrDd|sO zeh8>HI9@)e_&`x<+r(}981Bu=f?iLlFjB*7*Nmknn9%^@tf~c-Ss)Ur3krlgV*05nTwL? zg-g8%1b*>6FP)iLp(;XWVnD$`FG+)jgTKM3(dYfbmMtbm^a)o+blD717~efU7S!=op4?1zH|6$8cYm!RUs`l%C-{a_3kTCm_%CLsdA5P2PuAENGl0kNcT5>0VZ0!Ml?X%&j0no8)lBzS zTR`OWT%1Mr5IpF06?RPF4tr<;$}@*1ngtt2dOw zD36~mgKbGJfyYvx$3#gAX_V>nI+GU*1&>OJX~bLI z`CQ)PM{p{%s!jHTuph7o4AH7qPm~Mpeemwge%9gDm*UaWiGHQ5uY7{cw`-ZI?Wu8p zk~uh*uR3lAXE+}&a0WG7at*}b)*kG{Ec`@><6euHtmV7>Qs^#qO$sEHE~M;38SBx3v>oiYt}Bo{4)4&Pgq;JS$Jgz-p}fBfBXQ0Tn( zp$dqkxd@ZcUs8&S($R?zB)Ov2ryZTQ=mj-4SLph$O$3r_q(PKwX?_zKN zKN=-v_enQ!gbYvPVwpt(9-KRYx`cH7xUfCV2e6k#tZF|-Hy4qHl24=wg@^J-E$Qvg zMw^5^Nzd|Q`y@-eywZ6jEkOu|U$d~tVWe8kwcHVK21&hw<8N%i8icyfKjv!Jmbo1D z|2GdVXcO&c&`m0EoJ6@;_W+yB?8LkTRxyh@K^fj@gGErv%7V=Q3v`y zzq;0hBJf4~flnD`11A*EU-y+1nyFIH>LmZr_a?B=n1;F9AaelN zhL3C<Xn2Z~x5!&_bJtRQ+TKx_TDe7bm0X zEiwg5&ka6YJGq{+EK`g6%jd_OYX*mkC%^@NYPS1twx7$`^4@7(i*%ymHq}kcxZp@u znvYAq$EO)SsAX$Nc)`z4IzMl1rFp$<@+_FRkC`~{0%$2D$?s|#He%2@54~l@h3+lC zAv#8@GxFFGc+CM&A^nQ|W^Fmid7Dsa8ii#s61&HMAsT@}pR= z;hpER{e|}FJ;8(Pix-CUBLTjIo%bh#iRf{IKvg7SW70_5%A))*rae zOEr1ji2%HyM```H1`kv4b}XlsU$@-~MWjgt$S%D36?1{;g1DLAg=oD=+xM&DMM+T) zK4jxY$-A7b5gj6gt5@zu8*cVa#48;px29%*fZW8u$jzK5hDmZYgd9!%>#3_QjM`XEP> z#9NG0FX4lTUIDZdQ@zSkK(o?{eRR2SriN^x(%gH_{Vdqkh!P&w8zV?UUb1Mm)Fws8 zPOaC;>Rwf_IaeP+nvPrid4_kHwx>NHLXs-8#*v`Lld4q)<;PNE9(QcOZtBdE8I3ot zBU#Nl0#h+dp1$bg+a{C<2mk*~6eAmA=O00*-j08a@;zF-KQ-4J(bymVn#ST*X7y;Q z^}gqL-p}c8w#!q8qw@UPT94nBO9k3rSsU%FhwbpgHlMoPPH9nE&oy9R?@C-R_e(Fk z9Cu;aIND3ypsoLAya@Z-*((NA9);sK*)3s@D8oEP0*2?SU%tAk@`;%XPz$}5-s|vu zXZN3yEwnqTLyF{NWVSmiIl^v4{^6ih*Hb?=auE=W4meV-WrD7oAS+={{jiUWzZAZI zQG&W6dHG*&6CW|wi+~)T(Dj81mlZfuM}YObf%jloCotuF_<}zK((_CNoyB<1?g*GA zA~X2N7x(GlVSj&j%7I6h|EK@&)bmM-BQ%J4Vd_6-uQ*;b?A`Cxj*%Jf^Yy(>o;gv` z^z3IcA+(3s*Lt!Qn29SASkXVEw=E+EQ)Y71i=KQONDe!rdKJtQK51ei!VdCA-x#iK zS3>gy8jTM#a^9!YfeKmLtna6rBdGOGmYt0O?>hPn4&Ck$s7{s(!Sy)QA-YK}GgVe% zSMb03aBqp_`!Wq-6cZ~~ic~h6JzTL6En=r?Yca1S6b=p@wiE;RGbd@nftv@l<<0uu z@**{3sZZ!F2s(OkGfAg!z9(4JN|v}s1|-D*g;03oD(p2q&=Z16IP({bj3BYPifZ5S znm>e^dgWpc-R1P?p{1buirzUW(Dl2*d7r8A!oh673ZF^%ePtRz5lw&Jw=Ll;fYi?-!*fa#w~@tIQ;s5`^h&g}HC6hwPD4qo{(eLdP3684 zcGP-|i;si8_@_G(N{z1;muT0f(Ee3-MdMP0Z0h8fo;rBd2(hCDLiKJ zo&1Hh%ToH~sSGv*{owpuCSBZbUfnNbVFej2TdJmX?ZHmX2?s3BM=62TQ%|Yu4b%Qq zs?(kEtDy|;>y4w!MPS^>X?1_exc3)q7%~oi(_Ca;xHNb!Ni-qEd4LQaEmg#C>Eshz z8t+>+snqB9%3fM$KU(F~#;vueK)XtNc-5UrIr9TqEcPzg1Tf-*6v7Z*Fs;FRFOCDT zBfch;w^PJ@V+Sip3@vP`jvpUW5z6-XW;|p$sVDpwplz(B%JsG-kA&BvbE z;;cOGI2dolUw-ohr0Qs~rMB{EtSP1nL3k5qOAJuK$c=G0euro*0W($cM(JUyhDbx` zB+YgD{0upd*;D_V!}Rgll)3s5zZ)&lo9o9-W@gmV?C73p$2QJJr_zwu{zL!Kk0MJZ zj-``=&>>aC#JS-{d~{nqXCPRVx;oEff`8@dRZWe3Kj@y*0X^5@4;e?Jror600!&}{ zeEKb4_$PkEKz}2i^NZ-oa1^w3es(QoE;^{iv=tR4Cn70|h_th0hGqpBVZ8viiZC4z zwGfcXH(CZNOz>|7rVrY(zVff412ppqIDv$;Wud>`*Vnh>bZwN$J>O5-9CL%jY{8joRD7LOXMhJ{LY1O7xnyTbhJ4>#k*vc65{`RXUt75$hiW zgxCVDVght|xi6lbLJcUiw>IB43|t`)9bhzmD<4E~E+WI6T?1C4khQmLHbDS;!gt)( z0MJ@qF!m1T_nZObwd5_>FLWG&hEWrdrt{a7{frEB-)}_a(YY7TX*_A7V`e`y>885Y z#)EJENBznw#>^Ta0fvb-n^SY2Z)H>C7rVX8&`csuUG3fQr1wC!)6vI#jX~)3DwfjW zm-+y<1R-jHc+zrRFA#^J+w0`F=iLgbV?ex)?(NBKNp)L^suYF>f!(a zeDV3cH6NoXo+btb>EoED*fzEFfq3?roh(0~@A&$dgoB}uoTR&7NU!S~oNy?>wbZ>? zy)j=p?7NMZ3>@`N0~QgF5bi)UcMgT6>EBg>EmV zunT-3yCm*MUjU@ZX&YD2(kW^h&yWuR_1Hl%41C(omB7J5X;|&zNsZ%+Xo9HZ-)LSEs-?jE^{+Pm4HY$c1wlk|49z}{G)FciA{#-@bNDjiG05$YzU(w_KRoGD zBxG4om6y|KFpYhuz5)7uo&Xb#5A0(8W;h>6Q|MY2H;zbf9LRZiia#cjg5m(KPpN7B z30&*PGxOsg2qNx84^vhyJlSE!%!=x>`~jMfH0aI(tdA{iM5{SLnV51{{c;& zO10J8q*x!&gxn4`MlBzv^#-^f61BS&_mSu|2<9vyE*d5oJqW!Yq_O6AW=~_{*XQ`R7NCw_I-(H>KXMiEAX~gbPDE+e#fr6 z$E>CY?qA^5tKc8t649%cQ$d&s#`z|#Yp_EocqQtY+6xX0srM&m;iuNDniVDMnt*!5F&Fz@Jiq~uL(F9e^F6LRMGP)Mx5S;JZC$9jR_213}L~TwGk;V zEW~LD7_&05g@zyD;E)`P6(nkPor?tN{SwN(U_C^n%7g2Rhf)ECc@3hLvmx6bJTd8Q zEa>|9!_?&aZoBB1lkxZ;s(qqlMh-5k`KcYrLGW>FykY-gt`-I)0r{djoDble{q*_a zppYu1TF}W{cKpNVT$5pzeoLp!xR;LCc+EZkAg;PVsiwp=+x?A1m__K15+@bJ37GV+>u{}H88VGuk>sOE#rq#cH3)jUgK>QNPJNq0(jOO#n7kCVf95&j4gS_?DN$>XQh>x&6loGAUEg zfO9g|5_9!RL0+M;D5v=6#c%A*t3?t*yTORJo$={ae1*oyoRy&Zce)jqdl*75k^+SB zz`arRzpL>iUBa%4RhZC%f+_Fec5}?I$vRsF$moKvoxR zdpPcgP09ZS&>kVKEKW*uM~9|OYE5tM5SHG82}-|hQb z@L8e!r2k=dfUXI<0;L~jv=jC?n3&On3a+rUn3k!8W%o)YpD0&~IPLR$#K=p*3d z?D`CoQ*JVt1?rOYKU=uCxL-i0o>Ke;siXKPxd;j4<}Kb7G@x|%R#_SB>GKX zMcGf?doNfd42)al(muS0%w|1#(Wn~%O5-w&d!wQ9ebY3y5Abd<`4W_4JNgUr7Qw+pB^G(`O~f16Ly&-WMbOhWK>^+HU(5;j@D5+~Lf z{RuQ$cK`#Kqn-GWOSRyNBSDbs9QRWwaec>m-~7WnLOmar)VNG-@tzrw!|xB|oIilz zZrKIM(-5F>j|(IWTF%uG0Y*I&l$r9^Ar_PLtmw7GG;zV<3Kc(k2(h(YCu)%10Kqig z(lPfzqsMwPg6Tat=)^0{A@)W<>$|)m^KuT@pl#(wE>*ksu()<8_dpHuD^9bc6@F$14Yz5W#ZMYi&>Y`1s}UE>?;QHj1R?QOoh zUNls+{jro){CS!ok={Wn@85g7gY_@U>pv&m-kNpU&Q_GBc-q0>M~%a!V<~mXfrE{e0q!45SPvvLJ8&_T{=UALP;D(jZ?Jk5s1BP16@BBajVh8bniN;F86HM6t(@I$vjBS zJ$Uw!?;5jOa_)iXX+RD`WNH`yQJaERK|qz54m!}X*(@dsMv8AJNOWCjQ{DG#W8MIw z(!tF2WJG2p_XD#w?67k}FbK8~9!K!LNZS4;l#q^&h1^qsyQzEWx zdanD6Z_4Z1H(x6FpPsu9ARIOMp`QWn5kNv3M}riMOf8}Bmt6j ztbHQvdNp?|+b|!N`^~5SCui5xE1I22$*-(L2DD<293H4Mp7jm%`Li-&jo=xm2HoJt ze89se^!@Sr#Y|*eN|>Y?xgp)}&pxc3SOM*NpSyD#t(~IgL^-$~W@WS$;$LNDX6+Q0 zi6+_!(UO&J+w=bsDuR6YwRpbZHA(USh$gcF4A-!lqXli`)V+Y{>NNBGE8B%Fnuve}EzsPt%A>MCxm~kVBEK7#dnTwRU-#-PamJs)(Gts!AGe@tC9Q8zzB`kT zWu;6|RA}YHdU?4$E?i#8ad6g_USPa1ZJwIka(#+9ytDrOtG~B(@!2-v9vr6v{NtrV zEF~J6bx-tutDe4^Vkup~aKsLF@PGQ+W1cC~)HrXiN7A^a)+lX@_rnt9)zrtM%#s;} zGymAN{w#MCnRA*iJ3X(IdvDS5t%2)F~%$F{c`kKXUe*kV( z^d~$-oDCw_4IXZPF7od^50i>q&_jp%6Aq~_HGCMOHR%qgx@^q>P}7MpW>34AQ%+V;T?SK{y)Y2j%seZC<;k-*Hpvq*T&gy`ET4GO(HjhW5m&R3U0W` z;vEK5Kh0C1LR^r*c8z5Zu_c0?NuffZUqmtJF~q#Pj6IXz^E*!S-b|_6<$LYFF6hey z5+%keMC1G=cc=^Nk0hsetR?HK=gZ^=t&V?%AvA98{)&2tdIqM2hnG4VB)H>1BN&Ws z5gIOAagznk>(MDMd8RC7qhca^F%x2=gBM?y6LCPMKUb8}HvhagzW738Ns%FI8?6bF ztLpdorAtP{AvN%*ln}Hn*3Pi#YS`VeFb2OBZ1U z(H}0TgaSpG-ga~iiAbr})S|}pC^K*Mr@0cBezuZOR0vfu$H9P*X(ZNFcM%FG1q7f` zU_o;C9mc1g&$QsE-tRP)l~a5W1P_3411DC<%RcD*U&-3@wit&4e|3HcNFPefLL1df#up6`=hu zj4sz|HlXsix+Sz2nhAb-_Y|h#&eQiWz7t#x4lbs+TyDbn3Z2&t-vygCuq>uz?8*Vf zFE`k5hf!EJ;OTjsG6DhM2;G7N6esWA(R{tn^Ub;Q+cW251l2V`QrEkd?|AKaR+s6a zt*tdp_NM&S<_|l%H2u!>-vv7luBFDVT&Wq}X7jCFcK`b6F#e`swAl#!pQ)H-sR9Gh+7&fRpaR>iN9M$FcGLj`Y%oqun$=4YPt>Hlt(;NOl>+%Ai~$kDzyG9L<#5 zKGnLV=-_Z3T#KZurV^>RQLEUyte4*~wL0a_bO`{*{}V_m*FWFIh~7!I9lGeGzXkS1 zqweL9Pk%-(o2~|5*^0arBub+s59nIL!Ykz?6lMD!+;k`Ci2Yciuelp@BP9b9@`*(o zWDJjJ`ZSd%{Mj0#1qm4}muEBhh9cJo629)FU6p40LQnQbAHKAhY!gI9*UUPLeno;u zjd@2t?)~~o)Y_jAp4?Bnmhb8K{w_Fsc(cw*Rj!p3+Rz@kOa(si;JXi_e-+Lq1A~d8 zbl$$?HXnOl#SqWpxB8_VF4@e)*2PXCXn3*|)HBd4dGXDzCQo&LeC0ZG#A!r|M8iUo zQ3llf%vT@BgM8>s8@iClfM2?Hy^PeT!9Cd6T_UH)*!?!euN*_!G%C&SS6WbDJd>QS zS)U&o`EhYq@Df~d+q0?L1@ zLcBO_=Xuu+$Phy`I-7{0*(R})ZMo^3bKo--g7ByIYL9{fd)yhBGL6@ajb@`Dn+?ZA zzLx>|pH`+xRV{E?&{8h2*(Epd6C?1y6(`UEx*t1f!vmK{ruXow#HMeBzs|W9c~zDw zl=O{d&z%{z>Th>(UqH{n*Op6=5}-R(qod0xpRP5>NAXF{QHPJs*c0F>jX>~d*Fxw& zEN*N>Sd)iJP0A0cXGuy*rtWE8Vdd%BFjIQ3Gp*s{jfj3=laLR;jPb;Kz70i1wx12tB|Ch*Tn^vVz z4gB6MSz-Y6*LLTlkUXhwgLek@(+&10%i=CvnI~eyMeD01vS@ zZpq2u*3?-a?w_lQ0d6|j5D%(aH?dgt_I&BI@n(eK8s?zx{ut%XO_~Z1Jkl!XcATC* zd6_u>!a{sHx+5YH8mJqbD$u=3B&g@hBO%>=&-~cHz|H3A+RHb}1@83X^nDtPl9H>e zFz(Du)65n9zqB`vtgK`=`OW?qr_veHvM+U{B_&Vv#;u%azE`+(YSPou=|MAT8JU^U zK@t$XuGfuY{)2CbW8(_Mnv-_(EjF80?GqpKlP;aCzb)@>Xz3QfRa|eW@qAtam~{@p z_-hC*QpofgU65uL0IIdL;0!EoMKyCd%EgR^EXmgYyfTo{$TDZRE`N&R&8o%W%^}(5 z$~A5}QQM(sqKJB}WfliB-NIy<$s32gzeK>$*@Z0E0O$b;pxi!zlB4a3LW{lT+yfTi^HFoTonMHrKc1&z zHe17mf`U?jpOH~%G%hJTz*;44^q)uS7u&dhV^<@rX_J6}~VP|HYb`>4`la(TZV z-u365Xc(B=cDU(|JV1z zUG|z&d_6@hFK?=QJz z&Ng0NFyCD*+!Z+AM$p6b*EF zWy$%P-)46T(%+tx+T}~Hmo9T+DhQ5$)H3ZNKCyFiiVL*JfMCZS3s)V6I?NW4F@fKSTDSEzFbBKecftLXNn;wp)k4p@;l^#5PL|3I*v)O~ueVG@)m z7BE+XwyfjJbwVg-#?POQ!ZkZZ^(XF%w2o#2qzcMn(*E|2`=gz1t-5k~BK#6QOU%_Q zMQTGVl@Wr%1Y0b|Qoep*DhYWf@BQHhCi5jxaXWN?tx;4;KmrULj7-_Nm+SAlu>w>K ziw6qWREqxq#6HV=U1~%^4r17~tZE;EcoZ&{ykWLR7Ktn2z|VH5#i9=mGKF+!yt#jHP^^JfYFxm+J8V^%@A?L~5dS+Hd@7tS{@=5~;cw(@ z;D*NiqFkkM&_nqv2J@J}vr)3I_fB1tB2%MstLO=$me#{Pe$6QO+3y-9^~SVWy|~CF z@E4|)x;eV}I5;L|a+o}gNFPxeFfY7~QvR`{_1Y}>RD{Af&%f*M7|)p5A99=={}?`G zDSK@m*O}pcEH(_T^0B+dNmegm*Kf3)FI4&A2yxk7cv5lm#Ege?(^Bkc5?vU7?cZxY zkQ%;HW2??%$)90lgiAqT(WqZ+dFmDXUi2#ZYTsw&uSI%v%xSPN5^ms&_xZ}j91h={ z8~pzMlD}DrK3~}{AuG*r>RTe|i%-;N`!mjVMPsPokOd~+pCPYAdr;*T-0wUZ4%!}H zR(^f{Kk-#|hhJ=suknny{0~fK4K3c4u#RG`e2J$;-%^4on%~I0|9(nMaf3%1ST;HL zrQYql5=;{P>u(Wj8)*k8FNQQ3YZa3N+tJ}zlG&z$Ka*dE>-Gd`Dq=H91Sk6{sPflx zQx$l=V`9~Ymd%(MNqEYPE-{wyX5x#hkjJ9-%DselV61hCLu-9DnPt5X|K zhKq&DKi=j@^c5Cbm&@NSdmTKjdYkI|+en63&gKD>MMUh?=&OhmfSJ7 zZmm*N{^zg4kkrGxFU~Na7o(-U4=ATjATkaI*Kw_^T4Tdf-&m9YcPfFeSUO;ll10Ha6ZAl;X`L`ts)c zSPKE?+fhCTeu7*H%6$_YFjEA8doE?}6l5%7?yQQW!zb`w@Csn%(ioCEpIo zOq?;@jJoK_+7=E20-uF*hu_Un?*z^{Ws8K?TNUhxaRRHGS6At zyifys#ff9w$8C{@$lnANY}4VUxw#3=qT}zPK@^&^c1LGz;GA84 zD=#V8w3Yk`5A^8JGc8DJC-Si2B=)p!+o$tEk%Gm5yqf+MZ``44RB=PrBaKV&Ob z$_EaFh*n_ZWtpd2hOrj>ds94_0D0a6N;r&oHVwnLdq502jPn=RFA1A2w^_j~0Ml@D ztMf#Y0=<*Y)We(pU{TSrh(t$6gFjVG21DgkvsZJ|@Ka${Kz;v_5QJ1uegd*(e%obV74e6? zy}cvt549@Hyg`P+R;qxt<+bDU=oKeT3*>uup{<7iM05zZN#EuYE%4K-LhvqLeR_{g z!TTga_>2_5@{`d9SNmD#1&^AeKGsv4=Y4yQbvI`-cTV2^ifbDi0RXv@0?vH2aqq%? zc8Gy->E7+^?Tb9^7UnJjJR)Zi5-24$I@tGr0Yc&JT8QN8759r5j<0L4K!rr9p_C3& zdjs(6r8g(|GjYBe7G-R-lpVmKz+J&Sn7;J)0sgMDM z!ih~_imBPo%P$zc<6vjU0++AS3ASdhE46OEAqE6;8&F8R zFVuV~+-wP&hc8)b6!Msl;-7?E9rbep0O<$p#+y%fPpelMs0X^yWMMgi3ORBqZ6^ zs34KlP?&)=Vm8wd3_6I@Nxf6;=sR(g-hR&JP!RO61LE#BM_XGhm#4Dw zHnc)KJ^5T6cmCQsN&MC#MXm>84O5jNDw@wf#hz~ckqJlzZIT&499<_wPcM;nvU>L{ ztTKSclN79DB-PdTiE19Gv9yVQ#ogq;3OZc)KLq!B5dz>xI)-PD#JoRN(Xt9s1Qqdg zNPeF|Qw!F5sd_!`^sV+o#O|$a5abyVkyYFjC*#}k$5Lm^AHta#=v6(iv(ddl+wazM z4tw#;4I41sY%Vl6d#3He@f9;Cq2lf!KL(Fl_W*8iIG{l~-$(&M*S(vzHxeU%0Agnt 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%0AF(TDen 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�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 literal 0 HcmV?d00001 From 36d46b8c4a1da8ea0bf0158027cc09571f9a001c Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Sun, 24 Mar 2024 16:16:25 +0100 Subject: [PATCH 033/215] Bram expert preperation documentation updated --- .../documentatie/FirstDocumentation.md | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index c711a38..6e72f33 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -158,9 +158,13 @@ And here it looks in action: Later on, I could expand this code and the physical product to include the rest of the sensors. The wiring is shown here: -![the wiring]() +![my fritzing diagram](assets/DHT11_by_button_fritzing.png) The red cables are 3v, the black cables are the ground and the green cable is the echo for data. -This version of a DHT11 has a built-in resistor otherwise this would have to be included. +This version is using a DHT22, this is a updated version of a DHT11 but still provides the same information and still uses the same pins. So i decided to compromise for it, using it in my fritzing diagram. + +The wire-frame is shown below: +![wireframe DHT11](assets/DHT11_by_button_wireframe.png) +This helps visualise all connections and shows what parts were used for reproductional . ### Buzzers .pt 2 I found out how to make multiple buzzers go off with the press of one button and increase as Mutch as there are pins. @@ -201,6 +205,13 @@ Here I made the physical design but instead of buzzers I used lights in order to And here is the the board working: ![board working and turned on.]() +To Show my wiring more clearly, here is my fritzing board: +![fritzing_buttons pt2](assets/Buzzer_board_fritzing.png) +the red wires are 3v, the black wires are the ground connections. + +Here the wireframe is shown for parts specification and possible reproduction: +![wireframe _ buzzers pt2](assets/Buzzer_board_wireframe.png) + ### Python For Dummies. My job was to make a connection between the WebSocket and the database we had set up, and to do this we wanted to use python. To give an easy picture, here is where i would come: From 5dc020a6cea496b228ec63ae4c29460daddedb32 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Mon, 25 Mar 2024 15:59:48 +0100 Subject: [PATCH 034/215] Bram documentation fix --- .../documentatie/FirstDocumentation.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index 6e72f33..721bfcc 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -10,7 +10,7 @@ Then I came across a teaching site (https://www.codingkids.nl/arduino-buzzer.htm ### Arduino Video I watched a video about using Arduino and took a lot of op notes along the way. The link is: (https://www.youtube.com/watch?v=BLrHTHUjPuw). - +``` \/\/Arduino information: \/pinnumber(locatie, in-/output) @@ -69,13 +69,13 @@ examples, basics, fade \/ servo's examples, servo, sweep - +``` ### Linux and raspberry PI. To gain more knowledge about Linux, I first asked my classmates if they could get me started. They showed me how to gain access to a server and told me how to navigate through files. By doing this I got taught the following commands: - +``` ~ $ 'ls -la' = show file / folders ~ $ 'top' = see currently running programs @@ -89,7 +89,7 @@ By doing this I got taught the following commands: ~ $ 'ping ip addres' ~ $ 'ssh username@ip address' = open ssh connection. - +``` ### Air, temperature, and all sort of stuff. After the Linux coding I decided to take a step back and began gaining experience with sensors. From 940304c3b2ad3fd5e9403c3d53d54e48b6382988 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 26 Mar 2024 11:07:52 +0100 Subject: [PATCH 035/215] Bram documentation updated. --- docs/LearningProcessBram/documentatie/FirstDocumentation.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index 721bfcc..4f2778a 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -117,8 +117,6 @@ Serial.println(F("DHTxx test!")); dht.begin(); } - - void loop() { delay(2000); //a float has decimal numbers and the library reads the measurements. From 53b50b685146e70838c1441d27c89f908a1c8672 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Tue, 26 Mar 2024 11:28:31 +0100 Subject: [PATCH 036/215] daily stand up 36 maard --- teamdocumentatie/dailyStandupNotes.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/teamdocumentatie/dailyStandupNotes.md b/teamdocumentatie/dailyStandupNotes.md index c514a22..83eedfb 100644 --- a/teamdocumentatie/dailyStandupNotes.md +++ b/teamdocumentatie/dailyStandupNotes.md @@ -80,4 +80,11 @@ Sam, tft scherm, rest api ombouwen om data in node tabel te douwen Bram: Fritsing, documentation for code Sietse: Database Dano: Docuemtation for arduino - Sam: \ No newline at end of file + Sam: + +26/03/2024 + + Sam: gebouw beheer vragen, + Sietse: rest api encete vragen + Bram: expert voorbereigen, node data updaten + Dano: Documentatie schreiven, \ No newline at end of file From 8d2e2a6931e87f270c6b38a608f314cf610ed19f Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 26 Mar 2024 12:51:53 +0100 Subject: [PATCH 037/215] node design questions. --- docs/brainstorm/Feedback.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/brainstorm/Feedback.md b/docs/brainstorm/Feedback.md index ef24117..2a976f0 100644 --- a/docs/brainstorm/Feedback.md +++ b/docs/brainstorm/Feedback.md @@ -33,4 +33,13 @@ We Wil use this Feedback and see what we can do to change the design in a way th The design will be updated to include: `smaller holes for less distraction. `ventilation at the bottom for better airflow. -`Remove the lamps on top of the node for less distraction. \ No newline at end of file +`Remove the lamps on top of the node for less distraction. + +### Design questions led by bram +We have a wooden and plastic design. We were wondering wich one is more easy to look at, and wich one can be more distracting. + +1. wich design is more likable + +2. wich design is more distracting. + +3. Any further comments about the design? \ No newline at end of file From 9598a64f0e1fcfbcc695286aee4e90de2f1ebc39 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 26 Mar 2024 13:45:26 +0100 Subject: [PATCH 038/215] Usertest node design --- docs/brainstorm/Feedback.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/docs/brainstorm/Feedback.md b/docs/brainstorm/Feedback.md index 2a976f0..3d05391 100644 --- a/docs/brainstorm/Feedback.md +++ b/docs/brainstorm/Feedback.md @@ -40,6 +40,27 @@ We have a wooden and plastic design. We were wondering wich one is more easy to 1. wich design is more likable + Sebas : plastic looks better and goes straight to the point. + Skip : plastic looks more clean. + Dano : plastic is more smooth. + Sietse : plastic is better. + Ishak : Wood is more ecofriendly. + 2. wich design is more distracting. -3. Any further comments about the design? \ No newline at end of file + Sebas : wood is more distracting and more obvious. + Skip : wood, because the school walls are more darker themed. + Dano : wood looks off. + Sietse : wood would be out of place. + Ishak : Wood, but in a good way. + +3. Any further comments about the design? + + Sebas : Don't do wood, plastic is more sleek. + Skip : plastic looks more professional. + Dano : no. + Sietse: no. + Ishak : in the wood you can burn in your logo. + +In conclusion, Even though the wood would atract more attention, the plastic looks better according to the students. +So from this information we will continue to make plastic cases for the nodes. \ No newline at end of file From 4eeb80cdb23e1e6345680412a60ab2e5148abaf9 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Tue, 26 Mar 2024 13:47:28 +0100 Subject: [PATCH 039/215] Add Brams script for processing and storing data from WebSocket --- server/brams-script.py | 65 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 server/brams-script.py diff --git a/server/brams-script.py b/server/brams-script.py new file mode 100644 index 0000000..acdaf98 --- /dev/null +++ b/server/brams-script.py @@ -0,0 +1,65 @@ +import asyncio +import websockets +import mysql.connector +import json + +async def process_data(data): + try: + mydb = mysql.connector.connect( + host="localhost", + user="root", + password="Dingleberries69!", + database="NodeData" + ) + cursor = mydb.cursor() + + MACDataReading = mydb.cursor() + MACDataReading.execute("SELECT MAC FROM Node") + print('some_response') + query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" + processedData = json.loads(data) + processedTemp = (processedData['Temp']) + processedHumi = (processedData['Humi']) + processedeCO2 = (processedData['eCO2']) + processedTvoc = (processedData['TVOC']) + processedMAC = (processedData['node']) + MACTuple = (processedMAC,) + + MACDataFetching = MACDataReading.fetchall() + MACArray = list(MACDataFetching) + + + if MACTuple not in MACArray: + addingNode = "INSERT INTO `Node` (MAC) VALUES (%s)" + cursor.execute(addingNode, MACTuple) + mydb.commit() + + pushingDataArray = [(1, "Temp", processedTemp), (1, "Humi", processedHumi), (1, "eCO2", processedeCO2), (1, "TVOC", processedTvoc)] + for i in pushingDataArray: + print(query ,i) + cursor.execute(query, i) + mydb.commit() + + except mysql.connector.Error as err: + print("MySQL Error:", err) + finally: + cursor.close() + mydb.close() + +async def receive_data(): + uri = "ws://145.92.8.114/ws" + + try: + async with websockets.connect(uri) as websocket: + while True: + data = await websocket.recv() + print(f"Received data: {data}") + await process_data(data) + except websockets.ConnectionClosedError as e: + print("WebSocket connection closed:", e) + +async def main(): + await receive_data() + +asyncio.run(main()) + From 9f295d7bb39cec34558e7978c1cb898ad6a99895 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 26 Mar 2024 14:42:07 +0100 Subject: [PATCH 040/215] Feedback updates --- docs/brainstorm/Feedback.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/brainstorm/Feedback.md b/docs/brainstorm/Feedback.md index 3d05391..a05f548 100644 --- a/docs/brainstorm/Feedback.md +++ b/docs/brainstorm/Feedback.md @@ -38,21 +38,23 @@ The design will be updated to include: ### Design questions led by bram We have a wooden and plastic design. We were wondering wich one is more easy to look at, and wich one can be more distracting. -1. wich design is more likable +1. which design is more likable Sebas : plastic looks better and goes straight to the point. Skip : plastic looks more clean. Dano : plastic is more smooth. Sietse : plastic is better. Ishak : Wood is more ecofriendly. + Nailah : PLastic looks cooler -2. wich design is more distracting. +2. which design is more distracting. Sebas : wood is more distracting and more obvious. Skip : wood, because the school walls are more darker themed. Dano : wood looks off. Sietse : wood would be out of place. Ishak : Wood, but in a good way. + Nailah : plastic looks more interesting. 3. Any further comments about the design? @@ -61,6 +63,7 @@ We have a wooden and plastic design. We were wondering wich one is more easy to Dano : no. Sietse: no. Ishak : in the wood you can burn in your logo. + Nailah : The wood can look better inside the school. In conclusion, Even though the wood would atract more attention, the plastic looks better according to the students. So from this information we will continue to make plastic cases for the nodes. \ No newline at end of file From 2ef003ef3902b1af9886fd20ee26ba93fe3b5c67 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 26 Mar 2024 15:05:53 +0100 Subject: [PATCH 041/215] Bram documentation. --- .../documentatie/FirstDocumentation.md | 42 ++++++++++--------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index 4f2778a..4496ae1 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -11,34 +11,34 @@ Then I came across a teaching site (https://www.codingkids.nl/arduino-buzzer.htm I watched a video about using Arduino and took a lot of op notes along the way. The link is: (https://www.youtube.com/watch?v=BLrHTHUjPuw). ``` -\/\/Arduino information: +// $Arduino information: -\/pinnumber(locatie, in-/output) +//pinnumber(locatie, in-/output) -\/digitalwrite(locatie, high/low) +//digitalwrite(locatie, high/low) -\/delay(time in millisec) +//delay(time in millisec) -\/int... <- variable +//int... <- variable -\/with a decimal its a double -> 1,2 +//with a decimal its a double -> 1,2 -\/a character is a char -> "a" +//a character is a char -> "a" -\/\/serial communications: +// $serial communications: -\/setup: +setup: Serial.begin(9600) -> the text speed Serial.sprintLn(text) -\/Loop: +Loop: Serial.print("text") Serial.printLn(....) -> variable because no " -\/Ctrl + shift + M = serial monitor. +//Ctrl + shift + M = serial monitor. The text speed needs to be the same as given. -\/\/If Statements: +// $If Statements: if(condition){ @@ -50,9 +50,9 @@ if(condition){ } -\/&& = "and" +// && = "and" -\/|| = "or" +// || = "or" \/\/For loops: @@ -62,11 +62,11 @@ For(int*i; i <= 10 ; i++){ } -\/The fading of led's: +// The fading of led's: examples, basics, fade -\/ servo's +// servo's examples, servo, sweep ``` @@ -176,16 +176,18 @@ The code is short and simple: int button = 20; int buzzerone = 12; int buzzertwo = 11; - +``` +Now we set the pins up to either input or output a signal. +``` void setup() { //put down some pins that will output , and some that input. pinMode(button, INPUT); pinMode(buzzerone, OUTPUT); pinMode(buzzertwo, OUTPUT); } - - - +``` +Here the button pin will seek a signal, when it is given it will send signals to the other given pins in he if-statement. +``` void loop() { //read is there is input on the button pin, if so send output to the other pins, otherwise keep them off. if(digitalRead(button) == HIGH){ From c4c36de0f7329d4689f7fe7d929a7b4186e0b108 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 26 Mar 2024 15:16:30 +0100 Subject: [PATCH 042/215] Bram documentation updated --- .../documentatie/FirstDocumentation.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/docs/LearningProcessBram/documentatie/FirstDocumentation.md b/docs/LearningProcessBram/documentatie/FirstDocumentation.md index 4496ae1..8cf660c 100644 --- a/docs/LearningProcessBram/documentatie/FirstDocumentation.md +++ b/docs/LearningProcessBram/documentatie/FirstDocumentation.md @@ -101,12 +101,16 @@ I wanted to make my own spin on the original design by including a button to act The rest of the tutorial was clear and worked like a charm. the code used looks like this: +Begin by including a specific library for the DHT11. ``` #include "DHT.h" #define DHTPIN 4 #define DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE); - +``` +using This perticulair serial port, means that you do have to switch to it when you want to see results coming in. +The dht.begin command starts the process. +``` void setup() { //the serial port: Serial.begin(9600); @@ -116,7 +120,11 @@ Serial.println(F("DHTxx test!")); //the library start dht.begin(); } +``` +It starts by making float variables, to give over the information. +It also includes a error message in case of no feedback. +``` void loop() { delay(2000); //a float has decimal numbers and the library reads the measurements. @@ -134,7 +142,7 @@ void loop() { float hif = dht.computeHeatIndex(f, h); float hic = dht.computeHeatIndex(t, h, false); - //all serial.ptint's send stuff to the serial board to showcase. + //all serial.print's send stuff to the serial board to showcase. Serial.print(F("Humidity: ")); Serial.print(h); Serial.print(F("% Temperature: ")); @@ -186,7 +194,7 @@ pinMode(buzzerone, OUTPUT); pinMode(buzzertwo, OUTPUT); } ``` -Here the button pin will seek a signal, when it is given it will send signals to the other given pins in he if-statement. +Here the button pin will seek a signal, when it is given it will send signals to the other given pins in the if-statement. ``` void loop() { //read is there is input on the button pin, if so send output to the other pins, otherwise keep them off. From 93bf3aed3786a738960b7f4c8eb7d9f71b8664bc Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 26 Mar 2024 15:20:40 +0100 Subject: [PATCH 043/215] Feedback updated --- docs/brainstorm/Feedback.md | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/docs/brainstorm/Feedback.md b/docs/brainstorm/Feedback.md index a05f548..6bed684 100644 --- a/docs/brainstorm/Feedback.md +++ b/docs/brainstorm/Feedback.md @@ -40,30 +40,30 @@ We have a wooden and plastic design. We were wondering wich one is more easy to 1. which design is more likable - Sebas : plastic looks better and goes straight to the point. - Skip : plastic looks more clean. - Dano : plastic is more smooth. - Sietse : plastic is better. - Ishak : Wood is more ecofriendly. - Nailah : PLastic looks cooler + /Sebas : plastic looks better and goes straight to the point. + /Skip : plastic looks more clean. + /Dano : plastic is more smooth. + /Sietse : plastic is better. + /Ishak : Wood is more ecofriendly. + /Nailah : PLastic looks cooler 2. which design is more distracting. - Sebas : wood is more distracting and more obvious. - Skip : wood, because the school walls are more darker themed. - Dano : wood looks off. - Sietse : wood would be out of place. - Ishak : Wood, but in a good way. - Nailah : plastic looks more interesting. + /Sebas : wood is more distracting and more obvious. + /Skip : wood, because the school walls are more darker themed. + /Dano : wood looks off. + /Sietse : wood would be out of place. + /Ishak : Wood, but in a good way. + /Nailah : plastic looks more interesting. 3. Any further comments about the design? - Sebas : Don't do wood, plastic is more sleek. - Skip : plastic looks more professional. - Dano : no. - Sietse: no. - Ishak : in the wood you can burn in your logo. - Nailah : The wood can look better inside the school. + /Sebas : Don't do wood, plastic is more sleek. + /Skip : plastic looks more professional. + /Dano : no. + /Sietse: no. + /Ishak : in the wood you can burn in your logo. + /Nailah : The wood can look better inside the school. In conclusion, Even though the wood would atract more attention, the plastic looks better according to the students. So from this information we will continue to make plastic cases for the nodes. \ No newline at end of file From 91f24a6f42b478e8d1f7ad8f383888b72d291665 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 19:42:29 +0100 Subject: [PATCH 044/215] Add getNodeInfoIndex route to Flask main.py --- server/Flask/main.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index c8ff4ac..c185937 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -16,7 +16,11 @@ def updateDataIndex(): new_name = request.args.get('name', None) new_location = request.args.get('location', None) return updateData(node_id, new_name, new_location) - + +@app.route('/getNodeInfo') +def getNodeInfoIndex(): + macAdress = request.args.get('macAdress', None) + return getNodeInfo(macAdress) def updateData(node, name, location): mydb = loginDB() @@ -50,5 +54,16 @@ def getData(node, dataType, MAC): return result +def getNodeInfo(macAdress): + mydb = loginDB() + query = get_query(False, False, macAdress) + cursor = mydb.cursor(dictionary=True) # Enable dictionary output + cursor.execute(query) + result = cursor.fetchall() # Fetch the results + cursor.close() + mydb.close() + + return result + if __name__ == '__main__': app.run(debug=True, host='localhost') From 56d45b9fe9175da88a10fb45d97dd76c985fcd2f Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Tue, 26 Mar 2024 21:02:53 +0100 Subject: [PATCH 045/215] gebouw beheer documentatie --- docs/brainstorm/bebouwBeheer.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 docs/brainstorm/bebouwBeheer.md diff --git a/docs/brainstorm/bebouwBeheer.md b/docs/brainstorm/bebouwBeheer.md new file mode 100644 index 0000000..eb72943 --- /dev/null +++ b/docs/brainstorm/bebouwBeheer.md @@ -0,0 +1,25 @@ +# Talk with building management + +## Questions for BM + +1. Design of page? (current page, new design or own idea) +2. What do they expect of a page made for BM? +3. Do they think they can work with the incomming feedback from the enquete? +4. Design of the node? (plastic or wood) + +## Feedback: + +BM had some good feedback points about the page it self, about the idea and some good pointers for the execution. They would also look into making the data they are already messuring acceseble for us. The things they had to say about the website is: they found the first design a bit unorgenised and said that they had +Sietse design +te klein scherm eigenlijk (1) +naamgeving +zoekfunctie? +opvragen en filteren (idiot proof) +wit zodat niet opvallen +opschreiven wat het doet +hoogtes? + + + + +2x in database \ No newline at end of file From 891df429720c5441933b10d9b166917c5db689af Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Tue, 26 Mar 2024 21:03:03 +0100 Subject: [PATCH 046/215] daily standup --- teamdocumentatie/dailyStandupNotes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/teamdocumentatie/dailyStandupNotes.md b/teamdocumentatie/dailyStandupNotes.md index 83eedfb..64153e3 100644 --- a/teamdocumentatie/dailyStandupNotes.md +++ b/teamdocumentatie/dailyStandupNotes.md @@ -84,7 +84,7 @@ Sam, tft scherm, rest api ombouwen om data in node tabel te douwen 26/03/2024 - Sam: gebouw beheer vragen, + Sam: gebouw beheer vragen, Wall mounted enquete doos Sietse: rest api encete vragen Bram: expert voorbereigen, node data updaten Dano: Documentatie schreiven, \ No newline at end of file From 146e0c2eea826314ff1fc306b93f47b97cb49330 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 21:40:34 +0100 Subject: [PATCH 047/215] Add data processing functions and WebSocket connection handling --- server/data.py | 121 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 server/data.py diff --git a/server/data.py b/server/data.py new file mode 100644 index 0000000..891fd8f --- /dev/null +++ b/server/data.py @@ -0,0 +1,121 @@ +import asyncio +import websockets +import mysql.connector +import json + +sensorNodeArray = [] +enqueteNodeArray = [] + +async def processSensorNodeData(data): + try: + mydb = dbLogin() + cursor = mydb.cursor() + + # MACDataReading = mydb.cursor() + # MACDataReading.execute("SELECT MAC FROM Node") + + print('some_response') + query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" + processedData = json.loads(data) + + processedTemp = (processedData['Temp']) + processedHumi = (processedData['Humi']) + processedeCO2 = (processedData['eCO2']) + processedTVOC = (processedData['TVOC']) + processedMAC = (processedData['node']) + MACTuple = (processedMAC,) + + # MACDataFetching = MACDataReading.fetchall() + # MACArray = list(MACDataFetching) + + + # if MACTuple not in MACArray: + # addingNode = "INSERT INTO `Node` (MAC) VALUES (%s)" + # cursor.execute(addingNode, MACTuple) + # mydb.commit() + + pushingDataArray = [(1, "Temp", processedTemp), (1, "Humi", processedHumi), (1, "eCO2", processedeCO2), (1, "TVOC", processedTVOC)] + for i in pushingDataArray: + print(query ,i) + cursor.execute(query, i) + mydb.commit() + + except mysql.connector.Error as err: + print("MySQL Error:", err) + finally: + cursor.close() + mydb.close() + +async def receive_data(): + uri = "ws://145.92.8.114/ws" + + try: + async with websockets.connect(uri) as websocket: + while True: + data = await websocket.recv() + print(f"Received data: {data}") + processedData = json.loads(data) + macAdress = processedData['node'] + if processedData["Temp"]: + type = 'sensor' + else: + type = 'enquete' + + await getNodeInfo('sensor') + await getNodeInfo('enquete') + + if macAdress in sensorNodeArray: + await processSensorNodeData(data) + elif macAdress in enqueteNodeArray: + await processEnqueteNodeData(data) + else: + await newNode(macAdress, type) + except websockets.ConnectionClosedError as e: + print("WebSocket connection closed:", e) + +async def processEnqueteNodeData(data): + mydb = dbLogin() + cursor = mydb.cursor() + + query = "INSERT INTO `Response` (NodeID, QuestionID, Response) VALUES (%s, %s, %s)" + processedData = json.loads(data) + + + +async def main(): + await receive_data() + +def dbLogin(): + mydb = mysql.connector.connect( + host="localhost", + user="root", + password="Dingleberries69!", + database="NodeData" + ) + + return mydb + +async def getNodeInfo(type): + id = (type,) + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT * FROM Node WHERE Type = %s""", id) + nodeInfo = cursor.fetchall() + print(nodeInfo) + if nodeInfo != None: + if type == 'sensor': + sensorNodeArray.append(nodeInfo[]) + elif type == 'enquete': + enqueteNodeArray.append(nodeInfo) + +async def newNode(mac, type): + id = (mac, type,) + mydb = dbLogin() + + cursor = mydb.cursor() + cursor.execute("INSERT INTO `Node` (MAC, Type) VALUES (%s, %s)", id) + print("new node assigned") + mydb.commit() + +asyncio.run(main()) + From 44a2d1e5c6897c4bb62aeb0992511863b49f3eb1 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 22:25:07 +0100 Subject: [PATCH 048/215] Refactor getNodeInfo function to store node information in separate arrays --- server/data.py | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/server/data.py b/server/data.py index 891fd8f..e6acb5d 100644 --- a/server/data.py +++ b/server/data.py @@ -54,8 +54,10 @@ async def receive_data(): while True: data = await websocket.recv() print(f"Received data: {data}") + processedData = json.loads(data) macAdress = processedData['node'] + if processedData["Temp"]: type = 'sensor' else: @@ -64,9 +66,11 @@ async def receive_data(): await getNodeInfo('sensor') await getNodeInfo('enquete') - if macAdress in sensorNodeArray: + print(str(sensorNodeArray)) + + if str(macAdress) in sensorNodeArray: await processSensorNodeData(data) - elif macAdress in enqueteNodeArray: + elif str(macAdress) in enqueteNodeArray: await processEnqueteNodeData(data) else: await newNode(macAdress, type) @@ -96,17 +100,31 @@ def dbLogin(): return mydb async def getNodeInfo(type): + nodeInfoArray = [] + id = (type,) mydb = dbLogin() cursor = mydb.cursor() - cursor.execute("""SELECT * FROM Node WHERE Type = %s""", id) + cursor.execute("""SELECT MAC FROM Node WHERE Type = %s""", id) nodeInfo = cursor.fetchall() - print(nodeInfo) - if nodeInfo != None: - if type == 'sensor': - sensorNodeArray.append(nodeInfo[]) - elif type == 'enquete': - enqueteNodeArray.append(nodeInfo) + + for tuples in nodeInfo: + for item in tuples: + nodeInfoArray.append(item) + print(nodeInfoArray) + + if type == 'sensor': + sensorNodeArray = nodeInfoArray + print(sensorNodeArray) + return sensorNodeArray + + elif type == 'enquete': + enqueteNodeArray = nodeInfoArray + return enqueteNodeArray + + + + async def newNode(mac, type): id = (mac, type,) From 970b7eaa41a1fd111412dfefb99957240445e73e Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 22:46:50 +0100 Subject: [PATCH 049/215] it works yippee (depending on what node sends it data the script will send it to the corresponding table with automatic node numbering) --- server/data.py | 49 ++++++++++++++++++++++++++++--------------------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/server/data.py b/server/data.py index e6acb5d..c932aa2 100644 --- a/server/data.py +++ b/server/data.py @@ -6,15 +6,11 @@ import json sensorNodeArray = [] enqueteNodeArray = [] -async def processSensorNodeData(data): +async def processSensorNodeData(data, nodeID): try: mydb = dbLogin() cursor = mydb.cursor() - # MACDataReading = mydb.cursor() - # MACDataReading.execute("SELECT MAC FROM Node") - - print('some_response') query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" processedData = json.loads(data) @@ -23,18 +19,8 @@ async def processSensorNodeData(data): processedeCO2 = (processedData['eCO2']) processedTVOC = (processedData['TVOC']) processedMAC = (processedData['node']) - MACTuple = (processedMAC,) - # MACDataFetching = MACDataReading.fetchall() - # MACArray = list(MACDataFetching) - - - # if MACTuple not in MACArray: - # addingNode = "INSERT INTO `Node` (MAC) VALUES (%s)" - # cursor.execute(addingNode, MACTuple) - # mydb.commit() - - pushingDataArray = [(1, "Temp", processedTemp), (1, "Humi", processedHumi), (1, "eCO2", processedeCO2), (1, "TVOC", processedTVOC)] + pushingDataArray = [(nodeID, "Temp", processedTemp), (nodeID, "Humi", processedHumi), (nodeID, "eCO2", processedeCO2), (nodeID, "TVOC", processedTVOC)] for i in pushingDataArray: print(query ,i) cursor.execute(query, i) @@ -63,15 +49,19 @@ async def receive_data(): else: type = 'enquete' + + await getNodeInfo('sensor') await getNodeInfo('enquete') - print(str(sensorNodeArray)) + print(sensorNodeArray) - if str(macAdress) in sensorNodeArray: - await processSensorNodeData(data) - elif str(macAdress) in enqueteNodeArray: - await processEnqueteNodeData(data) + if macAdress in sensorNodeArray: + nodeID = await getNodeID(macAdress) + await processSensorNodeData(data, nodeID) + elif macAdress in enqueteNodeArray: + nodeID = await getNodeID(macAdress) + await processEnqueteNodeData(data, nodeID) else: await newNode(macAdress, type) except websockets.ConnectionClosedError as e: @@ -100,6 +90,9 @@ def dbLogin(): return mydb async def getNodeInfo(type): + global sensorNodeArray + global enqueteNodeArray + nodeInfoArray = [] id = (type,) @@ -113,6 +106,9 @@ async def getNodeInfo(type): nodeInfoArray.append(item) print(nodeInfoArray) + cursor.close() + mydb.close() + if type == 'sensor': sensorNodeArray = nodeInfoArray print(sensorNodeArray) @@ -123,6 +119,17 @@ async def getNodeInfo(type): return enqueteNodeArray +async def getNodeID(macAdress): + id = (macAdress,) + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) + data = cursor.fetchall() + + nodeID = data[0][0] + + return nodeID + From 17f6ba8376a357cf90891b7c5b4a51e3e90d69c2 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 23:03:26 +0100 Subject: [PATCH 050/215] Add WebSocket data sender scripts --- server/bullshitSenderENQUETE.py | 31 +++++++++++++++++++ ...lshitSender.py => bullshitSenderSENSOR.py} | 0 2 files changed, 31 insertions(+) create mode 100644 server/bullshitSenderENQUETE.py rename server/{bullshitSender.py => bullshitSenderSENSOR.py} (100%) diff --git a/server/bullshitSenderENQUETE.py b/server/bullshitSenderENQUETE.py new file mode 100644 index 0000000..1c58863 --- /dev/null +++ b/server/bullshitSenderENQUETE.py @@ -0,0 +1,31 @@ +import asyncio +import websockets +import json +import random +import time + +async def send_data(uri): + async with websockets.connect(uri) as websocket: + print("Connected to WebSocket server") + + while True: + data = { + "node": "69:42:08:F5:00:00", + "Response": str(round(random.uniform(0, 2))), + "QuestionID": str(round(random.uniform(0, 90))), + } + await websocket.send(json.dumps(data)) + print("Data sent") + + response = await websocket.recv() + print("Received message:", response) + + await asyncio.sleep(2) # Wait a bit before sending the next message + +# Start the WebSocket connection +while True: + try: + asyncio.get_event_loop().run_until_complete(send_data("ws://145.92.8.114/ws")) + except Exception as e: + print("Exception:", e) + time.sleep(1) # Wait a bit before trying to reconnect \ No newline at end of file diff --git a/server/bullshitSender.py b/server/bullshitSenderSENSOR.py similarity index 100% rename from server/bullshitSender.py rename to server/bullshitSenderSENSOR.py From d9a603886c8925789dfcf93649b11e87f750d41f Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Tue, 26 Mar 2024 23:03:28 +0100 Subject: [PATCH 051/215] geboubeheer gesprec documentation --- docs/brainstorm/bebouwBeheer.md | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/docs/brainstorm/bebouwBeheer.md b/docs/brainstorm/bebouwBeheer.md index eb72943..4a36d3d 100644 --- a/docs/brainstorm/bebouwBeheer.md +++ b/docs/brainstorm/bebouwBeheer.md @@ -9,17 +9,4 @@ ## Feedback: -BM had some good feedback points about the page it self, about the idea and some good pointers for the execution. They would also look into making the data they are already messuring acceseble for us. The things they had to say about the website is: they found the first design a bit unorgenised and said that they had -Sietse design -te klein scherm eigenlijk (1) -naamgeving -zoekfunctie? -opvragen en filteren (idiot proof) -wit zodat niet opvallen -opschreiven wat het doet -hoogtes? - - - - -2x in database \ No newline at end of file +BM had some good feedback points about the page it self, about the idea and some good pointers for the execution. They would also look into making the data they are already messuring acceseble for us. The things they had to say about the website is: they found the first design a bit unorgenised and said that would rather see the second design with were you can select the node you want to see, mayby also a search function to specify the node that is displayed. What also was said was to try to make it idiot proof becouse not all of the BM people are technicly active to put it that way. They had some things to say about the node design, like mayby make the collor white to make it better with blending into the white walls of the total aryea. Thay also asked the question of does it matter at what hight the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doeing something like ReaderNode^tm^. And the last thing they said was if we thought about how to make it fandelising sudents proof \ No newline at end of file From 379a8b0f844628ff7a19c27aed76114d54addf6c Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 23:03:34 +0100 Subject: [PATCH 052/215] Add processEnqueteNodeData function to handle enquete node data --- server/data.py | 49 +++++++++++++++++++++++++++++++++---------------- 1 file changed, 33 insertions(+), 16 deletions(-) diff --git a/server/data.py b/server/data.py index c932aa2..a863857 100644 --- a/server/data.py +++ b/server/data.py @@ -31,10 +31,33 @@ async def processSensorNodeData(data, nodeID): finally: cursor.close() mydb.close() + +async def processEnqueteNodeData(data, nodeID): + try: + mydb = dbLogin() + cursor = mydb.cursor() + + query = "INSERT INTO `Response` (Node_NodeID, Question_QuestionID, Response) VALUES (%s, %s, %s)" + processedData = json.loads(data) + + processedQuestionID = (processedData['QuestionID']) + processedResponse = (processedData['Response']) + + pushingDataArray = [(nodeID, processedQuestionID, processedResponse)] + + for i in pushingDataArray: + cursor.execute(query, i) + mydb.commit() + except mysql.connector.Error as err: + print("MySQL Error:", err) + finally: + cursor.close() + mydb.close() + + async def receive_data(): uri = "ws://145.92.8.114/ws" - try: async with websockets.connect(uri) as websocket: while True: @@ -44,13 +67,8 @@ async def receive_data(): processedData = json.loads(data) macAdress = processedData['node'] - if processedData["Temp"]: - type = 'sensor' - else: - type = 'enquete' - + type = await getNodeType(macAdress) - await getNodeInfo('sensor') await getNodeInfo('enquete') @@ -67,15 +85,6 @@ async def receive_data(): except websockets.ConnectionClosedError as e: print("WebSocket connection closed:", e) -async def processEnqueteNodeData(data): - mydb = dbLogin() - cursor = mydb.cursor() - - query = "INSERT INTO `Response` (NodeID, QuestionID, Response) VALUES (%s, %s, %s)" - processedData = json.loads(data) - - - async def main(): await receive_data() @@ -130,8 +139,16 @@ async def getNodeID(macAdress): return nodeID +async def getNodeType(macAdress): + id = (macAdress,) + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT Type FROM Node WHERE MAC = %s""", id) + data = cursor.fetchall() + Type = data[0][0] + return Type async def newNode(mac, type): id = (mac, type,) From fb9088e2b1549968e11bbca026551aa069179253 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Tue, 26 Mar 2024 23:06:36 +0100 Subject: [PATCH 053/215] spell check --- docs/brainstorm/bebouwBeheer.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/brainstorm/bebouwBeheer.md b/docs/brainstorm/bebouwBeheer.md index 4a36d3d..45891bc 100644 --- a/docs/brainstorm/bebouwBeheer.md +++ b/docs/brainstorm/bebouwBeheer.md @@ -1,12 +1,12 @@ # Talk with building management -## Questions for BM +## Questions for building management 1. Design of page? (current page, new design or own idea) -2. What do they expect of a page made for BM? +2. What do they expect of a page made for building management? 3. Do they think they can work with the incomming feedback from the enquete? 4. Design of the node? (plastic or wood) ## Feedback: -BM had some good feedback points about the page it self, about the idea and some good pointers for the execution. They would also look into making the data they are already messuring acceseble for us. The things they had to say about the website is: they found the first design a bit unorgenised and said that would rather see the second design with were you can select the node you want to see, mayby also a search function to specify the node that is displayed. What also was said was to try to make it idiot proof becouse not all of the BM people are technicly active to put it that way. They had some things to say about the node design, like mayby make the collor white to make it better with blending into the white walls of the total aryea. Thay also asked the question of does it matter at what hight the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doeing something like ReaderNode^tm^. And the last thing they said was if we thought about how to make it fandelising sudents proof \ No newline at end of file +building management had some good feedback points about the page itself, about the idea, and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the building management people are technically active, to put it that way. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make it vandalizing students proof. \ No newline at end of file From 75ff84ee70f1142bf6ea5ce7e3d349b39fabc238 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 23:19:15 +0100 Subject: [PATCH 054/215] Refactor database queries and update variable names --- server/data.py | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/server/data.py b/server/data.py index a863857..cb93efa 100644 --- a/server/data.py +++ b/server/data.py @@ -37,13 +37,13 @@ async def processEnqueteNodeData(data, nodeID): mydb = dbLogin() cursor = mydb.cursor() - query = "INSERT INTO `Response` (Node_NodeID, Question_QuestionID, Response) VALUES (%s, %s, %s)" + query = "INSERT INTO `Reply` (Result, Node_NodeID, Question_QuestionID) VALUES (%s, %s, %s)" processedData = json.loads(data) processedQuestionID = (processedData['QuestionID']) processedResponse = (processedData['Response']) - pushingDataArray = [(nodeID, processedQuestionID, processedResponse)] + pushingDataArray = [(processedResponse, nodeID, processedQuestionID)] for i in pushingDataArray: cursor.execute(query, i) @@ -67,8 +67,11 @@ async def receive_data(): processedData = json.loads(data) macAdress = processedData['node'] - type = await getNodeType(macAdress) - + if "Temp" in processedData: + type = 'sensor' + else: + type = 'enquete' + await getNodeInfo('sensor') await getNodeInfo('enquete') @@ -135,7 +138,9 @@ async def getNodeID(macAdress): cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) data = cursor.fetchall() - nodeID = data[0][0] + for tuples in data: + for item in tuples: + nodeID = item return nodeID @@ -146,8 +151,10 @@ async def getNodeType(macAdress): cursor.execute("""SELECT Type FROM Node WHERE MAC = %s""", id) data = cursor.fetchall() - Type = data[0][0] - + for tuples in data: + for item in tuples: + Type = item + return Type async def newNode(mac, type): From 5ce77d54efdecd7980c3996256cbde240b607a00 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 23:20:05 +0100 Subject: [PATCH 055/215] remove unesecarry code --- server/data.py | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/server/data.py b/server/data.py index cb93efa..c2e7a89 100644 --- a/server/data.py +++ b/server/data.py @@ -143,19 +143,6 @@ async def getNodeID(macAdress): nodeID = item return nodeID - -async def getNodeType(macAdress): - id = (macAdress,) - mydb = dbLogin() - cursor = mydb.cursor() - cursor.execute("""SELECT Type FROM Node WHERE MAC = %s""", id) - data = cursor.fetchall() - - for tuples in data: - for item in tuples: - Type = item - - return Type async def newNode(mac, type): id = (mac, type,) @@ -166,5 +153,4 @@ async def newNode(mac, type): print("new node assigned") mydb.commit() -asyncio.run(main()) - +asyncio.run(main()) \ No newline at end of file From 6735a498ca5a257db6f5a42d8c41d94fe0093965 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Tue, 26 Mar 2024 23:20:28 +0100 Subject: [PATCH 056/215] Remove unnecessary whitespace in data.py --- server/data.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/server/data.py b/server/data.py index c2e7a89..3157c8a 100644 --- a/server/data.py +++ b/server/data.py @@ -54,8 +54,6 @@ async def processEnqueteNodeData(data, nodeID): cursor.close() mydb.close() - - async def receive_data(): uri = "ws://145.92.8.114/ws" try: From 675cc23665da73ed8ee5bff0b2c9b77d8ef41f7c Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 27 Mar 2024 11:27:34 +0100 Subject: [PATCH 057/215] feedback updated --- docs/brainstorm/Feedback.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/brainstorm/Feedback.md b/docs/brainstorm/Feedback.md index 6bed684..84428c0 100644 --- a/docs/brainstorm/Feedback.md +++ b/docs/brainstorm/Feedback.md @@ -36,7 +36,14 @@ The design will be updated to include: `Remove the lamps on top of the node for less distraction. ### Design questions led by bram -We have a wooden and plastic design. We were wondering wich one is more easy to look at, and wich one can be more distracting. +For the nodes we designed to be placed around the 5th floor we were stuck between two designs: +The wooden design: takes less time to create,is more fragile, and more eco-friendly. +The Plastic: less eco-friendly, takes a longer time, looks objectively better. + +since we can't decide on what we should use, I (Bram) went out to asks the public for their opinion. + +To do this i took the front of the plastic design, and the front of the wooden design. +They lloked like this: 1. which design is more likable From 6fd674f4c94ec33c09639035db238ec53fcedc91 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 27 Mar 2024 12:16:58 +0100 Subject: [PATCH 058/215] daily stand op 27 maart --- teamdocumentatie/dailyStandupNotes.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/teamdocumentatie/dailyStandupNotes.md b/teamdocumentatie/dailyStandupNotes.md index 64153e3..f5a63bb 100644 --- a/teamdocumentatie/dailyStandupNotes.md +++ b/teamdocumentatie/dailyStandupNotes.md @@ -87,4 +87,11 @@ Sam, tft scherm, rest api ombouwen om data in node tabel te douwen Sam: gebouw beheer vragen, Wall mounted enquete doos Sietse: rest api encete vragen Bram: expert voorbereigen, node data updaten - Dano: Documentatie schreiven, \ No newline at end of file + Dano: Documentatie schreiven, + +27/03/2024 + + Bram: OOP python + Sam: new website + Sietse: enquete screen data sending to database and database cript better + Dano: documentation about oop arduino \ No newline at end of file From 98e47d39fc82753b0fee42349286ea764227f801 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 27 Mar 2024 12:18:08 +0100 Subject: [PATCH 059/215] Uml node class --- docs/node-documentation/NodeClassUml.md | 43 +++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 docs/node-documentation/NodeClassUml.md diff --git a/docs/node-documentation/NodeClassUml.md b/docs/node-documentation/NodeClassUml.md new file mode 100644 index 0000000..2259384 --- /dev/null +++ b/docs/node-documentation/NodeClassUml.md @@ -0,0 +1,43 @@ +### Uml diagram: + +``` mermaid +classDiagram + +namespace Esp { + class Websockets{ + +webSocket + +_WiFiMulti + hexdump() + websocketSetup() + loop() + webSocketEvent() + sendMyText() + } + + class NodeReadings{ + + +TVOC_base, eCO2_base + +counter + +eCO2 + +TVOC + +interval + +temperature + +humidity + +currentMillis + +lastMillis + +errorSGP30 + +errorDHT11 + +noise + + setup() + loop() + resetValues() + update() + checkForError() + displayData() + + } + + +} +``` From 6d548f7738e7ac3ab97e2891ccf0e9e063151910 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 27 Mar 2024 12:19:28 +0100 Subject: [PATCH 060/215] node class OOP --- .../NodeClassDocumentation.md | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 docs/node-documentation/NodeClassDocumentation.md diff --git a/docs/node-documentation/NodeClassDocumentation.md b/docs/node-documentation/NodeClassDocumentation.md new file mode 100644 index 0000000..d0bc370 --- /dev/null +++ b/docs/node-documentation/NodeClassDocumentation.md @@ -0,0 +1,20 @@ +# OOP within Arduino + +Object-Oriented Programming (OOP) is a way of programing that provides a means of structuring your code so the code is modular and can be used more often without making huge changes or having to copy past the same code. + +## Abstraction + +Abstraction in OOP is the process of exposing only the required essential variables and functions. This means hiding the complexity and only showing the essential features of the object. In Arduino, this could mean creating a class like `Sensor node` with methods such as `setUp()`, `displayData()`, and `checkForError()`. + +## Encapsulation + +Encapsulation is the technique used to hide the data and methods within an object and prevent outside access. In Arduino, this could mean having private variables and methods in a class that can only be accessed and modified through public methods. + +## Which classes did we use + +In this Arduino project, we used several classes to organize our code and manage the complexity of the project. Some of these classes include: + +- `websockets`: This class is responsible for managing the WebSocket connections. +- `nodeReadings`: This class is responsible for managing the sensor readings. + +Each of these classes encapsulates the data and methods related to a specific part of the project, making the code easier to understand and maintain. \ No newline at end of file From b914be9534f7e51585e1453dad1fb52ab3559b91 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 27 Mar 2024 12:20:36 +0100 Subject: [PATCH 061/215] Pages updates --- docs/.pages | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/.pages b/docs/.pages index effa9ce..ceb3c9b 100644 --- a/docs/.pages +++ b/docs/.pages @@ -11,6 +11,8 @@ nav: - TFT screen : node-documentation/TFT-screen - Classes : arduino-documentation/classes - Node Documentation: node-documentation/node + - Node Class: node-documentation/NodeClassDocumentation + - Node Uml Diagram: node-documentation/NodeUmlDiagram - šŸ“ RPi Documentation: - Raspberry pi: Sp1SchetsProject/InfrastructuurDocumentatie/raspberryPi - MariaDB: rpi-documentation/mariadb-installation From b38730e9a14cfd9bc7dffd18251853b5c71609d9 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 27 Mar 2024 12:22:35 +0100 Subject: [PATCH 062/215] typo in pages --- docs/.pages | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/.pages b/docs/.pages index ceb3c9b..346a632 100644 --- a/docs/.pages +++ b/docs/.pages @@ -12,7 +12,7 @@ nav: - Classes : arduino-documentation/classes - Node Documentation: node-documentation/node - Node Class: node-documentation/NodeClassDocumentation - - Node Uml Diagram: node-documentation/NodeUmlDiagram + - Node Uml Diagram: node-documentation/NodeClassUml - šŸ“ RPi Documentation: - Raspberry pi: Sp1SchetsProject/InfrastructuurDocumentatie/raspberryPi - MariaDB: rpi-documentation/mariadb-installation From cf86970605b74cce9f72fee25b661d64e975abed Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Wed, 27 Mar 2024 14:13:22 +0100 Subject: [PATCH 063/215] Added filter code to handle sensor and enquete data from websocket --- docs/rpi-documentation/Databaseconnection.md | 183 ++++++++++++++++++- 1 file changed, 177 insertions(+), 6 deletions(-) diff --git a/docs/rpi-documentation/Databaseconnection.md b/docs/rpi-documentation/Databaseconnection.md index 52df974..8f6dd7f 100644 --- a/docs/rpi-documentation/Databaseconnection.md +++ b/docs/rpi-documentation/Databaseconnection.md @@ -1,32 +1,40 @@ +# Original Version (by bram) + ## Python code + explaination + We wanted to make a working connection between our websocket wich runs all the data gatherd by our nodes and a live feed to our database. So we set out to make this connection using python. At first we needed to import the folowing librarys: + ```js // everything is running async so the code can run together and not interfere with eachother. import asyncio import websockets // a library to connect to the database. -import mysql.connector +import mysql.connector import json ``` + Then we began the process of connecting with both the websocket and the database. First-off, we began making a connection to the database by using a mysql library in wich we gave the log in in order to connect to our ow database. + ```js -//the data that has to be pushed needs to be +//the data that has to be pushed needs to be async def process_data(data): try: mydb = mysql.connector.connect( host="localhost", user="*****", password="*********", - database="*******" + database="*******" ) ``` + Then after this we code in the infromation we want to put inside of the database. The data collected from the websocket is json data, so this has to be changed. + ```js //Making a variable for the database connection cursor = mydb.cursor() @@ -49,7 +57,7 @@ The data collected from the websocket is json data, so this has to be changed. //fetch the data from the database an[d put it in an array. MACDataFetching = MACDataReading.fetchall() MACArray = list(MACDataFetching) - + //see if the fetched data is not in the gotten array. //otehrwise insert it into the database directly. if MACTuple not in MACArray: @@ -70,9 +78,11 @@ The data collected from the websocket is json data, so this has to be changed. cursor.close() mydb.close() ``` + After fully connecting t othe database, making statements of what to put there and telling the code what to do, we ofcourse need to write the code to connect to the weebsocket. We begin by telling our websocket id and what type of port we are using. -Then we will collect live data from the conected websocket, store it in a variable, and then in the previous code +Then we will collect live data from the conected websocket, store it in a variable, and then in the previous code + ```js //here the connection to the websocked is made async def receive_data(): @@ -94,4 +104,165 @@ async def main(): await receive_data() asyncio.run(main()) -``` \ No newline at end of file +``` + +# New Version (by sietse) + +## Changes made + +The original code was a good start, but it had some issues. The code could only handle the data from the sensorNodes and didn't include the nodeID for measurements. + +Since we have 2 kind of nodes (sensorNodes and enqueteNodes) we needed to make another function to commit the enqueteData in the database. I have also made a filter to know which data is from the sensorNodes and which data is from the enqueteNodes. This way we can commit the data to the right table in the database. + +I have also added a function to get the nodeID from the MAC address. This way we can commit the data to the right node in the database. + +## The new "filter" code + +### Function to get a list with macAdresses from the sensorNodes and enqueteNodes + +To filter i have made 2 lists, one with all the mac adresses of the sensorNodes and the other with the mac adresses of the enqueteNodes. + +The function that handles that and updates the list is the following: + +```python +async def getNodeInfo(type): + global sensorNodeArray + global enqueteNodeArray + + nodeInfoArray = [] + + id = (type,) + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT MAC FROM Node WHERE Type = %s""", id) + nodeInfo = cursor.fetchall() + + for tuples in nodeInfo: + for item in tuples: + nodeInfoArray.append(item) + print(nodeInfoArray) + + cursor.close() + mydb.close() + + if type == 'sensor': + sensorNodeArray = nodeInfoArray + print(sensorNodeArray) + return sensorNodeArray + + elif type == 'enquete': + enqueteNodeArray = nodeInfoArray + return enqueteNodeArray +``` + +As you can it works like this: + +1. It gets the MAC adresses from the database with the type of node you want to get the data from. (sensor or enquete) + +2. It executes the command and puts the data in a list. + +3. It uses a nested for loop to get the data out of the tuples and puts it in the nodeInfoArray. + +4. It updates, depending on what type, the sensorNodeArray or the enqueteNodeArray with the new data (NodeInfoArray). + +5. It returns the array with the data. + +### The filter code + +Now that we have the data we can filter the data from the websocket. + +```python + data = await websocket.recv() + + processedData = json.loads(data) + macAdress = processedData['node'] + + if "Temp" in processedData: + type = 'sensor' + else: + type = 'enquete' + + await getNodeInfo('sensor') + await getNodeInfo('enquete') + + if macAdress in sensorNodeArray: + nodeID = await getNodeID(macAdress) + await processSensorNodeData(data, nodeID) + elif macAdress in enqueteNodeArray: + nodeID = await getNodeID(macAdress) + await processEnqueteNodeData(data, nodeID) + else: + await newNode(macAdress, type) +``` + +As you can see its alot of code to explain. So to make it easier i made a mermaid diagram to show how the code works / what it does. + +```mermaid +graph TD + A[Get data from websocket] --> B{Is it sensor data or enquete data?} + B -->|sensor| C[Get sensorNodeArray] + B -->|enquete| D[Get enqueteNodeArray] + B -->|New node| E[Add new node to database] + C -->|data| G[Process sensorNodeData] + D -->|data| H[Process enqueteNodeData] +``` + +## The function to get the nodeID + +This function is used to get the nodeID from the MAC adress. This way we can commit the data with the right id in the database. + +The function to get the nodeID from the MAC adress is the following: + +```python +async def getNodeID(macAdress): + id = (macAdress,) + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) + data = cursor.fetchall() + + for tuples in data: + for item in tuples: + nodeID = item + + return nodeID +``` + +1. It gets the nodeID from the database with the MAC adress. +2. It executes the command and puts the data in a list. +3. It uses a nested for loop to get the data out of the tuples and puts it in the nodeID. +4. It returns the nodeID. + +## The function to commit the data from the sensorNodes + +This function is alot like the original one, with the only 2 changes being that it now also commits the nodeID and that the code to make a new node is now in a different function. + +[Link to code](server\data.py) + +## The function to commit the data from the enqueteNodes + +This function is alot like the sensorNode function. It just commits the data to the enqueteData table in the database. And it has another data. + +[Link to code](server\data.py) + +## The function to add a new node to the database + +This function is used to add a new node to the database. This is used when a new node is connected to the websocket, but not yet in the database. + +The function to add a new node to the database is the following: + +```python +async def newNode(mac, type): + id = (mac, type) + mydb = dbLogin() + + cursor = mydb.cursor() + cursor.execute("INSERT INTO `Node` (MAC, Type) VALUES (%s, %s)", id) + print("new node assigned") + mydb.commit() +``` + +1. It gets the MAC adress and the type of node from the arguments. +2. It executes the command to add the new node to the database. +3. It prints that a new node is assigned. +4. It commits the data to the database. \ No newline at end of file From 5dee5d99abc6e44561037201af373c6d0540fecd Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Wed, 27 Mar 2024 14:13:28 +0100 Subject: [PATCH 064/215] Fix QuestionID range in bullshitSenderENQUETE.py --- server/bullshitSenderENQUETE.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/bullshitSenderENQUETE.py b/server/bullshitSenderENQUETE.py index 1c58863..72bbbd0 100644 --- a/server/bullshitSenderENQUETE.py +++ b/server/bullshitSenderENQUETE.py @@ -12,7 +12,7 @@ async def send_data(uri): data = { "node": "69:42:08:F5:00:00", "Response": str(round(random.uniform(0, 2))), - "QuestionID": str(round(random.uniform(0, 90))), + "QuestionID": str(round(random.uniform(1, 2))), } await websocket.send(json.dumps(data)) print("Data sent") From 502ae3c614705e0297830ab35932204427968bbc Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 27 Mar 2024 14:19:47 +0100 Subject: [PATCH 065/215] starting gauge --- web/new website/gauge.js | 20 +++++++++++++ web/new website/gauge.png | Bin 0 -> 8885 bytes web/new website/index.html | 32 ++++++++++++++++++++ web/new website/style.css | 59 +++++++++++++++++++++++++++++++++++++ 4 files changed, 111 insertions(+) create mode 100644 web/new website/gauge.js create mode 100644 web/new website/gauge.png create mode 100644 web/new website/index.html create mode 100644 web/new website/style.css diff --git a/web/new website/gauge.js b/web/new website/gauge.js new file mode 100644 index 0000000..6040164 --- /dev/null +++ b/web/new website/gauge.js @@ -0,0 +1,20 @@ +// JavaScript +function updateGauge(value) { + const gaugeValue = document.getElementById('gaugeValue'); + const maxGaugeValue = 100; // Maximum value the gauge can display + const rotationDegree = ((value / maxGaugeValue) * 180) - 90; // Convert value to degree (-90 to 90) + + gaugeValue.style.transform = `rotate(${rotationDegree}deg)`; + + // Change color based on value + if (value <= 40) { + gaugeValue.style.backgroundColor = 'green'; + } else if (value <= 80) { + gaugeValue.style.backgroundColor = 'orange'; + } else { + gaugeValue.style.backgroundColor = 'red'; + } +} + +// Example usage: +updateGauge(50); // Rotates the gauge to 0 degrees (50 out of 100) and changes color to orange \ No newline at end of file diff --git a/web/new website/gauge.png b/web/new website/gauge.png new file mode 100644 index 0000000000000000000000000000000000000000..bc36a2bbc4fec5871910a0fb9aa2d6ada35b9759 GIT binary patch literal 8885 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 z + + + + + bruh + + + + +

+ + + + + + + + + + \ No newline at end of file diff --git a/web/new website/style.css b/web/new website/style.css new file mode 100644 index 0000000..b17f43c --- /dev/null +++ b/web/new website/style.css @@ -0,0 +1,59 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +.gaugeContainer { + width: 300px; + height: 300px; + border: 3px solid black; + border-radius: 50%; + margin: 50px auto; + position: relative; +} + +.center-point { + width: 20px; + height: 20px; + background-color: black; + border-radius: 50%; + position: absolute; + top: 137px; + left: 137px; +} + +.speedometer-scale { + width: 8px; + height: 280px; + background-color: black; +} + +/* CSS */ +/* CSS */ +.gaugeContainer { + width: 300px; + height: 300px; + border: 3px solid black; + border-radius: 50%; + margin: 50px auto; + position: relative; + display: block; +} + +.gaugeValue { + width: 10px; + height: 150px; + position: absolute; + bottom: 50%; + left: 50%; + transform-origin: bottom; + transition: transform 0.3s ease, background-color 0.3s ease; /* Smooth transition for rotation and color change */ +} + +.gaugeImage { + display: block; + margin-left: auto; + margin-right: auto; + width: 100%; +} \ No newline at end of file From 68c68fa7a67ce2b103d9d78e0edc43e5245002e5 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 27 Mar 2024 14:36:59 +0100 Subject: [PATCH 066/215] Feedback, node code, and documentation updated. --- .../NodeWithWebConnection.ino | 86 +++++++++++++++++++ .../NodeWithWebConnection.md | 25 ++++++ docs/brainstorm/Feedback.md | 2 +- 3 files changed, 112 insertions(+), 1 deletion(-) create mode 100644 docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.ino create mode 100644 docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md diff --git a/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.ino b/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.ino new file mode 100644 index 0000000..32fdc21 --- /dev/null +++ b/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.ino @@ -0,0 +1,86 @@ +#include "DHT.h" +#include +#include +#include + +#define DHTPIN 4 +#define DHTTYPE DHT11 + +uint8_t h; +uint8_t t; + +uint16_t interval = 5000; +unsigned long currentMillis; +unsigned long lastMillis; + +WiFiMulti wifiMulti; +WebSocketsClient webSocket; + +DHT dht(DHTPIN, DHTTYPE); + +void webSocketEvent(WStype_t type, uint8_t * payload, size_t length) { + // Handle WebSocket events here if needed +} + +void setup() { + Serial.begin(9600); + Serial.println(F("DHTxx test!")); + dht.begin(); + + wifiMulti.addAP("iotroam", "sGMINiJDcU"); + wifiMulti.addAP("Ziggo6565749", "Ziggobroek1@"); + + Serial.println("Connecting Wifi..."); + if (wifiMulti.run() == WL_CONNECTED) { + Serial.println(""); + Serial.println("WiFi connected"); + Serial.println("IP address: "); + Serial.println(WiFi.localIP()); + + // Connect to WebSocket server + webSocket.begin("145.92.8.114", 80, "/ws"); // Replace with your Raspberry Pi's IP address and port + webSocket.onEvent(webSocketEvent); + webSocket.setReconnectInterval(500); + } +} + +void loop() { + + // update when interval is met + if (currentMillis - lastMillis >= interval){ + lastMillis = millis(); + update(); + } + + // update the counter + currentMillis = millis(); + + float h = dht.readHumidity(); + // Read temperature as Celsius (the default) + float t = dht.readTemperature(); + + if (isnan(h) || isnan(t)) { + Serial.println(F("Failed to read from DHT sensor!")); + return; + } + + // Compute heat index in Celsius (isFahrenheit = false) + float hic = dht.computeHeatIndex(t, h, false); + + Serial.print(F("Humidity: ")); + Serial.print(h); + Serial.print(F("% Temperature: ")); + Serial.print(t); + Serial.print(F("°C ")); + Serial.print(hic); + Serial.print(F("°C ")); + + + + // Ensure WebSocket communication + webSocket.loop(); +} + +void update(){ + webSocket.sendTXT("{\"node\": \"" + String(WiFi.macAddress()) + "\", \"Temp\":\"" + String(t) + "\",\"Humi\":\"" + String(h) + "\"}"); +} \ No newline at end of file diff --git a/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md b/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md new file mode 100644 index 0000000..6fb2487 --- /dev/null +++ b/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md @@ -0,0 +1,25 @@ +### Connecting With The websocket. +#### The reason. +During our project we needed more esp's to connect to the websocket, so i was given the task to make a connection to wifi, connect to the websocket, and then send information to it. + +#### Before the setup. +I used library's for: connecting to multiple wifi's, connecting to the websocket and being able to read infromation form a DHT11. +These were called uppon in the first few lines. + +Together with this a few variables are named to be used later in the code. + +#### The Setup +Firstoff, start with identifying which serial port will be used and work from there. +It Then tells the DHT to send a test message and start it up. + +Then the several wifi connections get told here and it looks for the one that connects. +(This is made bij giving the wifi name and pasword) +In this sequence a print is made, showing that there is an atempt to connect to a wifi. + +*This was used because the node should be able to connect to several wifi's and not be stuck t one in perticulair. + +After the wifi is connected it sends a print to indicate a connection and pings the ip adress of the used wifi. + +The websocket connection which was then made is made using the uri, port, and type of connection. +In case of websocket events it gets sent. +In case of connection failiure, try this. \ No newline at end of file diff --git a/docs/brainstorm/Feedback.md b/docs/brainstorm/Feedback.md index 84428c0..64205c7 100644 --- a/docs/brainstorm/Feedback.md +++ b/docs/brainstorm/Feedback.md @@ -43,7 +43,7 @@ The Plastic: less eco-friendly, takes a longer time, looks objectively better. since we can't decide on what we should use, I (Bram) went out to asks the public for their opinion. To do this i took the front of the plastic design, and the front of the wooden design. -They lloked like this: +They looked like this: 1. which design is more likable From 912344153e7f4b480a8c5b044711b51d7567dea9 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 27 Mar 2024 16:11:40 +0100 Subject: [PATCH 067/215] arduino bram node --- .../NodeWithWebConnection.md | 29 +++++++++++++++++- .../ArduinoExperience/image.png | Bin 0 -> 97891 bytes 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 docs/LearningProcessBram/ArduinoExperience/image.png diff --git a/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md b/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md index 6fb2487..2a16cf3 100644 --- a/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md +++ b/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md @@ -22,4 +22,31 @@ After the wifi is connected it sends a print to indicate a connection and pings The websocket connection which was then made is made using the uri, port, and type of connection. In case of websocket events it gets sent. -In case of connection failiure, try this. \ No newline at end of file +In case of connection failiure, try this. + +#### The loop +We start with setting a timer because a "delay" function would break the connection with the websocket resulting in an error. + +This relates back to some some variables that were made in the beginning. + +We make variables for the different results we are gathering, so these can be used later. + +Then the variables get printed for overview. + +To ensure the websocket connection , the process gets looped. + +#### Update File. +Here the text thathas te be sent to the websocket gets sent. + +### The fysical product. +it is shown here: +![fysical1](<../documentatie/assets/DHT11 state 1.jpg>) +It also turns on: +![fysical2](<../documentatie/assets/DHT11 state 2.jpg>) + +Here are my fritzing and wireframe, the components used are shown but The DHT11 is replaced by a DHT22. +![alt text](../documentatie/assets/DHT11_by_button_fritzing.png) +![alt text](../documentatie/assets/DHT11_by_button_wireframe.png) + +### The code. +Here the c++ code is shown: diff --git a/docs/LearningProcessBram/ArduinoExperience/image.png b/docs/LearningProcessBram/ArduinoExperience/image.png new file mode 100644 index 0000000000000000000000000000000000000000..6a0ce4ac5289e59e0b38d864d4673ac155d5938b GIT binary patch literal 97891 zcmdS>byQVr*9Qz6ARsLrf`|gr(#;VB1nCx#kVZlf=}=N>r33`rbP5vEAYIZWjUWQj z-SEy0o^zk)exC7tWg?*L$>V*pzu%#c|SH5uJve$(R zmoA}Sf}arO{M3R!Ec@xblUX!1sxLIM6&no-hTTPQ((4Z}h-0mA z^14W(*mNE_BYf?gD#OyeeAP!5cAPHOD(RXPa^{R)Hp}W*F&YnhnnD>A=<9@nY3?6r zF#htXs;-%1`3KeqDv=}tq=U8jFEhM+<)cSe>@NxlJkA-%FlVeUH%Dto-Vh^ML{MVg z;A_KtRMKqX&qc&+?^>xof`N{sIlq3u9C3MSoz6!W6SYh-ugmnyz1XY72W}r)P0&!# zn1Ava74=>SrEDh4MGg#|#v8S_U;8GP)-q*tCh1^DzIAc!w7%vCoJD%gjJul4L8m3I zrHR@%xU|gaGcpwsgGR}evZZegG)p$b;$sSi<6oxz{>Bq`-7eS#(>Rres#eU~_e(d< zS8hf&xP%kcJZnQNyu&(ckCtxitCz1yn?X_Uk8(rJl9&RD+>@G;x?@c<|JqCI8I|2K zg4@K5W0*$BTgQ!Oa*D&am2o7W7F_hYOx!CU-DHO9REa^8d{^vKPiHCDl?N)dVrcbQ z*u;N5`zn^+{`eE`Wtb<+GOAwH{4j%YV}S=MHgEEEY;4OliI$)B;Ap%Vv`i*Ddos-| zZf$c@&FW{yv%baxg}z=eh0H_R-+0iFlR9uEyVU}XOU)|(eNNcZe$pIC%m!M`4DRn( z#N^L{+b~~9#!XAo5o(eI9;PP5BS{c(5V@q1OheFw>JP(_lEvp59T zUPTXq85sCM%^d1>q;7H$lgrN*afAs>gLBjTlymv6+l zTF%{z<=zFHjpPsD;YNNiDvQUuJoITK=QK7|bxI(s{DMQwSn~yE2VGYi4Kq?t8_o4r z;06a1w~>-A9p6;(i~KO=wsw2}ji-zHp~!#YA+MNd7!h#dPGoNLKk^8Z*bhTwGF+Iv z^2|z!D)G8(xIPW()kqRA^J~l~;)o3~F9gS=0{m8cvG11V19sIk!LN!Lm3YX{y{D^1 z{VnkJpE=p2jUdW+P>@Z$qz6!F_MWd;|{?y)7gb^Fe& z`L!kd|J>yrzDxZDxF$@0K6oDO;oISEeI*Q&%L>W=8c1!^2scHoV$9S_7~CyV#=h(N z463^5aMjsx;D0_Nzcx%iL)I~DSaE*}CE^+uHoBDlm2Y_{;+HRzh0&6dIJsdx=SzqKe$lF}QiX_WEzd@TlS`2n1uKZtjYP(-PLoq@3yV68^1MTe7 ze})~VZ}v4G=Np4UxPIt=?to31aFL%~&dV3ZEb!MmnnJ|8Fdue2ENpzznizPtXA$Yr z`BMMP-~ZRfkVWAq|DGLTGg|Dp5qxo6P$cWTrz8m4&XpFT;Jec!@{NK9}7MjyK z68Xr;Ir%fUL2Bm{WL)m8pW*iGk_;@E4=uaOI6IesK)FdrY&gBbulldHW67Z+S<0Cq z*9HB89V*T$N{6 zHTizS2i>o&!QWuKsQ$JJjq2MCv40lsd>10B$ESiWs%+wgoh zGwzYU2|u5(fWsT?3MS&0XYd82*tzU2v&Ly8Rr^!9WaQ)o zH7imw#in8SwP8_kP%u(cvJ*10ss7J%!noOS>F;pRV)^d{z%~^RfA?-@d2}dEjv{0R z#;)tJZ|s9t+x^v6$vFg`ui*hQES$xbe=Vq6?$`6c+VSj~CbVh7&VeI@n3gi*}iA>|`B>D{X>QdSEL8iU1G_8N`Pm zD;ka$;7rNXr@A@1EI+7(I!UWHFN)` zLkaHNv^QP0=HIX(U>f{;aW?VZ z)ELLt+obae;kf=2rnpcQ)0|P$EIH;{m{fjPK}7&Jok)wCf}%s3=4A{V%?E-y5*BCq zU(+ycDd=ifajd07;_65z_eNn}k}{;j`=2Vi#rTDE6X)x)-=SjGKK$8+$@HsGNbQYZ zMhLPz(|!Ay@ljiCsV3}%XIt|<+Fva1p*ssD@J=`x4t;w3efw!%mBae9L^YXwdZFv? ziqWBq$cED2Z zgA;=Vr(+5aD-t6Fc{(zL0loYOPSei)&AEMibwx!y5|Ze!u&*^y z7&IxoT2Z%7`K-rEfBrOzP1|p)Ly=J0oa>?%aoda5^C&Z@zmnMHNy4$?1dH^BfSy&i zvb3^Nhv7$`O1gZbT&$4uh8HU4#>U14uCmnWDPPuTCJ~X7^h6Iabh$*4s+1HInxES) z!IHGA8p%E1KJY(Zo2pH8+h{$&rdXCQ+f}0yuzy{%9VL2M4E=nz42~c{Kxjny&-0tP zT`fG1w^wJ_DKScRiaq>Qia^3rhO?%4A#e`=4t4&KQz z*VU>!ckZCmr1uS1yZa{yyLKdsp5~TJxGa5cw&aP+!2D+NTvb&ylu8)VA-D6!Pbq5m zBFMUw%{@3nZED#R+!kC8OW$`VT=OIXiBVBeZ?cFn+`O5jk*7;58AQrssaaw@ZZY)f zI*DlCg5ATXZJK^+l%(R1SvBA}R8=FiawXBL_ND{pI^)IBtJa$+YEBNAL|PHz{^Y#Y zM?0f7Y&xaSe)nf~#PP0<=254aW=2B{mz0!jYHE@R{1feWF4>%wRR1Z#+CpW`FP+b@ zIU70)inwo2*h2!W$T#xb4c&JQn;u-Qv(*VCX7MR>q;}ux`TEM+39DF>xzb{+)YfXG z=pMTJMl1d0D_CE5R%=eH;bG7ba&bJuy;+gtty9syU#vzQX4@hwiRlM(wMmGG8aY2m zCTD7wtiYBt_g`$KPn4CBsT>C*E z^<@56N8D=J9F-4Vv#s@RF@FnN_1=^2kN41Na@AdhHVNwwmPHazJm9znr;k~(7NMy)5itAB#=#t)<=hR zXuc;oj>pPnwQAR4d4yY3l)B4$dO_PKOftFb^yHA69J@&|d3dC7Xfa;UktasBGFghs z`RC8p@YCZ}&!A#+7WMjFtbru1Z~Wy8MB8L-%IhO4Xl3LhB)yalI%xo~{QK-`ZrZ^tmSS*{hXKK$I0 z!S8GmU8h&LgbCP#NY&yU-As`|6J0WY+Q)~Bt#{do2CTU#A&WtW_c z#rJ#~(e_fe{f$M+?6!`Mj`sGx1$#G*pL27f8!fb(zdB~_5|UUA7u>#ivu;R*Jn;#B`2L`f*TqdAZJNQN(#iw2O;7GUU0l; zrVC_YWVHDD^5W6;OUhV}^Y!mRb-#a=RGc&9C?+xSbTO}HBie6H(RK#IZ{t{d8|DAn z4$=SjcEH1GT<3c>_1E%9v9F_miLvoOrb@HX=O*64P-<29G6ysDiM`b4+7=$k%%SY#Um8hSCzs)?sZ{%F%% zTU!+?_$ZaJ2F$py$$50jMrwwXA!_hget+4uZOdehK_ys#2_Wh*CVQxywEm~Sy0fB>D zk<%X}v))hUeJ}{LiY+1&6IUH7klPS)MTHJ)CE>|TuW@B~Z*T9{jAUWgo&H?yT}a0* zZEfW)+rQu4ez;OLmyj$K+KV&9lxOcc6U++_0f!~%A5Wgo=i#rJF97On*Zrw z4ovrAoiApc#6AR6`FH^$y+dSt=C!GISk@}miVqLpY@)Cc*_-n2^4pG zE|K4$F?zJK*(DnK`nB2je1qMUaW=i`AiRU=K(-Sl+cl51G?C_flgMGavwpW_LJ{a40V*4GHG_xWXw{*Jp zg3q5nLoHKrxKe?PSx_vldC<$gUxTmOz+BW*qZIOUshWV4OeO46I=(`m;55Cp(1(ur z`ST~t=Vs zE~8E){arUBi@XQy5!5lgXQ$5#aaOliBan4FAm#h%V*Kb+(oM&Eg+g*0sdarDlICKJ5rg=Tgs5;GV~=Bq~Ca z|0>VxYVXK+pA%lcFDXUoXE5BLDMS$$_q%e&Nc})4rpb5T1Pbauq*Aw1KyX{%t?#sF zk>ZR=GHzo0Co&Sx&UzCl%CK|YpnOH_38_RIg1*!nM8s%&^z zkz~>KGgWczZ=*53>w^mUiiY|8q&&=etb@;|olGVj4|Z0EZ1hhZ>yNiqM?L@A%X)P@ zxs7?~yBvZ(D~L`xP;FDQIbLE|f1RIo&@jK7C-x$GFmXks!vsDsrPcsQ)pX6i@FUsS zEF@JLo8$0O3UikI5sh4NuY5A-_T7|w2KC^*#>}blk4h#Kd57Rrv{jo51InAb~p4~1z`FPLU z9|vc2yqiY+Yh5kWc^92?aOzm&1#roPZjHSa=O-=hd6M6K0nubOpq(Komcgy{!URe2 z|CZ&6Z@u!GQO7K;NRp``c{q(*EHZd zJob)MCeAbv{0{G>Fqav6#NZ*c%uPQJqRivucbk|7a7n(DiW`5F@(QSc6iQhH`56_^ z``*$a{i;IVIS$s&y-o1R?n*x1m-`8}e97=onVFe(R#%m-Y`(@TP{auxBAL#yGx>v) zO-waQP6y_GQ1MiRzi_Qrqw%@2<+^*UUqPbg!r1mB@oH{SY|$mBH#*KV=fC}dxSu<; zBaqZI3KCcTA*DBIRbnq7{|!v_2&Pzj2W#8R^H;FVeeMAgHJE(Zha#SO_XpJf`-%?; z&i^h?^3-v{N%)RU9@oW*MiuA(5Y^{g)US5bzv*Aq3aJQyprKcQv|XnmWh9_PvbX>9 zFGx{jf3g^V<>L8OZq#pqG~OFy@a?F1C$Ud~j}>(@aHBTKu0xV|*4XPZl45U7s+4s+ z!{1ZVa_6)&ki7qk^34?Ti;9YBx{d6c&^ZMaBRTWYbJd7FjnR2_+h0lT>+9U z8aCO%#Nn!ACf^>NIae%T4Uzqy;nxN1@v7VXXG%>I-FE=>1-*XVQfBY#dH)UvM*-vp zfZw`BW^ZLuUG`_A_f@3-Y{7qT$Ei4(|DvTg#I<72B@R{C(*W)axPJCVJ~6w0|GwgJ zoXz$^PqP2eVspiZ4MNo8gkkvsfAHi7z}Ln8%=)JQ!WW?~ z=;d;Ugtws)j5kvD+|f(NHD9c`$f;fC5diWw=$kQ?oPoTlHLgi3c|>~lyg2+UM?^?`AW%>q>cH)baZKON{Sgn znt~~S7>V6AWhYIOiz601Ib^FoDuB8aU^hAf*3y6^oGApB<-|N4O5EwqsYGu-tl7JS zG!Zc|kKj^R#f`aLM>pR0VeMNxJAXZf zhnxA_OjXbMQ6T;k3}Wx%oxwT&Le;yjUFCWJPK|kVG)@SA!b=_5%2A z7~U~EXP3G^UVruft4KPBk8pT1T*dGD*-`Ss>ZT{S1ei+wNOF6bzDUMw*_(n<&5Mk9 z2pt^_okNZCFV*%7y%1n@%k8CA2~3?ylxg(zsKj%NHob90koDz$q+>u*ESGtK)hLgT zqNSxJFrxb^+w(m$0DJDEr>3NESvrNvds>-rad5oTXQ00Ag{V_}(05KM%DBENd5Kv2 z<(njWxKHORb5_%zr9LjzRgI;Fx)@7`n5&2YbU(iUtS{a}gSBGG1D&>%&M|Yv9&ZgA zLQf8*AC-Bg--=C3PD+Ae8!adErr$;vZfhwXHckQ^35!-lRFogyG@msT^1vk}WzcnQ zusR`%w2X{?{;2nN-I~8^JKf;C`3oa4qB)cyGBO)UKYfeW6afGO2vIq`PvZW4N+G8( z(K$H!zX!54)YW%@v<$w^tGoC58Zcinz~~{u(*B60!2e}lm1ET^n%6r$AYrS0vtbu3 zV+Uamji$(L->&)=5R#8897K<|2u}T3cS?bb1I{b3^G+g?Y5tpbCOr$fCgPw5o(pJ2 zy~Ew)+!j;U1J}Ba4|ffb!PhxOjmgq-xL|fj&(po*1kTtd9iw?r5p- zF(9?T=zN6)A+k2#`CCGAND|q+FKy2fV7!9pG1sSBz9; z8tbggGHGyIeqRGxY;II9@|-j{ zhXRt9{(%DLyL^Mxf}KayUOm4)bu^TCU3(sa7 zTOVqC(s^;PWv+9t$#))0NY0MZacf@5?aMYCxlnqv+@jJ$C3X>_>X}d`4>p0F?@-}{+OS~1GEr3lOns^QF>JAMYhDK{E^;6RQ#z*p zNA-7}dP}Z~`<6s*=4w^DIRm?}$1KJGH5LcQwNtjcoCfLuNz)V(L3t&;`GJm(LFG3@$QjIb&hpEVZsHankMbU1!r|5D(v2i6pstSGC$I30SnGm*|B^))^0g zUBIQA-zFHbI@;Pc&~c8wVBYalCQMb%T*Lfb(3vn4#|)Gfd{p=~#2I9{fBXizJ82JHXAfS|=x zNn^=9eAtJMQyKr7P~3_qPA0W3Zxh(UzUwIBP|yBdD<7fm`ju;j25x6ytJBXko#7pF z?~dAhgMGWt3F7{}752X?*=9?g`LYgP-kg6Ttd;C}k!%W|xj%+sv9WTpsnD52LvddIi%enMRIVYY99_YvAlLD%NH|LLRV2fy($AbUVZcy6o#y zJ!1T_>JLO1Gw<8vB$W`4I zE1rO#F}Bqz;-qOlE$Ed$w+|(8Ynw@FRx_YIzpr|C&5vc31O;+yH5=3nnVe zlj75&-`~R07}@$`ECs@`@zhGYWzB=tUrQCrJ@tV}MsVE-ZNtPS*0L&UK{M?fb5;<- zznv8xt(O8uheV;<1u8fuJ=3>CMJHlQNTM?nq2QjZSbc)IQ!2Wx4+vpTKuwx7*S-w# zF71jiuBKVRaQoJ;k8=^cNMDvxmN&So5Z8b8hzZIRotxGk<#4x3iJ0Bd1lyVfxncM7 zHVP{T)3;ZU1}i&u-*bWWfg!lSj3yQLTTMLg>`Bw+t1_r2=t=YE_SY7jR%NKK(j+}J`4%fVWHP|a>X0z zWkLgG6$9swdddL`KXcnmVH~Ksq2arPMTE>ghf~Ci4x%O-$0B9U3et<*LuL zaaa)$y(&2cO?1=~Y0r^}XZ`j^RSl})lA}_3*L17YSKn-{R8_OKF9S|l(m#^!IfJBX zlB13)?%npsV0E6n=k@E)PA`1^?*#V80Rrsx41U;Uqz~)wdi()9m%b*N$(aY}KV04w zoUWIY=TZIQ^&73=ev*D5Mhb-hdeEdSyDA+YlG{oC+bDsQYHy&4|IoX+*62qjdV@rT;^0mw2oIeiZb#gB_~S-ks=1? z8PEuv3Z}|XF^SzaJ9yp5RzIht{Dft$W78FIKd^_@1v*&x+0@sK4Lcov7MA7NXuXht zfP<|*g*yRtT#r;$w*Ufsu^vBIE}5)$TEFS36?2~fNs!m(JSsHu`Ll@jX#WiLJe!qJ z`019}%|bPNsuOxB!2@w%LWeBU6;ojO0;y~0PGEom9)`k8|sF_6$_vaD~ z4?!L-w_i|JR`xLN4(3L!~%FdjDVusFUw?iX&v>L0Sa0&;1cma}1}c z$Ki6x{QUf!o)aQ~RKR(|=m*!xl8;RGZkLn+b(72~XZb~=PtL4zFv>yhpD z?*T>AbG*r=s&@mH5QA8q8f%tMeoa|7G@sH_E>*12fn6II zXI0^F{u|r}EhtWtx19}SWZHmi4XO$uy?c|54L6<4PbpJX8$j+F3d;2{ zMp{65lMRw8Abid)p-oW6W|9DiK@neW+Lh2%gID!rwhfeP!^8J?4OJP{EG?PET4vTW zRI}>p#B^>QNVBUF;u#R1xs?9)Ak-@U$RJL2W*{8)9fsK~29RsUZ##V-B%wAgEz581 z?b}* zJe@LSP0dp4;{$^9&Ko`ffq}f1-$BT}qjQml3(8!mYd0P#{gJ4ZNYKv||7={pwA9p0 z)vPokDIjoQjDy8bhXDQTmtYlW-ba5M7niM^X%Vbgd$@o>E)Gig9`N2)jK!#H}DrqQ3ui_FwuNn7O&R!7b&~ zuhK-kf4}$jGOpXfLONK&*ecg9c_hxgx{OB7W4Tw0MhzutDohVl)ND0J?@nJ3UB6!S zq%ok%br(P$_wCyfe5+n~9OS_uP5%adrM=*u zILcYEV%8n<^(;~jTotFid2?^7Lgy1ctt5<4f=YZ}Dgv?x2f%RM5WKdou2on|ki9Vc z4(jbHSlXDp5!7yLwT7X>Q6D}Wl{9yQlk9TdrBae^Tm=vI@}Rj~ajn_B@O>4OvH+gRCiKvjK$7~-27 z8vxAd$Q|5vR*T$)vBYPlr-{Mi_UuO;$o+D$TyH|L#2Dr+=aB{yvz{dQZ~-$@tP+XE z>XyVlCJAdpQ&ai4wNE!lc<_s^Qs7^u_c=skm>loDPjt5kjwCXERJ-kao@^$ zv<_9fyC%1uy6oP57$pRXptP4Ez)li2T}YsGo{94?DXFC7`1rM5_e3_oaRTdHDoxo8 z8ZkW+Q{W6Al@Y#Jm*}aRj!tDqCwegGZ4C`%*ROY+9%vSsDS^^=*Y8P9&gf=+L#vPr z1m$oAS|0)Xd8GM5EzCEO;5r8ONUAcwT$fEoCiLcrB_2C)cg~p}ChgwE4Cc z;~eK9$92v`5bcyQTxSK}i!7ZA@OM&f2X|)m!K4O6h`5_K9TH_aL%h_@D}iIw97^3> zJ>hxke#h^N#efAkpi1k2N9J)_)BnKA%nZvK(zg&480ZQib)8Ktw7C!5C6U?c*JTA^ zqY8USr6Uz>So!)wgg%zlM5S}a(EUFeA9-ROGZZv+7QTq1D#R6U1kfMgLwkcK?yJDR z3EbQ_zv&QKQWvWWlh(U_S8Futq#}IcTHA$^Zbi6O>G~N+0_HYrQ4IL9NpU-fjPn<4 zY%z2qBBFsTwZ+u{L}O!PSy>q-F>|Titc-QzT_7qvc$q{L&*AldCM0r4(B`5(L-j=@ z&zFhT#~0!XOnAkM#V>&8OG``3Uo27yIpNW8nRb5Qu^O=)FXukmasH4) zC|K4Lr-%bnGcp)BISFv}D#ojACPjiJ3!e=91~Hh^^oYX2=S7R?8te0{EKC@|-s31A zQUSZ4Ex`5|kYLr1fp6>HX)yj9I^bmiZmJyrDlZ#%PNU0Qo?{!v2Ks)@o5JvATZf$ZIMj-dCxsOPBN5| zC!FWvq15?q$#eAjnuHRVo7`cr5M&xx9e6!Yj^MEBlYolR#2b{BlA;gCw9tLd`s7VU zf4{0o6}Vd7zb6I4YV#PE0lPnsUC?Igu*v(#D!oNLc>o{S_AR0qY>CAWis<<#! z*U9lAIK$Rwn!(s)T&x8{47|Otut33UEd+TxlXDJwh~Qurk36jylkTGKSAG#o*qY61 z&qpc7a{4u_eRg^^M-2T<*7~)8q^nFJno&ayC(EF&)@+vr^U|_2aiDJ_W!2_F?wwPEQOf1yd6!y2U z=66>P#r@S&t&#))rCr27d$vDFZOK-toRO6A-PDrYRmj-ujU;`2eclN|8E-w6Ma(jT z?nZPkZc9o?fR~Lmg7|F9bt}5x`;r&^28(q%x`iqCPL_UtH)I2F@{o-1hiDfVwL-Z> z>IYiR&xK2?h^Y7PTMC$0ZMzbLoyhJxUGY)0u&~h5ifx$}t!EjnPMGN~d)_}W>4t`z zR8*8NGDpIER3tYlKD2uKovxa>xw)I0keC^$90Kt;G+eGbmO{anU%;ZgT4dg5EsjO> z7(Enm(>3+ctgnH=d;k&C+PDVvaeY%CTwV=l1DMF4eAX~e_jYCX%I6l> z^Qwpk^J^oo*DO1xQ{5j*tjgtj?}oa@ngBfm|Eb139t0Bb#2qS@8+tNkInBhDs`7Y- zlLp{HK@;&!Hl^R0AvR)=@R1k>)Efd%8qk%D4bCS?5ow5BOQF-$bT<)~Kzw=<)!fZE zIG6pn{=a+zFT+?E)1vcamwTRrSmK+vRbM)$=XuP%f=RO26L+U=CH5|@_0WoN#qQFJ&k1mLK=a=S75(+N)A2La z$VyOfFj1mVf9f&+`@PM>Cb!v%f&t^? z`m1ljv=Fs+Ywt+xM|H#`WoOn&sMIi771{LNh_#j;LyKbdUs-211|vov#!Kf$248{P zpkq28)?9qMU>v^zQlwcwK1katzYT@P3E#McT0pgYmSpEU1_{9goBf%$p;m$EaM9bg zY~WxmuFd5uGz;Dtx`*r@v#5%+EmMo|Mo`Lr9yCggM|wA2hE?0CaXL;!IV^hw2V8QC zDmH&^G-zo~YvqvMDibdh&+RTrIji5sRStkEm0G00WLZF`EPqT5mu= zaS7<7%Wg*d!cfT z^y`@& z!!@LKJ!(1FK1%t-P-{B|QGX446*SXCPE&a$CHzm`i4l_p#_f=B?=$XO4%n;{#-lN- zdRSdwx|<`h4*+a<+2M$*KBZMfv&69}hzuP8$}{9Y;3{tVtR)GFWqkao57vUDu$v{W zT0ZT3=Zeh2m}ZOmqr z^0hdN$F(H6&41r}Xzc*aisMFwhi)G#(?6#Eg&4KEGvu7BeqYJJ{p85%l&Q-;Vr3<5 zz=D8)U?@+InuMgp{m@~oAH*O}s18Y`p$0vk=|y@e68UUz%JtpLyB%>Rfg;<${Cp8H zF)@%*J6c-yW2h!PIuMd`A6o1hhekMJ^z1p@TmWA?fpC7%c zd3s{MuX!q6PykLn zuCSrSjrIc+;iE0eac!nxd0vue87slnZ+(1ZgQv0G z&v1c(#lL*Uc&dKC?n+$gw(!=F_G1c>b&? zrPxfl`Ihe?yDBCAJ*xA1vvaOPwAf?u8$;oN(6t~#FND`CvRfGEghZHisrAM_U;KbW z|1%SdoznuA=yYSY5D|7Wt(|EO|0Q*hfb!7T`_Ggg=pOuy`5D<_d*)l-b8J-napNmj z+3bhs-{hZuv!k7zmb5AHs2(Wz?Nh%HWe8$a9ecnTc*5{ASx&4rtquImG>v_P?iX++ zodNS)z{$XT_N7I)n#1#9nYgIX%%SIs(~E{T(x~?4-LdBi)a|c-=##(DT8xk+p%?JC z2HU{Aq4VcCu!%f5-O_mYrtxsxS~N~x_H(3GB_;g_Lorac?h*V=A#gusJ*xg4kGUW% z!q#qkkJ#bgV_=v>m1leY!1cp=xgRx!#_1f+U2|I2(Eu#<0C78&3zbKbUeMO7iK2is zcmZErNuQ#QER#35%(=)@gB$YPxV0Ec&GGe`M{V^I{-;k;tZJ*%d ztvZUb+`auv6!XzweP%~c9d9J#X$tbx?JEv>w4azCxl-(G<7r_T>}TqhYnKHO#{n0ZkS-CfZO{zk80(?Q%6P5gQbicsREs~fAJ_{#`esI+sIL3050<~*fF#WZ{1_u=W z_Al`R1mXZNC@3fbC#xFRWtElR>G$hAoUp?p;%QwJH%afB5&!I(lgE0uC?RuuuY1hi zWgDZJzc{X-LZ3JCY_9(dKVgD*VQB9QNoX#{0p+`Ad;4zHm6bvhV(byP65U9ASXXl! zp7Eg)^~pwmPzi3R-JwwZNst_0$;MTp3C!S@D#ShijP5gGt%MfXueog(q$J>Z>S3U{ zZ~x+JH)L5+e4^PMCqespeU2F5{kWhX4X|A0MjI0!j*uU;(qLusP0!5WiwzKqFFPCp z)m-qT@#+z=w=fZ!sL5V~l`q0A``IP7?$d~cy=R5{W%~!&0(2`cxBcC}EDy^|Iw&yo zIR7Jxd1_#7*Wj9uMoY|<2<8}bSv3Z3B)y_ZybVeqH8S#e(qmPbRdMh-4(yuFJsMZt zdUbCyKF0mN=g4UveS+; zgwh>YKYX!hHa!op|C_*?JRM}Fyh5kHuZi92c;2WdFkT^W)=CD>iJQjgBwxE+^d} zz#>Au|9+OQ)2tYiMNPpQPTCKv07T94&M4R@#U(0Z_2*3!LtUUWf*v0~Y9SZM{b1Ud z1&BM7kB8;%ISF>83oXV31O#0jZD#>IvEGFC7&$|q@4Ph_J;?DP_ zpnlyM`P)-n;u4l(1?-Jah-1FPI~Fi-knOFn17&$Cx=0S* z=-F;l?0?J~tb~{by(Qo~0Yjj*DpAVMyZwvXelEsB&9*M#9ZWGa1Rn&AuI;4sbX20+ z&#hE3Mlu3FRALTvEsOS-pKQVU8R+7+5di@Kcw*4V&*!$6-)i*EVJ0&d7If%Q2V89yJHA&kU zi(4xrr*Ll1*f_aIQ&Y1Ajh3DsjppaNlMgQ04Ic<*?Of%8EBL7ZCt%CE0^NXtfdRAu zsBOZ2EzlN&9e&&M2Or{_;H9o{ zl5W~wYf1OdYB=OxJiS6{F{s1$Wg8Rs>Cn&g=OXKFqK_g-f-TPb7wRlENq?`g7d6{z zIu>ccQPE#BYK~)2TA7EPDaybTxU=Ksz0L^`1bGwvExSQJ3=g@XZ;RUsbrJ6L; zU*Sn6Uxg0%?7uXuo4)Fs-l{5Z=yoe8AL2L_9;{&FFl}cV7NSNLipW4IcwM|Jt#hje zcVTMjzQT4P9}Ey!kQmTmq0UkRH- z`O%MBXSrRcIJj&uP8Hk(mXkAV-u+nf0gJZ7S}-r})^DN}Q)n)_C492C&i~w-XXBY< zQ=3|L2(@T!xo}^a0xzjtb7NqSL^+i1u*C^Q8l86UOCk~@u_v*(=QbHs$~ zaQr95^vKUlY+RaVBegADcU0fjiuHt04Dq=-BuQpBMr!2f@OvEX^%iX0(8{%*c;1z_ z+D(({y8BG@u>3{){t{=`$>n?U+UqRn#=MV~c`7(nGlL#GBZf^%dWT{yK38nopP+m0 zWbbF*9|r&_TjaVdeK5y-5TGlR;42ox^p5zIFL9dzg0h!D-Qpr9xPL4QHC#N*QJI$6 zM{md#569C%JA~qV{%Gfkh?I&`!PW*fk4j9Dvsj=aLy_QzZ$V_XDrvIV2m1@&xWLuy zxY}=}y}CR@cZ65e*=yYHOaBvGNnp4UftERV69B0<>NL^_^w{P3_ZmLU5;SJ;0CgH= zyRh%af+=W0wl;6w=j3Qjw7K~Ej-7I6Y@gqU+2|6&(f&%Q^uPgfWOoT!w6#lE=j+LwmlRQ8Dls*Ck2hpIZL>!NlDIJQH(FnDa z$BA(}oA#ICrEe?3hdWD$R<(5!&ikl5g3pWdjSg2LPy69evR8mxVB*io>&V3Sjl=4TzLGM&s&(wmnfUNFy`E^zL0 zzi-d52DadB-Hr^?0)uPCr0k>+TrtffW89qX;_FARz>VTU%F7sxD$ znrP18YVMe*T*+3EB;D$DLcSnrq)3v&Ga-w9N{k>C-sb@Ct;pmaM!u-&g^3LIMhhmU zU9U&*(<)C1J*$19YGDoxU4~pvqj}dXJgE|L?w#t5wve6W(`4lVTqVd}{!l7f++Q z%c8S0>IQPSR5Ez{ZkMsz6KB<1XLWRHntz0@nyYOzU5~@If~x zU;b_&bJWJYF1<2Z-n7pdv^leNs-1E=dCGWf6teGdlpK2fag`RIJBy6x>G3W)O;izy=n%Vl2L+d*W}^F1Ryuu@Ob3lG89cxx%JMt zG2oeK?CsX2vkDoVjZ9U@mG)&vtLTwbtb^kGjGk1pY=mA&yYbrP zRsA0<&dMTPisegfUB?{NLMD6_dmDZVob)zqaxa`17j(|Zq8;o=k2oLV+1Xh?zL;EFK%vSPO)7}S$Hp>Z3CQPZetrVNBZ&7i zU`-nvodPQhOQgjtct?$=H=_;bL0yN2#Ba7b;COI$F6-Z( zay$qoWxwz!_lJjB@L(#hjDlt+>Nz9h^m*)UgvsHvLgy|C6Dgj}1CALV_b+{^k)rmv zXRnx9ldn}Q36yy}ygO9NbDP9#424Zp$C#avhRbd5S)>d%Eb4;v!Ojx@qCa(*5!+i( zOW@5gpuRr1{auWmOV!Bw7t6;0gN(lRlnh)?M-zvH;;FzH+p0d17*F%yG7GkW1`?ce zT>mX>v&NuDtX%_LEvs@3=?=X}!DB08&rf7^j8$e9!EteRNurkOk_39I&>h$>o12^K zhOB&Tgc3h$ruaitvIk5HpHs@W_z^<0V6fI{PT{zxVFoh#6FF*6IQ8@L@(#_~*-|#! zgk}vbwuWyYl1SR%WmbqV2irSk--<5x=gobPy87L-qZj9q&B1ogX~j%LWv?^?)2@W~0bFz@%G)50N9QY}xONOA|SvFDRvHixg!mZLb-vDv%sI=;^~ocv?u!+ih1@uoE$iu!HwX5?P&QT_`Q9NL zdMu(V8}m=NvRPu+**D7HN>yUr@N0Iw~sCw(DD!1+pbb~03ba%*>ZlokOh@`YM z(%mJE0-KU9N!fHG9n#(1NC?uUD4>9H*Y^9qdw2xc6F%sUY@t;SBUEFW{S7e_=AxOCKWCqG3 zejtXg5S9|tVKn|zK*x>1$Y^#KcEIu#k&gKf!>n6PR}PVV0lwSB(PnYOVxLx0O+jal z#aY#>VZz3xA3w?}}I$18BR|et!f-c;w{9Hm4#V z*=zoXINAg-xpl#0Va~}@j~2-lhd>MXZX{Y|?B$=pWzYSn(XEQF>a73v3BaUH zgL)CFse?}jF=ct;fK2SRnYlTT6664Oh@!SMt1M9Bq?D=wKGZiXPC)rSp}pf2fW-z< z{Z=ZL_wLyJ#C_XWWK-GRR6o~D_=8Qhvj~U?KxlQ_`U6nT02Sxydl+%lqldKO5he&?t+05LeG5Y{ zaEt~byA39ivf3%yk^GOUQvyf^IjKWi2(9{C(-M6D_NQ7}ybP_IJby;a?sk6{E3JVK zXJk8;-_j`#O%XXyUDqMEo8Bc?dXcvGCnv}^#6#>lvs-Os;?)BQuVdY*ZVC?>tx$w^ z78U?+1bW)kO>r*V)}2*Z#XIT-{}`BT;x|=(m73phkmX4}6a0@1Kt}1JOU=KZOVoa` z)|gwoKX3!hkt(d7EbL8*K!DgQn-5O|0QC-xLxG$IOwNsfqA7PA?|vBYM2Ua;j9xq> z#cRfE5YUEz?CNu!^$XJkf6-)l9}=Mad-@a*tK<+aKDTFGD?!5-U##52W!GXItnOGA z`-oQ?f2h{=P8J{wd}ksY&rc=h2AxadJBV`Ys*?i-ESg{0S%0mE43CA)JL~~(0{Wo8 zqkt%n5vOuX3)-z_yMf7x^{QlbFFozkbwdc9hqBLLug`XE(C5Gl{B06R9R>&ODS`iR z*^y$+mh@G~Y02``5pP%Y`Cua_Ozc_yMMy%ljJ449hwADc*UVS@U@mS9pa!HR4sgC9 zG%W%1V@^&WdSrxJ=rz{Y&z*Q-^Cp`*IqVI%Qm+#QlRW}#x_-5&Jkb9*3f(b1>Iosk ziqTd`T2@PkYFp!^z;_bY`I%CDts7h~Fy)`2h`ow2wJN)KTXZgg03vU9-nrhD`Lu`2 zoGitcsxBJ()1H`hUnbyNi|cOGS8Gd44{+H`)k5RJTa7?ye*kZl?O4$E`VJE&k>%|^ zz5Zoz09W)pW?Uu6&1@^aAXeBWyLy$Q%xKxT%{Jz|a^hP4}?fi2-f1}H#p zm2iBhg28tG>G&35TupZN6G;ICgvwk4$0R>k$R)kd`fXm@*l?j7X|eOX>*~JaZom97 zS;HwA*@3)c!*R>&ZEp6`(5BA_a^H)e1DxL-@tmnAOd^ySIdFh5<}*5-|K^1+AkhGR zb#F-c-*^#z69I=Mo-ed{GB}mj$j$OJN17;z0e<~tL%la0OoLQMjSU@MdP_d>_q|MX z7`03=K@xaA4_R5?@xK0cHa%TsIjZLR9oLTpI8E+^{A}t`%b#urQW`+S+`srMd0Zg> zO+FbXO+Ap3O)O;BTZRHVf&W*aU(>JyP?v3`u)hSnU%(~t!C3OwEHC__iC;Ss4FOfj4zC9&Ly+DHQ~ltN z{DrY`P=^364+d?oYbN(b$HvAcCm&uvc=Q(G@2y0HWnSW>sbJc#HON*bx#jc7pq&S(E!YBOnc!6 zLDWSw+WPS%DiP=8QN=PyqGN8*s6wVPsI!0#*=KP$>GEir(QhB~=^Xyu=(rPKM=&Bd zXjT4uJA(#3P30;*z!k?CZ$SNbMsMe}EgoI`_74jS1Lh34lr@{=QRUZd`=3ecZ$0mN zmGOw!#G_EJ;#vZDh?`zUAi$>K<>kF)5eCQ?=bB_;LP`n=AeF6x>ANQ_4EZ$o(D63& z0NEa3o$iwo-sjiTz#yl-Uf}PTw*Va2UI00+O@9>0FE`+R<#pU#GfWl)u0^Euy9pmA z7c-579;_}f@BSX1SlNGgKGo6GJ=WZUnlw1_c}}J9ZgAZvSYEv{K>V$)RQzNW840$A zthDsEsMjbdzH<2Zs|~q}&&aBX589vaGuNZZJZFfBUuU;1U@b^fS?v&8^|to1nz(X! z@F;0{dHfV56$04JU+V8ftk?NJ-Ck-fPU5E28^?%=u)iL}uhi)BRlYGEMS-wxudF$olXalND?yiFFPNV0qootNkl%tyB$BMCKj_2z>}<}koD0aC#dvu1kt9L)C1u@@|ROQVyg_=%oK(#cJkPUO;f&967Q>OZ5 zg4|_;DyRBNyPt4>?%c-RpOz6<980eV4e~>WmrzNlbLV54K{dj7%jYpti(WM>-x0yW z;qrlQd3^8Dn4dlIentaUz#w!`EwiYF6h$Rzs>dk`k(%(NVP#|E!>m~>SliTXDfWD6 z6~>a-x?^#Dl5$yr=K09stiq3|&exyS*n+H__W?HnkYyFRlVllv_7UN=weApzpr9ad zY9Wr4g#-ghEMS*Tkt1mO4xSp(KEGnU^%E?8l!*B0Mgj;j}E(0{Lt-tzzmI3md89Klmx9*vI$#`SO`E z_dY#cP5W5XDm5ldufil}zN-FqSaWQXwRh1J!hjDSU zy_hXYWWE2pU~vczzuGn#{G++$=8;I+x!W+Dc{BI7FmiXGH9(|BN;N3OypAu}DZAtHpFl9cokNo)taIKb0JxaEdjTwDM?>n%{3I|;2GspgBx7OQ5r+DtQo zrx>&j(_lFdIj?9m_Z8tKW_2ZuC#ZaU);AH*71Zn^=! zcbE@j6dO0Jip*K7^}y0y8$_TbN-_V#u_QzeMWF@7Ak{Tj$_0apXS z(QIsNB{}L!&fL|Mqi@3u@+NJZS)#P6L`F)TK z%4tFSA~b;uoU7Krt@Y`XpN0mZLL&HqWz@0XqNAbd(#c^!HXr`@>aSEPwK&V{5hTnmTV879badRL-YdT%2}Or;wNy&*rjbNYx~HGP1ANy*BxivG2X~}rirMw@^E;M5 zA?ujxrF~m9y@wN+BylM+ zs0mEhaOS3E?HYUm@o=GrhDzvQhkl#BMCpD%nbc4H(JvQ9M#2QJPi%+!;sV62#;>>C zVL-J%Gdt@_4X82zIUE}vZUNp!o}L$AWuJ^UcpUyb0rtHYD{7G!-y?P1*glF{X4Vl~ zn&4Vi|FNEl?<0c5I;`X1nN{R$hxk8S$JxBqez|s?_m_Fp|yNCeBo6`T>!h zwNr^YI}4`xf_d$Q&vU#P=JIB$<7b?}3aWrEnXA6B@p3vxVsInq&dK6ZJ$$+(X`^=e)O$kF z%F^1;$IoP9Wa}Nt===jBMR`-lozT0hSB@s`Z|KUj^B&O9^t(MLwrj6}4MjCm2ACGw_MYjP@~7>IR?4y_^sy24wNX2Z(Cf#WoPAJsq}ZF8CNXLINGZSHhzFBApk zwdbQ2My0Xu3AN{{V~Mz{9pPZ5jB}H!Vv_7vs3By_%Iwv~4E2q9Uv>Qe74j_A(g#Ip z%~`-Q2cM)<05`dS&G;xC>HoL@v%rY%aMAhZeT|r~W25TkX@^PWw407@KL3dJXZ5Uu z11TGXj&m{t4~q=8=Yu4z;R{cT?eS7sO0Tr+jKo{bj$emGsBtOx{kHV^FG`3^4t$x| z)Jtp)L{6Jg5DIxNTNDRu6v`#Kc$(Tai0RPCuWYTTc%mQkw&u7yl&OVP_YNZG7sX2Q z64TY{)ZkA5?ARB|S6mKWF%i~dSzh-{;-a!9IcRdJGIY0Sfnr`XU#dV#;K9hroCyY^ zsL1%&RmbL{$wNvZoUNz4uU&SlB(hSJ6%~FwY{vKH&EjuVDA2O|SpkjFDAFlcA+R6v zj6*Oe2_#zSpf*e_ap6ynr~ zo9q56)GmL?tylX~Lzb9iCt$()4?KpAa}c}K*3OfTpLDAM!91*4bXc9X^*TF@FGaT0 zRa_!_=0YYxnMJ2dYyLu}#*j0$9JwsPWNZSA>57&7q=HAPmZd_n>;#pr?><=^2M%+; zITtEKC^*HJi#&BT3)5#l($X$e3@Z^lkXD-E=17jnbkH`=o5NUDs!!?CX|C%DxOsSM z-W6Q3^eYI5oae{vG8W08yxWP%QM&zM`l*71uk4Gg*RFjLdQML5=>$05`~6B;4Jm95 zj(nl~BZ2hwYH%BaLgbs>VKa)BwY_sii|G4wz4anZcn+%H+1YkkH^(B+j;fz>&J~um z%rE9h&tPEy#?DT#WnVc99v1-1`{Y55LV7F9x)fOhM=eU~G4Cf(yZq?gz){ zCyxU{_bmtc`)VFX=y#&xfo;eSSNHX=h~Y^(EiI3)yYI1mBR*fqEXGyB()Kr(T0M!R zu|@XalstU$!8sGtR6OSfk~_iUc?YaJf_(1$Z?Th~G+gkwtK~3%TVdaO>y6_C#j3BO zV($|SIcHV?qNus?@k*c=1PnXaoT!c$_y&SCgD7@&|_fLit_J6JG0c3w+WCKWRF< z(kIPE10I^$)ESenP`^NR)BXC6j9c}V(>ZBc<7%Dq^0G4Bqi5+R*+xI%d`bGGne(W1m|5BP zK5s0r((&bg-r(aP7{wm1t}?MjGunzVw=poFnz!RiKeoG(OIN4IcWHdosgZM$!P{O{ ztgugruqD*r$AI(2C^+U+^ClqrSH7cXe9+sd-I^*DZTYR7)6tCE>tdzv)MU@&0nBg& z;J_kublsX`6;sU9XmIMWINWUomw%g4R`0D=La;x(uh&@@!H0ssc8qGcMRlD^`$A^> z0Du?yu#qyax{$HS2qhJbM$~7|v)OK@zN}(yw)bpxBWR?T z`n|A`Nb;qOl%#`KheqEH-?n+fg6x$|K)@d$6WrU~y#zcZ;EnRc^F8aIU~%|N(JRsC zQj8@l5t)xzIbTCJ$Gx|oqC*U|=QA+m~I{b*90?^Hy#Q} zVqbRP)h`PDJ+3_zhp+Gw#38)i^*$U~<&7QXnR|DrMCg70jJ#sr*26beQ;NjbOsUPP zG3|B`!eT}rh^6&6J8zuSgC`2~kU-AVd3&zp<0E3p+f3+#W7+PkU-x$~t1}0iMv~8$ zRGQFKC360pREJW&O&l(2#zIzrkfcAc9!+b>?Gr1(0BdMpu^Nd;<=h_66{6TAe{zlT zNo~9ITUfhZ zFpf$}4Rk`jk@a7MEP-k{fxVb-G4Sw;+S9m<%mVE8OZ;ZLk;@mD$(vkNQAWb-aR1c# zUOr`V7)nEYtf}a0983L>on78!OZ+16utkEprv@5^j`4aZ`tctm>MZDXm z=#3IPIg^hpn2?VMdWLJ+&$){m8=a-4!xnrEjg2{=MBkn|qvF_9P5nWBXn5pFhGV&~ zawqoj+H};c=+g3HjGPvhzVNCAyc>$pgB`FZa8qwm&1^hlUk*)}Ufd64-VS!gz$rXb zo-WW*l6^_;&1y^RyVdz-Xfu0@d-8EvfmKR^8iiOaf%Vfz|EVFNRys$b7btavOXnIg z$z5il2cy_te~rFq!{^47Z%))MMBY@5r$(LOHkhZ2u_$t-g@=cK0P;Bjfn@icqwI6~ zro0@m8La0|BM=Z>t7y_|6jb!^_4_qPZ#1MNNdEut-RVA@axU*UzW@F-l}jDw;8KKp z2>FOVsoh1p3BtH!;Hud6!y5Er;RqK z6j5u5OV_o%&J7*4@}TyzKa1J1y~!T4zgICI#9b@JOF^|Y80Zh*N1`XrzdNc>$r(za0 z(oDPl6i$rr+VjPHfCH?~z19kI?K2*h6pF?xw6_#xEP4KN+RDY^S568d zg_TES()OA_PHcf-=F3$DXdJv|lbC^GIB1!rP(R8&Rf_&-1cAGtkcW|`~b!w_>m&%d);qbAO+zF${a z-diw*ItGm}%xt>Rs51ynigNn7mhX4I!7!u8v$oN+Q)z^s>4`jvKyY$$YLpT~;z3;j zG<(9PCFy;27IK`v(~&D(=(pi<(RX~$-m9V}(qryV`~UZA@U3y4^80)1(-!avylv1f zL$7dmeHMqnUKh6X_rC>D0zR6leErQCInI4Zd_fUgNb@nK2j8XyHgOKRkm}0EKn)wH zNBc*yS5Sq-r%#^(X*Od*#Px@iLA9f_kw6UOwTirAhI*!cCGj&oj3JvZTxr6AbXk%s zF7`#3u~jO>B`V&lIZw2k;a#pLa+_1GiqguSm^L9X_fSmjmBz6wJw?TFoWZ=X+6F(! zU+FWPwkMBkIpwT{N_cR8D1ax`-_CJ+sipPW*B5-u>%G1C&CS1Zd@s4^fc8oC5g}F> z5Y(HRntI=Zqq;acLEnUkbGx`ySZ1=KqMu)@PLA!kN~p-BEz$4@0F^3;BLD&e5Q-xX zr&JcA2s<+RMEU?gVgD{24e~PL)WYk(=mbXEqleGm`mOq;BAl?{c9mXi{g|7sdQIR8 zswsX)-+k6SbWQI0x+Ov6`(93uT5{KODc|{UoY?m(pas)1uuD?at+cK8tOXZG1=)@9 zw}rVm0U;qmH0i_w<7!rn_qJ}{O^DYxCvzR(7g$%oHpRfkJ|cEqb7#GP&j4GZbBO$# zHoS@>XX%+*HPNLNlz$KiI*y}*0|2a`3 zx*~{Ool+~H(jLnRNio28-|70(Q&}kSKz~12uKvM6Y&2A0vt|Gw2K&t5p`qs~iv0vA zUD+{+IVRHw@j-YNv?#Td_^lWMdwR~y`@R{WTs2_ZSS~Is=!A4bAV8ID{E&FLKYBE0QnFvd$d1Z=P7kNGv!+oiYnAKTQswz9%!=I=oS9=mqR{3&~`-OyJr zuKayn`k)8DK+$Z#MXI{Py2!fa3!c-*{Ja(z)f!_OjlIx$p*xEPF*-nBGa? z*=vPF2U}Z!oPWQ%ii?Zu^rroszzPr$0(Q@Wnm7bAV3IU(vxMEaFumvBSyh6sdzWG( zP*4ciy9ZdMhn!QpeZlRgiu?k;k($~B1_r)*Mem4T)VrYQV@0Vd9EZrVLZBk|KZbOY zmUcEtS)pLJ7@XN>GO1qs0Efq#(lZFB&|o3LOe2N2oIoO@v^+5*&g$@Qjh?`t0`bNX zo30@%v^~Rs4M*Pk=Xy0AUpLV)H|qE03`S!e*{_=Op!}vwF~?Mjt0S)HKNXp57&>K# zzc08lvq+^;+aM*a=kr;P)JC~ zs(x-~cL?N@z?D?Q{1XjaqoGed_hoQ~?8nw7%Q{w5Oi0&-0H)DaW!Kc!mYJkvCqQ#u z8n+WmXPZ=Vj_2%QEDNm6rjKpA1|H#LS*pLO0`^+1vdDFr(#t5I8gex?@H7jY6CEo^ z5!z|27U(&>k7J2D5-ljJ6;>nT5L?dIUaunXy7Vx}YxWJ%hxShrs#H098Jw6hq2PNExD=Lrrh6Xu#c|RW?mPe0-goS_XvFfe< zxHN}GrK^u|B$mH>^v+G}f=nhtP)PBGPsQ3_)8n6|-!-#8asRRJ>5vYo#iOpTDtONE z)a~nYeP3S(!!}QjsPulfhVD?eXUh+hp>w|5oMdJ*qT*KVBD43145tT9=SKBU7Nhue z%I5ZQ9!)@R-b~3*aACYR8}6Cy1fVE5pM| zYU{*U;jM3^59X376ok%;t{gSP3g_A9d9<|w>O!I%+4S5-c6>)hGi=C1+v0kW-~h}J zuy0B9@9l0UH91aA|4@=DBD?$j z58@8KmW9VWMxO`8qmwg}{NKjs$!^&EdMk6KRQgM7auyK_rL`sh0ZsI@OHr3=+|xW8 zGm3Psc+Il|toMHoCl&8ALGAqXX5y+~kB8#$Mt3gGAVNpAFHHPE1!Z&X& z!w6k9z4}B;3kqAIhNW6Ob%g8yHi@Fx$~CA^i?-m=PJs%_ln@#*5wqhqn8C_>zWsR< z^~V0tSYNaFVRLSR7oUFGqeLXsQ7~$;fXS?=;%5G(W#zeSd62lx@e#p?isoAMX|F#j z?6CSujrWAWWjm!xF0Vc?lna&{hSkuahohM%Q+YOO4pq@@>qWtyBKPH@FBpB9!7mNV z%;Ikw?Rtg)yP{b=MXSUU&Gm#@1ifr60qt4I{M&CXZw3+WC_w^#)HV{nYQA41LcG_b zQp!zek`Inn)kD0}wAhS*h!~KMfooxd+s+6a{y+y6A|*_d+*Abxpnwg^p-}t|O5;Pc z?*_pOwTm8UWIvZg>%ZyXjNF5~d&YE?+csPuaEmU#9<yY+PksMsMuL%Mp=LpXUgrv67s^R%`T~%9Abv4b55KeV4WAq_FAV z_Kez;Nkn&K@73y_O+NjboF8!{?M9?g(pJV#mGdz3o9@*6`y%$7AG|+DihPpVyZ`wX!p-j;YKSro;TKe#tvrqU$8}L5(3f-N9@L$r@6+8||6MA`x`Y-cl9}_cjfAxMCGSt) z4Q5qB`}+pghJW5d@EqCfg9^nVQpK~j0@GILNG6n?^L zsFBrln;eiB%+yG!tF{$Iw@e|M&8jY-C*9xnD5{;kSNdnE+^-l z|JnQP&~&?F{lQ2YhPsx@HRN9&`kxwm;bbEGGb8rrBXT>DAB6GC8UB40iLZ>Vv^*mb zUMmN&gHxCHWTZ7?Ek8c>lK6IuL3|(5Hk%;w-^aHrrt!gPFsDY|I`MKzUbImpa@Z+( z=hvu`m3cLY{kKee4AaP56}G0Mm%yIm0UmWTkSaupja&TyM0DT=u~BW(2|PhcN=pyC zXm&9dOEJBp2q9gRSatN>N92kIgC!62a#CmCmu+)W zZAP<~kpHJ7S8R%GxaaFYqyMi!N+?pW|FryYno2#}_ybL=02pPaq)D8xS`F~=dH^Gr zflHfVn)I${YF1y>yKEwm>Yr8i>+-Svou%shn_ z%wYtCGn1kG=T}0}>b6q-k0~6^DE2F1@4_X#EAlb#ks^ zk3-O0<{2HJcbWX@`f?TAhWFnq_~g||F!Bu|XFV9<2rDh`i`q2(nB?M9?@Mv!NAQVs z{_tgEz<>u{thA6<0P+B`j@-Q3+FFoMl;B4Sv%TrlqLlohBfxZQE2Cfc^yA~}PZjew zqXAr_Se;|H+sXm&$NF4@DY8ibmH?flKQ>lDBsXkgMX#8KEk*o%QjOO2AW&D`boU~-P~v^VfX zfYH71woJSHJ^9Ma3{XT>gNUFvEXdrKfmj-F^hPDE5(-p1k&!i;SrJYqlU8txkguhB zAs$-+^ph$&F8R5=ZjpQ6DENEWzmwYyKJlL$Z-B%h9Q;!EN90LVqF{;31Sf&ua~+pK zw?kv;>)&~`t(j`-t4_gFb^yJ>qlKL;4I-;7M&vr~6T_npXX+KDRZi0zGnk7*$E++b zk*47{DVImf)*nvh%NK#%u5{juG91{@13x8iJ3F>G1SHt1-NoJ5qNrq7GK~=ZLC~fB z`T$`;R4wPfR;>6n=*N)%0DV)So6i*|@)4l*YBFj1T;i-?Hm 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 literal 0 HcmV?d00001 From 5c07478997c85e8c1106d713b1e8d6abe7a01ee7 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 27 Mar 2024 16:14:21 +0100 Subject: [PATCH 068/215] url added. --- .../ArduinoExperience/NodeWithWebConnection.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md b/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md index 2a16cf3..00e5dfd 100644 --- a/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md +++ b/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.md @@ -50,3 +50,4 @@ Here are my fritzing and wireframe, the components used are shown but The DHT11 ### The code. Here the c++ code is shown: +https://gitlab.fdmci.hva.nl/propedeuse-hbo-ict/onderwijs/2023-2024/out-a-se-ti/blok-3/qaajeeqiinii59/-/blob/main/docs/LearningProcessBram/ArduinoExperience/NodeWithWebConnection.ino?ref_type=heads \ No newline at end of file From d09df808861ff29fc527a9ae449723a2dec4d12d Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 27 Mar 2024 16:18:24 +0100 Subject: [PATCH 069/215] image of covers added. --- .../documentatie/assets/2Covers.jpg | Bin 0 -> 503649 bytes docs/brainstorm/Feedback.md | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/LearningProcessBram/documentatie/assets/2Covers.jpg diff --git a/docs/LearningProcessBram/documentatie/assets/2Covers.jpg b/docs/LearningProcessBram/documentatie/assets/2Covers.jpg new file mode 100644 index 0000000000000000000000000000000000000000..87d3679683f767fff75ad57bd84dbd7ee6eeca7e GIT binary patch literal 503649 zcmb@t2~d+s*FX9sA*@DZ2`CJUAcA1PQI>a5Fd&P7VUvI+ZvrSF0RqYp7{g*faRE^l zfe~Ib?130Ivp_O|=(vE4V}Jkw!r~0fgs=|74&py^zxwL?*RB7pTes?V(odi2?x**s z&*^i1{Z;(+Goa)C10f0kP$<9>003pVm%FdOfi1kwoeT93^z-n#;0}O5002JtPYU<| z01)Go5(7P5jW1os82=OZ-!A;>_t*cM{y&8BGS-Ix`4a#J5dVkt|F5YYbp`?WN*j>6$b{p=8Se*d4{R{@}*tWH&Hhk#4~um%XC0s8s|(3h{> z|8oC50ssgMQGhBc$rIfU0AMf(423}CUj7Hv)HZc( zJr(#0e#G|NmBhY_pO?+-vi{O3R0^uP>Mk$k;Qy_Bc}4$JAx|;X`0vW);eXW+(g16I zd)P$_V)Atq*ard0TME$t&H}qHgP3A2+PVgXxLmVc$2{?3f&GcrOj?UTjo(UeL#G3x zq{1)1I3_X)3ym)kvpy(r$$!#H@j-NtwU-WX?}4a_LH==-erARj&QSVjy)I{>ICv-D zhD|H1ZIlI-TBe|ic0n<#zO^BS4p9Vn~6=- z@2cU6BL&}k`<1%SJaCTuAj=;y>x+XnYkT4#oBBV1?YA1DzrzhoruPn`!-wrgjS+UC z9f2|-!M`(GW7F_f*b)`kX{!B$Kn#UMkID?t@rog2{XJEB`z=6kNSN?$W~Mf^V9Vl@ zgB2flg0*p^KZ=eu+cIuid}`orccd)cf;T6MUjsV~7OvUczynTKFR-_6;=3QBlK@mq zZ}a!x`larIc(cNC0E8c=4pbvjOos+RIR0x={{u{eSC=v`8+$mwEF>Dz^d^`cS?dN2 z)fEphBa0ObpBLaPGFI^v{du?B?ie&>fcPrObdi$OayJuA2PTn_f%F_OxAo6zOVBc| z$D>PIVTE(d7M}(Sy#w`oX*5&R6TjUDL2(PDT~khWUw%#x{S30=YUklh5Y5+hkfY?s z23hP9=FmHgS=Uj@52yUDwbo)U@qwFIXtS&T>?q}@L9Ut12Z4X0klu&gYO0xQNZQSW zpH-_ZDV&QCk<1Ljb_{;IS&dy6uf8Xqx1+VW#vo^urAXy7{O(TjDaI02&v+9E_N|

    k;rIim{Q0#zQ13q7&| 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�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

    ~tt?tR(cl25P~!7tLpVES-yL{7~Y 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 literal 0 HcmV?d00001 diff --git a/docs/brainstorm/Feedback.md b/docs/brainstorm/Feedback.md index 64205c7..29d30aa 100644 --- a/docs/brainstorm/Feedback.md +++ b/docs/brainstorm/Feedback.md @@ -44,7 +44,7 @@ since we can't decide on what we should use, I (Bram) went out to asks the publi To do this i took the front of the plastic design, and the front of the wooden design. They looked like this: - +![2Covers](../LearningProcessBram/documentatie/assets/2Covers.jpg) 1. which design is more likable /Sebas : plastic looks better and goes straight to the point. From a36b6746fd32f6ec06491053381b67f42ededf15 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 27 Mar 2024 18:53:42 +0100 Subject: [PATCH 070/215] created row of gauges --- web/new website/gauge.js | 4 +- web/new website/index.html | 54 +++++++++++++++++++------- web/new website/style.css | 79 ++++++++++++++++++++++++++------------ 3 files changed, 98 insertions(+), 39 deletions(-) diff --git a/web/new website/gauge.js b/web/new website/gauge.js index 6040164..5319b5c 100644 --- a/web/new website/gauge.js +++ b/web/new website/gauge.js @@ -1,10 +1,12 @@ // JavaScript function updateGauge(value) { const gaugeValue = document.getElementById('gaugeValue'); + const gaugeText = document.getElementById('gaugeText'); const maxGaugeValue = 100; // Maximum value the gauge can display const rotationDegree = ((value / maxGaugeValue) * 180) - 90; // Convert value to degree (-90 to 90) gaugeValue.style.transform = `rotate(${rotationDegree}deg)`; + gaugeText.textContent = value; // Update the text // Change color based on value if (value <= 40) { @@ -17,4 +19,4 @@ function updateGauge(value) { } // Example usage: -updateGauge(50); // Rotates the gauge to 0 degrees (50 out of 100) and changes color to orange \ No newline at end of file +updateGauge(50); // Rotates the gauge to 0 degrees (50 out of 100), changes color to orange, and updates the text to "50" \ No newline at end of file diff --git a/web/new website/index.html b/web/new website/index.html index 240352b..e323269 100644 --- a/web/new website/index.html +++ b/web/new website/index.html @@ -1,32 +1,60 @@ + - bruh + +

    +

    Gauge Group

    -
    -
    -
    - - -
    - +
    +
    +
    + + +
    +
    0
    +
    +
    +
    +
    +
    + + +
    +
    0
    +
    +
    +
    +
    +
    + + +
    +
    0
    +
    +
    +
    +
    +
    + + +
    +
    0
    +
    - - - - + - \ No newline at end of file diff --git a/web/new website/style.css b/web/new website/style.css index b17f43c..ff6f00c 100644 --- a/web/new website/style.css +++ b/web/new website/style.css @@ -4,24 +4,6 @@ box-sizing: border-box; } -.gaugeContainer { - width: 300px; - height: 300px; - border: 3px solid black; - border-radius: 50%; - margin: 50px auto; - position: relative; -} - -.center-point { - width: 20px; - height: 20px; - background-color: black; - border-radius: 50%; - position: absolute; - top: 137px; - left: 137px; -} .speedometer-scale { width: 8px; @@ -29,16 +11,15 @@ background-color: black; } -/* CSS */ /* CSS */ .gaugeContainer { - width: 300px; - height: 300px; + width: 30vw; + height: 300pxx; border: 3px solid black; - border-radius: 50%; + fill: grey; margin: 50px auto; position: relative; - display: block; + overflow: hidden; /* Hide the first half of the gauge */ } .gaugeValue { @@ -48,12 +29,60 @@ bottom: 50%; left: 50%; transform-origin: bottom; - transition: transform 0.3s ease, background-color 0.3s ease; /* Smooth transition for rotation and color change */ + transition: transform 0.3s ease, background-color 0.3s ease; +} + +.gaugeText { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + font-size: 24px; + text-align: center; + z-index: 2; /* Bring the value to the front */ } .gaugeImage { display: block; margin-left: auto; margin-right: auto; - width: 100%; + width: auto; + z-index: 2; /* Bring the value to the front */ +} + +.gaugeContainer { + width: 80%; /* Adjust this value as necessary */ + height: 80%; /* Adjust this value as necessary */ + border: 3px solid black; + fill: grey; + margin: 10% auto; + position: relative; + overflow: hidden; +} + +.Node { + display: flex; /* Use Flexbox */ + justify-content: space-between; /* Distribute the items evenly along the horizontal line */ + flex-wrap: wrap; /* Allow the items to wrap onto multiple lines if necessary */ +} + +.Sensorvalues { + flex: 1 0 20%; /* Allow the items to grow and shrink as necessary, and set the base width to 20% */ + margin: 10px; /* Add some margin around the items */ + background-color: #333; /* Dark background color */ + color: #fff; /* Light text color */ + padding: 20px; /* Some padding around the gauges */ + border-radius: 10px; /* Round borders */ +} + +.gaugeGroup { + background-color: #333; /* Dark background color */ + color: #fff; /* Light text color */ + padding: 20px; /* Some padding around the gauges */ + margin-bottom: 20px; /* Some margin below the group */ +} + +.groupTitle { + text-align: center; /* Center the title */ + margin-bottom: 20px; /* Some margin below the title */ } \ No newline at end of file From 77302d64a537bcb93e6b69b4139055470c4682d9 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Wed, 27 Mar 2024 20:03:09 +0100 Subject: [PATCH 071/215] Feedback updated --- docs/brainstorm/Feedback.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/docs/brainstorm/Feedback.md b/docs/brainstorm/Feedback.md index 29d30aa..792ecaa 100644 --- a/docs/brainstorm/Feedback.md +++ b/docs/brainstorm/Feedback.md @@ -48,29 +48,47 @@ They looked like this: 1. which design is more likable /Sebas : plastic looks better and goes straight to the point. + /Skip : plastic looks more clean. + /Dano : plastic is more smooth. + /Sietse : plastic is better. - /Ishak : Wood is more ecofriendly. + + /Ishak : Wood is more ecofriendly. + /Nailah : PLastic looks cooler + 2. which design is more distracting. /Sebas : wood is more distracting and more obvious. + /Skip : wood, because the school walls are more darker themed. + /Dano : wood looks off. + /Sietse : wood would be out of place. + /Ishak : Wood, but in a good way. + /Nailah : plastic looks more interesting. + 3. Any further comments about the design? /Sebas : Don't do wood, plastic is more sleek. + /Skip : plastic looks more professional. + /Dano : no. + /Sietse: no. + /Ishak : in the wood you can burn in your logo. + /Nailah : The wood can look better inside the school. + In conclusion, Even though the wood would atract more attention, the plastic looks better according to the students. So from this information we will continue to make plastic cases for the nodes. \ No newline at end of file From 28f5153cee19170890d131f7b9fa25bcfafe13f9 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 27 Mar 2024 20:05:52 +0100 Subject: [PATCH 072/215] Made the box look good --- web/new website/gauge.js | 23 +---- web/new website/index.html | 50 +++++----- web/new website/style.css | 193 ++++++++++++++++++++++--------------- 3 files changed, 145 insertions(+), 121 deletions(-) diff --git a/web/new website/gauge.js b/web/new website/gauge.js index 5319b5c..5a6e9cc 100644 --- a/web/new website/gauge.js +++ b/web/new website/gauge.js @@ -1,22 +1,9 @@ -// JavaScript -function updateGauge(value) { - const gaugeValue = document.getElementById('gaugeValue'); - const gaugeText = document.getElementById('gaugeText'); +function updateGauge(gaugeId, value) { + const needle = document.getElementById(`needle${gaugeId}`); + const gaugeText = document.getElementById(`gaugeText${gaugeId}`); const maxGaugeValue = 100; // Maximum value the gauge can display const rotationDegree = ((value / maxGaugeValue) * 180) - 90; // Convert value to degree (-90 to 90) - gaugeValue.style.transform = `rotate(${rotationDegree}deg)`; + needle.style.transform = `rotate(${rotationDegree}deg)`; gaugeText.textContent = value; // Update the text - - // Change color based on value - if (value <= 40) { - gaugeValue.style.backgroundColor = 'green'; - } else if (value <= 80) { - gaugeValue.style.backgroundColor = 'orange'; - } else { - gaugeValue.style.backgroundColor = 'red'; - } -} - -// Example usage: -updateGauge(50); // Rotates the gauge to 0 degrees (50 out of 100), changes color to orange, and updates the text to "50" \ No newline at end of file +} \ No newline at end of file diff --git a/web/new website/index.html b/web/new website/index.html index e323269..e90a2df 100644 --- a/web/new website/index.html +++ b/web/new website/index.html @@ -5,56 +5,56 @@ - bruh + Gauges -

    Gauge Group

    -
    +
    - -
    -
    0
    +
    +
    +
    0
    -
    -
    - -
    -
    0
    +
    +
    + +
    +
    +
    0
    -
    -
    - -
    -
    0
    +
    +
    + +
    +
    +
    0
    -
    -
    - -
    -
    0
    +
    +
    + +
    +
    +
    0
    + - - - - \ No newline at end of file + \ No newline at end of file diff --git a/web/new website/style.css b/web/new website/style.css index ff6f00c..df50097 100644 --- a/web/new website/style.css +++ b/web/new website/style.css @@ -1,88 +1,125 @@ * { - margin: 0; - padding: 0; box-sizing: border-box; } - -.speedometer-scale { - width: 8px; - height: 280px; - background-color: black; -} - -/* CSS */ -.gaugeContainer { - width: 30vw; - height: 300pxx; - border: 3px solid black; - fill: grey; - margin: 50px auto; - position: relative; - overflow: hidden; /* Hide the first half of the gauge */ -} - -.gaugeValue { - width: 10px; - height: 150px; - position: absolute; - bottom: 50%; - left: 50%; - transform-origin: bottom; - transition: transform 0.3s ease, background-color 0.3s ease; -} - -.gaugeText { - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); - font-size: 24px; - text-align: center; - z-index: 2; /* Bring the value to the front */ -} - -.gaugeImage { - display: block; - margin-left: auto; - margin-right: auto; - width: auto; - z-index: 2; /* Bring the value to the front */ -} - -.gaugeContainer { - width: 80%; /* Adjust this value as necessary */ - height: 80%; /* Adjust this value as necessary */ - border: 3px solid black; - fill: grey; - margin: 10% auto; - position: relative; - overflow: hidden; -} - -.Node { - display: flex; /* Use Flexbox */ - justify-content: space-between; /* Distribute the items evenly along the horizontal line */ - flex-wrap: wrap; /* Allow the items to wrap onto multiple lines if necessary */ -} - -.Sensorvalues { - flex: 1 0 20%; /* Allow the items to grow and shrink as necessary, and set the base width to 20% */ - margin: 10px; /* Add some margin around the items */ - background-color: #333; /* Dark background color */ - color: #fff; /* Light text color */ - padding: 20px; /* Some padding around the gauges */ - border-radius: 10px; /* Round borders */ +body { + display: flex; + justify-content: center; + align-items: center; + height: 100vh; + margin: 0; + background-color: #f0f0f0; } .gaugeGroup { - background-color: #333; /* Dark background color */ - color: #fff; /* Light text color */ - padding: 20px; /* Some padding around the gauges */ - margin-bottom: 20px; /* Some margin below the group */ + width: 70vw; + height: 20vh; + display: flex; + flex-direction: column; /* Keep as column */ + justify-content: flex-start; + background-color: #333; + color: #fff; + padding: 10px; + border-radius: 50px; + border: 2px solid #333; +} +.groupTitle { + width: 100%; + text-align: center; + font-size: 24px; } -.groupTitle { - text-align: center; /* Center the title */ - margin-bottom: 20px; /* Some margin below the title */ +.Node { + display: flex; + justify-content: space-around; + align-items: center; + width: 100%; + height: 100%; +} + +.Sensorvalues { + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-around; + flex-wrap: wrap; + width: 20%; + height: 100%; + background-color: #ddd; + color: #333; + padding: 10px; + margin: 5px; + border-radius: 10px; + text-align: center; + position: relative; + padding-bottom: 50px; /* Increase bottom padding */ + +} + +.gaugeContainer { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + width: 100%; + height: 80%; /* Increase the height from 70% to 80% */ + position: relative; + overflow: visible; +} + +.gaugeImage { + width: 100%; + height: auto; + max-height: 100%; + object-fit: contain; + position: absolute; /* Make the image position absolute */ + top: 0; + left: 0; + z-index: 1; /* Make the image display below the needle */ +} + +.gaugeValue, .gaugeText { + width: 100%; + text-align: center; + font-size: 24px; + z-index: 2; +} + +.gaugeText { + width: 100%; + text-align: center; + font-size: 24px; + z-index: 2; + position: absolute; + bottom: -30px; /* Adjust this value to move the text further down */ + +} + + +.valueContainer { + display: flex; + justify-content: center; + margin-top: 10px; +} + +#valueText { + font-size: 20px; +} + +.needle { + position: absolute; + margin-bottom: 2%; /* Lower the needle to the bottom */ + left: 50%; + width: 2px; + height: 70%; + background-color: black; + transform-origin: bottom; + z-index: 3; /* Make the needle display above the image */ +} + +.contentContainer { + display: flex; + flex-direction: row; /* Layout children side by side */ + width: 100%; + height: 100%; } \ No newline at end of file From f5ebaa676eb24ddd9fad98c4f7fb7eb2e8d659da Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 27 Mar 2024 20:48:24 +0100 Subject: [PATCH 073/215] GaugeGroup class creation --- web/new website/GaugGroup.js | 41 ++++++++++++++++++++++++++++++++++++ web/new website/gauge.js | 9 -------- 2 files changed, 41 insertions(+), 9 deletions(-) create mode 100644 web/new website/GaugGroup.js delete mode 100644 web/new website/gauge.js diff --git a/web/new website/GaugGroup.js b/web/new website/GaugGroup.js new file mode 100644 index 0000000..47434ef --- /dev/null +++ b/web/new website/GaugGroup.js @@ -0,0 +1,41 @@ +class GaugeGroup { + constructor(nodeId, gaugesCount) { + this.nodeId = nodeId; + this.gaugesCount = gaugesCount; + this.maxGaugeValue = 100; // Maximum value the gauge can display + + // Create a new div element + this.element = document.createElement("div"); + this.element.className = "gaugeGroup"; + + // Set the HTML of the new div + this.element.innerHTML = ` +

    Gauge Group for Node ${this.nodeId}

    +
    + ${Array(this.gaugesCount).fill().map((_, i) => ` +
    +
    + +
    +
    +
    0
    +
    +
    +
    + `).join('')} +
    + `; + + // Append the new div to the body + document.body.appendChild(this.element); + } + + updateGauge(gaugeId, value) { + const needle = document.getElementById(`needle${this.nodeId}_${gaugeId}`); + const gaugeText = document.getElementById(`gaugeText${this.nodeId}_${gaugeId}`); + const rotationDegree = ((value / this.maxGaugeValue) * 180) - 90; // Convert value to degree (-90 to 90) + + needle.style.transform = `rotate(${rotationDegree}deg)`; + gaugeText.textContent = value; // Update the text + } +} \ No newline at end of file diff --git a/web/new website/gauge.js b/web/new website/gauge.js deleted file mode 100644 index 5a6e9cc..0000000 --- a/web/new website/gauge.js +++ /dev/null @@ -1,9 +0,0 @@ -function updateGauge(gaugeId, value) { - const needle = document.getElementById(`needle${gaugeId}`); - const gaugeText = document.getElementById(`gaugeText${gaugeId}`); - const maxGaugeValue = 100; // Maximum value the gauge can display - const rotationDegree = ((value / maxGaugeValue) * 180) - 90; // Convert value to degree (-90 to 90) - - needle.style.transform = `rotate(${rotationDegree}deg)`; - gaugeText.textContent = value; // Update the text -} \ No newline at end of file From e920298df8c267f395c6d05984fa92e79520269c Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 27 Mar 2024 20:48:33 +0100 Subject: [PATCH 074/215] class file change --- web/new website/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/new website/index.html b/web/new website/index.html index e90a2df..d5029a5 100644 --- a/web/new website/index.html +++ b/web/new website/index.html @@ -55,6 +55,6 @@
    - + \ No newline at end of file From d54c0201441dda79a423de8512a294e5144de59f Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 27 Mar 2024 20:48:40 +0100 Subject: [PATCH 075/215] redid styling --- web/new website/style.css | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/web/new website/style.css b/web/new website/style.css index df50097..7598d8e 100644 --- a/web/new website/style.css +++ b/web/new website/style.css @@ -9,10 +9,13 @@ body { height: 100vh; margin: 0; background-color: #f0f0f0; + flex-direction: column; + background-color: #afafaf; + } .gaugeGroup { - width: 70vw; + width: 98vw; height: 20vh; display: flex; flex-direction: column; /* Keep as column */ @@ -22,6 +25,8 @@ body { padding: 10px; border-radius: 50px; border: 2px solid #333; + clear: both; + margin-bottom: 10px; } .groupTitle { width: 100%; @@ -44,7 +49,7 @@ body { justify-content: space-around; flex-wrap: wrap; width: 20%; - height: 100%; + height: 110%; background-color: #ddd; color: #333; padding: 10px; @@ -70,12 +75,13 @@ body { .gaugeImage { width: 100%; height: auto; - max-height: 100%; + max-height: 180%; object-fit: contain; position: absolute; /* Make the image position absolute */ top: 0; left: 0; z-index: 1; /* Make the image display below the needle */ + bottom: 0; } .gaugeValue, .gaugeText { @@ -91,7 +97,7 @@ body { font-size: 24px; z-index: 2; position: absolute; - bottom: -30px; /* Adjust this value to move the text further down */ + bottom: -50px; /* Adjust this value to move the text further down */ } @@ -108,10 +114,10 @@ body { .needle { position: absolute; - margin-bottom: 2%; /* Lower the needle to the bottom */ + bottom: -40%; /* Lower the needle to the bottom */ left: 50%; width: 2px; - height: 70%; + height: 110%; background-color: black; transform-origin: bottom; z-index: 3; /* Make the needle display above the image */ @@ -122,4 +128,5 @@ body { flex-direction: row; /* Layout children side by side */ width: 100%; height: 100%; -} \ No newline at end of file +} + From cbf6cf148434294a0ba65b5d39d78518ec924f70 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 27 Mar 2024 20:52:09 +0100 Subject: [PATCH 076/215] background color --- web/new website/style.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/web/new website/style.css b/web/new website/style.css index 7598d8e..a6830f0 100644 --- a/web/new website/style.css +++ b/web/new website/style.css @@ -48,7 +48,7 @@ body { align-items: center; justify-content: space-around; flex-wrap: wrap; - width: 20%; + width: 15%; height: 110%; background-color: #ddd; color: #333; @@ -82,6 +82,7 @@ body { left: 0; z-index: 1; /* Make the image display below the needle */ bottom: 0; + margin-bottom: 10px; } .gaugeValue, .gaugeText { From f3cd6bd01174c14514d7f0b2b1c20e423465a4c9 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Wed, 27 Mar 2024 22:38:02 +0100 Subject: [PATCH 077/215] Added font --- web/new website/index.html | 3 +++ web/new website/style.css | 3 +++ 2 files changed, 6 insertions(+) diff --git a/web/new website/index.html b/web/new website/index.html index d5029a5..9ee49e7 100644 --- a/web/new website/index.html +++ b/web/new website/index.html @@ -6,6 +6,9 @@ Gauges + + + diff --git a/web/new website/style.css b/web/new website/style.css index a6830f0..bb5fe4b 100644 --- a/web/new website/style.css +++ b/web/new website/style.css @@ -1,5 +1,8 @@ * { box-sizing: border-box; + font-family: "Roboto", sans-serif; + + } body { From 3ecb87a9e4890d601fb425ef2237d40c459953f9 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 00:59:11 +0100 Subject: [PATCH 078/215] fixed it so you can set types as text under the gauges --- web/new website/GaugGroup.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/web/new website/GaugGroup.js b/web/new website/GaugGroup.js index 47434ef..eb795cf 100644 --- a/web/new website/GaugGroup.js +++ b/web/new website/GaugGroup.js @@ -1,8 +1,9 @@ class GaugeGroup { - constructor(nodeId, gaugesCount) { + constructor(nodeId, gaugesCount, maxGaugeValues, dataTypes) { this.nodeId = nodeId; this.gaugesCount = gaugesCount; - this.maxGaugeValue = 100; // Maximum value the gauge can display + this.maxGaugeValues = maxGaugeValues; // Maximum value the gauge can display + this.dataTypes = dataTypes; // Array of data type names for each gauge // Create a new div element this.element = document.createElement("div"); @@ -31,11 +32,16 @@ class GaugeGroup { } updateGauge(gaugeId, value) { + if (!this.maxGaugeValues || gaugeId - 1 < 0 || gaugeId - 1 >= this.maxGaugeValues.length) { + console.error('Invalid gaugeId or maxGaugeValues:', gaugeId, this.maxGaugeValues); + return; + } const needle = document.getElementById(`needle${this.nodeId}_${gaugeId}`); const gaugeText = document.getElementById(`gaugeText${this.nodeId}_${gaugeId}`); - const rotationDegree = ((value / this.maxGaugeValue) * 180) - 90; // Convert value to degree (-90 to 90) + const maxGaugeValue = this.maxGaugeValues[gaugeId - 1]; // Get the maximum value for this gauge + const rotationDegree = ((value / maxGaugeValue) * 180) - 90; // Convert value to degree (-90 to 90) needle.style.transform = `rotate(${rotationDegree}deg)`; - gaugeText.textContent = value; // Update the text + gaugeText.textContent = `${this.dataTypes[gaugeId - 1]}: ${value}`; // Update the text with data type } } \ No newline at end of file From 9ddcfe88f5d28f1bf925f07b34506e8c4ec8d09e Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 00:59:18 +0100 Subject: [PATCH 079/215] Added navbar --- web/new website/index.html | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/web/new website/index.html b/web/new website/index.html index 9ee49e7..df8b57f 100644 --- a/web/new website/index.html +++ b/web/new website/index.html @@ -11,6 +11,21 @@ +
    + +

    Gauge Group

    @@ -58,6 +73,7 @@
    + \ No newline at end of file From 883460cdaa95b6fd3bda0400f37d5570ab680e93 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 00:59:30 +0100 Subject: [PATCH 080/215] better scaling + styling --- web/new website/style.css | 42 ++++++++++++++++++++++++++++++++++----- 1 file changed, 37 insertions(+), 5 deletions(-) diff --git a/web/new website/style.css b/web/new website/style.css index bb5fe4b..22e25b4 100644 --- a/web/new website/style.css +++ b/web/new website/style.css @@ -30,6 +30,8 @@ body { border: 2px solid #333; clear: both; margin-bottom: 10px; + position: relative; + top: -20vh; } .groupTitle { width: 100%; @@ -56,11 +58,11 @@ body { background-color: #ddd; color: #333; padding: 10px; - margin: 5px; + margin: 10px; border-radius: 10px; text-align: center; position: relative; - padding-bottom: 50px; /* Increase bottom padding */ + padding-bottom: 6vh; /* Increase bottom padding */ } @@ -78,7 +80,7 @@ body { .gaugeImage { width: 100%; height: auto; - max-height: 180%; + max-height: 200%; object-fit: contain; position: absolute; /* Make the image position absolute */ top: 0; @@ -98,10 +100,10 @@ body { .gaugeText { width: 100%; text-align: center; - font-size: 24px; + font-size: 1.4vw; z-index: 2; position: absolute; - bottom: -50px; /* Adjust this value to move the text further down */ + bottom: -3.2vw; /* Adjust this value to move the text further down */ } @@ -134,3 +136,33 @@ body { height: 100%; } +.navbar { + background-color: #333; + height: 60px; + display: flex; + align-items: center; + padding: 0 20px; + position: fixed; /* Fix the navbar at the top of the page */ + top: 0; /* Position it at the very top */ + width: 100%; /* Make it span the full width of the page */ + z-index: 1000; /* Make sure it's above all other elements */ +} + +.navbar-nav { + list-style: none; + display: flex; + align-items: center; + justify-content: center; /* Center the links horizontally */ + height: 100%; + width: 100%; /* Make it span the full width of the navbar */ +} + +.nav-item { + margin-right: 20px; +} + +.nav-link { + color: #fff; + text-decoration: none; + font-size: 18px; +} \ No newline at end of file From 627af72f0f4a5cd1650531586dc3d07fa5ac4ebd Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 00:59:43 +0100 Subject: [PATCH 081/215] Added websocket script and modified it to work with the class --- web/new website/main.js | 115 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 web/new website/main.js diff --git a/web/new website/main.js b/web/new website/main.js new file mode 100644 index 0000000..b877136 --- /dev/null +++ b/web/new website/main.js @@ -0,0 +1,115 @@ +// Description: Main JavaScript file for the web application. +// arrays and stuff +const sensorData = {}; +let liveGraphs = []; +let nodeArray = []; +let nodeDict = {}; + +// letiables +let intervalDelay = 5000; +let amountOfNodes = 3; + +const socket = new WebSocket("ws://145.92.8.114/ws"); +function openConnection() { + // Open connection + socket.addEventListener("open", (event) => { + console.log("Connected to the WebSocket server"); + }); + + // Error handling + socket.addEventListener('error', (event) => { + console.error('WebSocket error:', event); + // Attempt to reconnect + setTimeout(openConnection, 1000); // Retry after 1 second + }); + + // Message handling + socket.addEventListener("message", (event) => { + try { + const jsonData = JSON.parse(event.data); + // Use the parsed JSON data as needed + handleIncomingData(jsonData); + + } catch (error) { + console.error("Error parsing JSON:", error); + } + }); + + // Close handling + socket.addEventListener('close', (event) => { + console.log('Connection closed'); + // Attempt to reconnect + setTimeout(openConnection, 1000); // Retry after 1 second + }); + console.log("Connected to the WebSocket server"); +} + +openConnection(); + +function handleIncomingData(data) { + if (!data.node || !data.Temp || !data.Humi || !data.eCO2 || !data.TVOC) { + console.error('Invalid data received:', data); + return; + } + + nodeAdressHandler(data.node, Object.keys(data).filter(key => key !== 'node')); + + nodeNumber = nodeDict[data.node]; + temperature = data.Temp; + humidity = data.Humi; + CO2 = data.eCO2; + TVOC = data.TVOC; + + // Update the gauges with the new data + sensorData[data.node].updateGauge(1, temperature); + sensorData[data.node].updateGauge(2, humidity); + sensorData[data.node].updateGauge(3, CO2); + sensorData[data.node].updateGauge(4, TVOC); +} + +function nodeAdressHandler(node, dataTypes) { + if (!nodeArray.includes(node)) { + nodeArray.push(node); + nodeDict[node] = nodeArray.length; + + // Define the maximum values for each data type + let maxGaugeValues = dataTypes.map(dataType => { + switch (dataType) { + case 'Temp': return 50; + case 'Humi': return 100; + case 'eCO2': return 3000; + case 'TVOC': return 2200; + default: return 100; + } + }); + + // Create a new GaugeGroup for the node + let gaugeGroup = new GaugeGroup(node, dataTypes.length, maxGaugeValues, dataTypes); + + // Store the GaugeGroup in the sensorData object for later use + sensorData[node] = gaugeGroup; + } +} + +function createGauge(node, dataType) { + // Create a new gauge here + let gauge = new GaugeGroup(node, dataType); // Assuming Gauge is the name of the class + sensorData[node][dataType] = gauge; // Store the gauge in the sensorData object for later use +} + + +//function for making the html elements for the following html code +function nodeData(data) { + let nodeData = document.createElement("div"); + nodeData.innerHTML = data; + // nodeData.setAttribute("id", "node" + node); + document.body.appendChild(nodeData); + // console.log("Hello World"); +} + + +function updateGauge(nodeNumber, dataType, value) { + // Update the gauge here + let gauge = sensorData[nodeNumber][dataType]; // Get the gauge from the sensorData object + gauge.update(value); // Assuming the Gauge class has an update method + } \ No newline at end of file From 778c47fa68506fde0414404136e4235325655b58 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 01:03:42 +0100 Subject: [PATCH 082/215] Added pages --- docs/.pages | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/.pages b/docs/.pages index 346a632..0e931bc 100644 --- a/docs/.pages +++ b/docs/.pages @@ -28,6 +28,7 @@ nav: - Infrastructure: brainstorm/UML-infrastructure - Taskflow: brainstorm/Taskflow - Design: Sp1SchetsProject/FirstDesign + - Interview facility manager: brainstorm/bebouwBeheer.md - šŸ–Øļø Software: - Dev page: brainstorm/SoftwareDocumentatie/Dev_page \ No newline at end of file From ba96a81d3fc23fa27f88a9fad16649d3ddda0335 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 01:08:09 +0100 Subject: [PATCH 083/215] Rephrasing --- docs/brainstorm/bebouwBeheer.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/brainstorm/bebouwBeheer.md b/docs/brainstorm/bebouwBeheer.md index 45891bc..e69a5e4 100644 --- a/docs/brainstorm/bebouwBeheer.md +++ b/docs/brainstorm/bebouwBeheer.md @@ -9,4 +9,4 @@ ## Feedback: -building management had some good feedback points about the page itself, about the idea, and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the building management people are technically active, to put it that way. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make it vandalizing students proof. \ No newline at end of file +Facility management had some good feedback points about the page itself, about the idea and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us so we can compare it to our own sensors. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design we had in figma where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the facility management people are very technical. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make sure it doesnt get vandalized. \ No newline at end of file From e5348f0ffa5adba7c895d8779e8bede814ed226f Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 01:10:44 +0100 Subject: [PATCH 084/215] conclusion --- docs/brainstorm/bebouwBeheer.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/brainstorm/bebouwBeheer.md b/docs/brainstorm/bebouwBeheer.md index e69a5e4..376fcbe 100644 --- a/docs/brainstorm/bebouwBeheer.md +++ b/docs/brainstorm/bebouwBeheer.md @@ -9,4 +9,7 @@ ## Feedback: -Facility management had some good feedback points about the page itself, about the idea and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us so we can compare it to our own sensors. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design we had in figma where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the facility management people are very technical. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make sure it doesnt get vandalized. \ No newline at end of file +Facility management had some good feedback points about the page itself, about the idea and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us so we can compare it to our own sensors. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design we had in figma where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the facility management people are very technical. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make sure it doesnt get vandalized. + +## Conclusion +Facility management thought it was a good and interesting project. They wanna actively help us with the data they are already measuring and they had some good feedback points about the website and the node itself. They also had some good questions about the node itself that we need to look into. For example how are we are going to make sure it doesnt get vandalized. Furthermore they had good feedback on the website and they preffered our figma design over our current design and we needed to make the website dummy proof so everyone can use it even without technical knowledge. \ No newline at end of file From f788580ef4ca2bd97faf5c61c562dfe75b0021bd Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 01:14:49 +0100 Subject: [PATCH 085/215] added answers --- docs/brainstorm/bebouwBeheer.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/brainstorm/bebouwBeheer.md b/docs/brainstorm/bebouwBeheer.md index 376fcbe..329db3e 100644 --- a/docs/brainstorm/bebouwBeheer.md +++ b/docs/brainstorm/bebouwBeheer.md @@ -7,6 +7,12 @@ 3. Do they think they can work with the incomming feedback from the enquete? 4. Design of the node? (plastic or wood) +## Answers +1. The current page is a bit too techincal and a bit unorganized. you couldnt tell that there is a new node added to the page. They also said that we needed to point out that there is another node connected for example start with half the ui of that specific node at the bottom of the screen. +2. They expect a page that is easy to use and dummy proof. +3. They think they can work with the incomming feedback from the enquete. And they thought it was a good idea to measure things that sensors cant measure for example peoples opinions. +4. plastic is better because it is easier to clean and it is more durable. It also looks nicer on the wall, it blends in better. + ## Feedback: Facility management had some good feedback points about the page itself, about the idea and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us so we can compare it to our own sensors. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design we had in figma where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the facility management people are very technical. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make sure it doesnt get vandalized. From e7597d8d1f6ede1b6bed68e5987c99e002e294aa Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 01:16:15 +0100 Subject: [PATCH 086/215] name change --- docs/brainstorm/{bebouwBeheer.md => gebouwBeheer.md} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename docs/brainstorm/{bebouwBeheer.md => gebouwBeheer.md} (99%) diff --git a/docs/brainstorm/bebouwBeheer.md b/docs/brainstorm/gebouwBeheer.md similarity index 99% rename from docs/brainstorm/bebouwBeheer.md rename to docs/brainstorm/gebouwBeheer.md index 329db3e..9eeb254 100644 --- a/docs/brainstorm/bebouwBeheer.md +++ b/docs/brainstorm/gebouwBeheer.md @@ -18,4 +18,4 @@ Facility management had some good feedback points about the page itself, about the idea and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us so we can compare it to our own sensors. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design we had in figma where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the facility management people are very technical. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make sure it doesnt get vandalized. ## Conclusion -Facility management thought it was a good and interesting project. They wanna actively help us with the data they are already measuring and they had some good feedback points about the website and the node itself. They also had some good questions about the node itself that we need to look into. For example how are we are going to make sure it doesnt get vandalized. Furthermore they had good feedback on the website and they preffered our figma design over our current design and we needed to make the website dummy proof so everyone can use it even without technical knowledge. \ No newline at end of file +Facility management thought it was a good and interesting project. They wanna actively help us with the data they are already measuring and they had some good feedback points about the website and the node itself. They also had some good questions about the node itself that we need to look into. For example how are we are going to make sure it doesnt get vandalized. Furthermore they had good feedback on the website and they preffered our figma design over our current design and we needed to make the website dummy proof so everyone can use it even without technical knowledge. From c6f3c7c0186e839b57759d69018c9422d56ced51 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 13:32:08 +0100 Subject: [PATCH 087/215] fixed screen code + added some documentation on our choices --- .../Screen-code-full/displayText.cpp | 66 ++++++++++++++----- .../Screen-code-full/displayText.h | 2 +- docs/node-documentation/TFT-screen.md | 6 ++ 3 files changed, 55 insertions(+), 19 deletions(-) diff --git a/arduino/Screen code/Screen-code-full/displayText.cpp b/arduino/Screen code/Screen-code-full/displayText.cpp index 6c12cab..88dfd70 100644 --- a/arduino/Screen code/Screen-code-full/displayText.cpp +++ b/arduino/Screen code/Screen-code-full/displayText.cpp @@ -16,7 +16,7 @@ void DisplayText::writeText(char* text, int size, int posX, int posY, int screen // } tft.setCursor(posX, posY); tft.setTextSize(size); - printWordsFull(text); + printWordsFull(text, bottom); delay(screenTime); } @@ -39,38 +39,68 @@ int DisplayText::centerText(char* text) { // } //attempt to write the text out in full (wip) -void DisplayText::printWordsFull(char* text) { - const int screenWidth = 320; // replace with your TFT display width - const int lineHeight = 22; // replace with your text line height - - char* word = strtok(text, " "); +void DisplayText::printWordsFull(char* text, bool bottom) { + const int screenWidth = 480; // replace with your TFT display width + const int lineHeight = 30; // replace with your text line height + //the double copy is needed so it doesnt alter the original text + char* newtext1 = strdup(text); // Create a copy of the string for the first strtok_r + char* newtext2 = strdup(text); // Create a second copy for the second strtok_r + char* saveptr1, *saveptr2; + char* word = strtok_r(newtext1, " ", &saveptr1); char line[100] = ""; int lineCount = 0; + int lineWidth = 0; - while (word != NULL) { - char tempLine[100]; - strcpy(tempLine, line); - strcat(tempLine, word); - strcat(tempLine, " "); - + // Calculate total number of lines + int totalLines = 0; + char* tempWord = strtok_r(newtext2, " ", &saveptr2); + while (tempWord != NULL) { int16_t x1, y1; uint16_t w, h; - tft.getTextBounds(tempLine, 0, 0, &x1, &y1, &w, &h); + tft.getTextBounds(tempWord, 0, 0, &x1, &y1, &w, &h); + if (lineWidth + w > screenWidth && strlen(line) > 0) { + //if the line width is greater than the screen width, then we need to add a new line + totalLines++; + lineWidth = w; + //otherwise we just add the width of the word to the line width + } else { + lineWidth += w; + } + tempWord = strtok_r(NULL, " ", &saveptr2); + } + totalLines++; // Add one for the last line - if (w > screenWidth && strlen(line) > 0) { - tft.setCursor(0, lineHeight * lineCount); + // Reset variables for actual printing + strcpy(line, ""); + lineWidth = 0; + + while (word != NULL) { + int16_t x1, y1; + uint16_t w, h; + tft.getTextBounds(word, 0, 0, &x1, &y1, &w, &h); + + if (lineWidth + w > screenWidth && strlen(line) > 0) { + int y = bottom ? tft.height() - lineHeight * (totalLines - lineCount) : lineHeight * lineCount; + tft.setCursor(0, y); tft.println(line); lineCount++; strcpy(line, word); strcat(line, " "); + lineWidth = w; } else { - strcpy(line, tempLine); + strcat(line, word); + strcat(line, " "); + lineWidth += w; } - word = strtok(NULL, " "); + word = strtok_r(NULL, " ", &saveptr1); } // print the last line - tft.setCursor(0, lineHeight * lineCount); + int y = bottom ? tft.height() - lineHeight * (totalLines - lineCount) : lineHeight * lineCount; + tft.setCursor(0, y); tft.println(line); + + free(newtext1); // Free the memory allocated by strdup + free(newtext2); // Free the memory allocated by strdup } \ No newline at end of file diff --git a/arduino/Screen code/Screen-code-full/displayText.h b/arduino/Screen code/Screen-code-full/displayText.h index a29b070..9888068 100644 --- a/arduino/Screen code/Screen-code-full/displayText.h +++ b/arduino/Screen code/Screen-code-full/displayText.h @@ -9,7 +9,7 @@ class DisplayText { Adafruit_ST7796S_kbv& tft; int centerText(char* text); // int bottomText(char* text); - void printWordsFull(char* text); + void printWordsFull(char* text, bool bottom); public: DisplayText(Adafruit_ST7796S_kbv& tftDisplay); diff --git a/docs/node-documentation/TFT-screen.md b/docs/node-documentation/TFT-screen.md index 1b4c733..02ab967 100644 --- a/docs/node-documentation/TFT-screen.md +++ b/docs/node-documentation/TFT-screen.md @@ -99,6 +99,12 @@ class Adafruit_ST7796S_kbv{ } ``` + +## Why did we choose for this screen? + +We chose the screen too fast without going over all the functions and researching what we actually needed. For example we aren't using the touchscreen function of the screen so we could've gotten a different screen without touchscreen. We've attempted to use a screen for the raspberry pi with some pin headers on it but we couldn't get it to work with the esp32. We wanted to have a bigger screen than the small oled screens we already have because it isn't nice to read from and you need to get up close to see what it displays. With a bigger screen thats less of a issue. After the purchase we did some more research for screens but the bottomline was this was the best one we could get because there aren't screens that are this big without touchscreen. + + ## Sources * https://www.tinytronics.nl/en/displays/tft/4-inch-tft-display-320*480-pixels-with-touchscreen-spi-st7796s Source for Driver * https://github.com/prenticedavid/Adafruit_ST7796S_kbv Download link for the library From 1c13d20b492a168ddb70ee949c53a0f35036fa22 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 13:32:22 +0100 Subject: [PATCH 088/215] added location and nodename --- web/new website/GaugGroup.js | 6 +-- web/new website/main.js | 98 ++++++++++++++++++++---------------- 2 files changed, 59 insertions(+), 45 deletions(-) diff --git a/web/new website/GaugGroup.js b/web/new website/GaugGroup.js index eb795cf..fc214fc 100644 --- a/web/new website/GaugGroup.js +++ b/web/new website/GaugGroup.js @@ -1,17 +1,17 @@ class GaugeGroup { - constructor(nodeId, gaugesCount, maxGaugeValues, dataTypes) { + constructor(nodeId, Location, gaugesCount, maxGaugeValues, dataTypes) { this.nodeId = nodeId; this.gaugesCount = gaugesCount; this.maxGaugeValues = maxGaugeValues; // Maximum value the gauge can display this.dataTypes = dataTypes; // Array of data type names for each gauge - + this.location = Location; // Create a new div element this.element = document.createElement("div"); this.element.className = "gaugeGroup"; // Set the HTML of the new div this.element.innerHTML = ` -

    Gauge Group for Node ${this.nodeId}

    +

    ${this.nodeId} - ${this.location}

    ${Array(this.gaugesCount).fill().map((_, i) => `
    diff --git a/web/new website/main.js b/web/new website/main.js index b877136..e3e855c 100644 --- a/web/new website/main.js +++ b/web/new website/main.js @@ -46,49 +46,52 @@ function openConnection() { openConnection(); -function handleIncomingData(data) { - if (!data.node || !data.Temp || !data.Humi || !data.eCO2 || !data.TVOC) { - console.error('Invalid data received:', data); - return; - } - - nodeAdressHandler(data.node, Object.keys(data).filter(key => key !== 'node')); - - nodeNumber = nodeDict[data.node]; - temperature = data.Temp; - humidity = data.Humi; - CO2 = data.eCO2; - TVOC = data.TVOC; - - // Update the gauges with the new data - sensorData[data.node].updateGauge(1, temperature); - sensorData[data.node].updateGauge(2, humidity); - sensorData[data.node].updateGauge(3, CO2); - sensorData[data.node].updateGauge(4, TVOC); +async function handleIncomingData(data) { + if (!data.node || !data.Temp || !data.Humi || !data.eCO2 || !data.TVOC) { + console.error('Invalid data received:', data); + return; + } + + await nodeAdressHandler(data.node, Object.keys(data).filter(key => key !== 'node')); + + let nodeName = nodeDict[data.node]; + let temperature = data.Temp; + let humidity = data.Humi; + let CO2 = data.eCO2; + let TVOC = data.TVOC; + + // Update the gauges with the new data + if (sensorData[nodeName]) { + sensorData[nodeName].updateGauge(1, temperature); + sensorData[nodeName].updateGauge(2, humidity); + sensorData[nodeName].updateGauge(3, CO2); + sensorData[nodeName].updateGauge(4, TVOC); + } else { + console.error('No sensor data for node:', nodeName); + } } -function nodeAdressHandler(node, dataTypes) { - if (!nodeArray.includes(node)) { - nodeArray.push(node); - nodeDict[node] = nodeArray.length; - - // Define the maximum values for each data type - let maxGaugeValues = dataTypes.map(dataType => { - switch (dataType) { - case 'Temp': return 50; - case 'Humi': return 100; - case 'eCO2': return 3000; - case 'TVOC': return 2200; - default: return 100; - } - }); - - // Create a new GaugeGroup for the node - let gaugeGroup = new GaugeGroup(node, dataTypes.length, maxGaugeValues, dataTypes); - - // Store the GaugeGroup in the sensorData object for later use - sensorData[node] = gaugeGroup; - } +async function nodeAdressHandler(node, dataTypes) { + let nodeInfo = await getNodeInfo(node); + let nodeName = nodeInfo.name; + let nodeLocation = nodeInfo.location; + if (!nodeArray.includes(nodeName)) { + nodeArray.push(nodeName); + nodeDict[node] = nodeName; + + let maxGaugeValues = dataTypes.map(dataType => { + switch (dataType) { + case 'Temp': return 50; + case 'Humi': return 100; + case 'eCO2': return 3000; + case 'TVOC': return 2200; + default: return 100; + } + }); + + let gaugeGroup = new GaugeGroup(nodeName, nodeLocation, dataTypes.length, maxGaugeValues, dataTypes); + sensorData[nodeName] = gaugeGroup; + } } function createGauge(node, dataType) { @@ -112,4 +115,15 @@ function updateGauge(nodeNumber, dataType, value) { // Update the gauge here let gauge = sensorData[nodeNumber][dataType]; // Get the gauge from the sensorData object gauge.update(value); // Assuming the Gauge class has an update method - } \ No newline at end of file + } + +function getNodeInfo(node){ + return fetch("http://145.92.8.114/flask?MAC=" + node) + .then(response => response.json()) + .then(data => { + return { + name: data[0].Name, + location: data[0].Location // Assuming the server returns a Location property + }; + }); +} \ No newline at end of file From 64f9ab24e0778e87e5df384f381b4ba1ddc068f1 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 13:40:04 +0100 Subject: [PATCH 089/215] Added introduction --- docs/brainstorm/gebouwBeheer.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/brainstorm/gebouwBeheer.md b/docs/brainstorm/gebouwBeheer.md index 9eeb254..4fa08c9 100644 --- a/docs/brainstorm/gebouwBeheer.md +++ b/docs/brainstorm/gebouwBeheer.md @@ -1,5 +1,8 @@ # Talk with building management +## Introduction +We interviewed building management so we can clarify what they expect from the project and what they think of the state the project is in right now and if there need to be some adjustments. We also asked them some questions about the website and the node itself and the website. We primaly wanted clarity on what they thought on the website design because they are the ones that are going to use it the most. + ## Questions for building management 1. Design of page? (current page, new design or own idea) @@ -15,7 +18,7 @@ ## Feedback: -Facility management had some good feedback points about the page itself, about the idea and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us so we can compare it to our own sensors. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design we had in figma where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the facility management people are very technical. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make sure it doesnt get vandalized. +Building management had some good feedback points about the page itself, about the idea and some good pointers for the execution. They would also look into making the data they are already measuring accessible for us so we can compare it to our own sensors. The things they had to say about the website are: they found the first design a bit unorganized and said that they would rather see the second design we had in figma where you can select the node you want to see, maybe also a search function to specify the node that is displayed. What also was said was to try to make it idiot-proof because not all of the building management people are very technical. They had some things to say about the node design, like maybe make the color white to make it better with blending into the white walls of the total area. They also asked the question of does it matter at what height the node is placed. One other thing they said was to write something onto the node to make it clear to the people in the area what it was doing, something like ReaderNodeā„¢. And the last thing they said was if we thought about how to make sure it doesnt get vandalized. ## Conclusion -Facility management thought it was a good and interesting project. They wanna actively help us with the data they are already measuring and they had some good feedback points about the website and the node itself. They also had some good questions about the node itself that we need to look into. For example how are we are going to make sure it doesnt get vandalized. Furthermore they had good feedback on the website and they preffered our figma design over our current design and we needed to make the website dummy proof so everyone can use it even without technical knowledge. +Building management thought it was a good and interesting project. They wanna actively help us with the data they are already measuring and they had some good feedback points about the website and the node itself. They also had some good questions about the node itself that we need to look into. For example how are we are going to make sure it doesnt get vandalized. Furthermore they had good feedback on the website and they preffered our figma design over our current design and we needed to make the website dummy proof so everyone can use it even without technical knowledge. From 899d2bb868a1fe159a5df735d6021818d0f6e535 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 14:15:53 +0100 Subject: [PATCH 090/215] removed original gaugecontainer --- web/new website/index.html | 46 -------------------------------------- 1 file changed, 46 deletions(-) diff --git a/web/new website/index.html b/web/new website/index.html index df8b57f..9d98cef 100644 --- a/web/new website/index.html +++ b/web/new website/index.html @@ -27,52 +27,6 @@ -
    -

    Gauge Group

    - -
    -
    -
    - -
    -
    -
    0
    -
    -
    -
    - -
    -
    - -
    -
    -
    0
    -
    -
    -
    - -
    -
    - -
    -
    -
    0
    -
    -
    -
    - -
    -
    - -
    -
    -
    0
    -
    -
    -
    -
    -
    - From d21bae4b192d28dd913fbd01c3c07fd773df0329 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Thu, 28 Mar 2024 15:07:57 +0100 Subject: [PATCH 091/215] fixed scaling --- web/new website/style.css | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/web/new website/style.css b/web/new website/style.css index 22e25b4..3dab72f 100644 --- a/web/new website/style.css +++ b/web/new website/style.css @@ -6,6 +6,7 @@ } body { + padding-top: 5vw; display: flex; justify-content: center; align-items: center; @@ -31,7 +32,7 @@ body { clear: both; margin-bottom: 10px; position: relative; - top: -20vh; + float: top; } .groupTitle { width: 100%; @@ -75,6 +76,7 @@ body { height: 80%; /* Increase the height from 70% to 80% */ position: relative; overflow: visible; + } .gaugeImage { From c6a6ba72f008fb92eda3c8b02327ec4bd3a3aa45 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Fri, 29 Mar 2024 11:40:07 +0100 Subject: [PATCH 092/215] Add new website files and update navigation links --- web/new website/graphs.html | 33 +++++++++++++++++++++++++++++++++ web/new website/index.html | 2 +- web/new website/main.js | 2 +- web/new website/settings.html | 0 4 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 web/new website/graphs.html create mode 100644 web/new website/settings.html diff --git a/web/new website/graphs.html b/web/new website/graphs.html new file mode 100644 index 0000000..b46bf81 --- /dev/null +++ b/web/new website/graphs.html @@ -0,0 +1,33 @@ + + + + + + + + Gauges + + + + + + + + + + + + + \ No newline at end of file diff --git a/web/new website/index.html b/web/new website/index.html index 9d98cef..1e1a5ea 100644 --- a/web/new website/index.html +++ b/web/new website/index.html @@ -17,7 +17,7 @@ Dashboard
    `).join('')} +
    Graphs + @@ -25,9 +26,10 @@ - - +
    + + \ No newline at end of file diff --git a/web/newWebsite/index.html b/web/newWebsite/index.html index 2519ffb..3402076 100644 --- a/web/newWebsite/index.html +++ b/web/newWebsite/index.html @@ -6,6 +6,7 @@ Gauges + @@ -29,5 +30,6 @@ + \ No newline at end of file From 5bf5a193b9d4f5e1a450698afe8eef5c2844d652 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Fri, 29 Mar 2024 15:18:36 +0100 Subject: [PATCH 112/215] Add getQuestionData route --- server/Flask/main.py | 21 ++++++++++++++++++--- server/Flask/queries.py | 7 +++++-- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index c185937..7232c81 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -22,9 +22,13 @@ def getNodeInfoIndex(): macAdress = request.args.get('macAdress', None) return getNodeInfo(macAdress) +@app.route('/getQuestionData') +def getQuestionDataIndex(): + return getQuestionData() + def updateData(node, name, location): mydb = loginDB() - query = update_query(node, name, location) + query = update_query(node, name, location, False, False) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) mydb.commit() @@ -45,7 +49,7 @@ def loginDB(): def getData(node, dataType, MAC): mydb = loginDB() - query = get_query(node, dataType, MAC) + query = get_query(node, dataType, MAC, False, False) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results @@ -56,7 +60,18 @@ def getData(node, dataType, MAC): def getNodeInfo(macAdress): mydb = loginDB() - query = get_query(False, False, macAdress) + query = get_query(False, False, macAdress, False, False) + cursor = mydb.cursor(dictionary=True) # Enable dictionary output + cursor.execute(query) + result = cursor.fetchall() # Fetch the results + cursor.close() + mydb.close() + + return result + +def getQuestionData(): + mydb = loginDB() + query = get_query(False, False, False, True, False) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results diff --git a/server/Flask/queries.py b/server/Flask/queries.py index e2da308..dda5ff9 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -1,4 +1,4 @@ -def get_query(node, dataType, MAC): +def get_query(node, dataType, MAC, questionID, replies): if node and dataType: query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" elif node: @@ -7,12 +7,15 @@ def get_query(node, dataType, MAC): query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'" elif MAC: query = f"SELECT * FROM Node WHERE MAC = '{MAC}'" + elif questionID: + query = f"SELECT * FROM Question" + elif replies: + query = f"SELECT * FROM Reply WHERE QuestionID = '{questionID}'" else: query = "SELECT * FROM `Measurement`" return query - def update_query(node, name, location): if node and name and location: query = f""" From 0db496fb726ee454f3fe96cc6ce515a94bfaec80 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Fri, 29 Mar 2024 15:39:48 +0100 Subject: [PATCH 113/215] Refactor queries.py to improve query selection logic --- server/Flask/queries.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/Flask/queries.py b/server/Flask/queries.py index dda5ff9..cd85146 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -7,10 +7,10 @@ def get_query(node, dataType, MAC, questionID, replies): query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'" elif MAC: query = f"SELECT * FROM Node WHERE MAC = '{MAC}'" + elif replies and questionID: + query = f"SELECT * FROM Reply WHERE QuestionID = '{questionID}'" elif questionID: query = f"SELECT * FROM Question" - elif replies: - query = f"SELECT * FROM Reply WHERE QuestionID = '{questionID}'" else: query = "SELECT * FROM `Measurement`" return query From 26b35036ec737e740af805963a0a789242b3bb74 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Fri, 29 Mar 2024 16:16:08 +0100 Subject: [PATCH 114/215] Added graph --- web/newWebsite/GaugGroup.js | 4 +++- web/newWebsite/index.html | 1 + web/newWebsite/main.js | 8 ++++++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/web/newWebsite/GaugGroup.js b/web/newWebsite/GaugGroup.js index 31da446..8b9e427 100644 --- a/web/newWebsite/GaugGroup.js +++ b/web/newWebsite/GaugGroup.js @@ -24,8 +24,10 @@ class GaugeGroup {
    `).join('')} -
    +
    +
    `; // Append the new div to the body diff --git a/web/newWebsite/index.html b/web/newWebsite/index.html index 52122e5..05f02b7 100644 --- a/web/newWebsite/index.html +++ b/web/newWebsite/index.html @@ -27,6 +27,7 @@ + diff --git a/web/newWebsite/main.js b/web/newWebsite/main.js index a62e059..a97fd96 100644 --- a/web/newWebsite/main.js +++ b/web/newWebsite/main.js @@ -98,9 +98,17 @@ async function nodeAdressHandler(node, dataTypes) { let gaugeGroup = new GaugeGroup(nodeName, nodeLocation, dataTypes.length, maxGaugeValues, dataTypes); sensorData[node] = gaugeGroup; + gaugeGroup.graph = new liveGraph(nodeName); + sensorData[node] = gaugeGroup; + gaugeGroup.graph.makeGraph(); + sensorData[node] = gaugeGroup; + + } } + + function getNodeInfo(node){ return fetch("http://145.92.8.114/getNodeInfo?macAdress=" + node) .then(response => { From 49dc40a2c29a373a807542fdd667506268868ea3 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Fri, 29 Mar 2024 16:25:54 +0100 Subject: [PATCH 115/215] Add data filtering functionality and input elements for user input --- web/newWebsite/graph-main.js | 97 +++++++++++++++++++++++++- web/newWebsite/styles/graph-styles.css | 27 ++++++- 2 files changed, 121 insertions(+), 3 deletions(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 139597f..3eb71ae 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -1,2 +1,95 @@ - - +// Sample data - you can replace this with your actual dataset +const data = [ + { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 25, humidity: 50, eco2: 400, tvoc: 1 }, + { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 26, humidity: 45, eco2: 450, tvoc: 2 }, + { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 24, humidity: 55, eco2: 500, tvoc: 3 }, + { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 27, humidity: 40, eco2: 550, tvoc: 4 }, + { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 23, humidity: 60, eco2: 600, tvoc: 5 }, + { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 25, humidity: 50, eco2: 650, tvoc: 6 } + ]; + + // Function to filter data based on user input + function filterData(data, startDate, endDate, nodes, selectedFields) { + const filteredData = data.filter(item => { + const timestamp = new Date(item.timestamp); + return timestamp >= startDate && timestamp <= endDate && nodes.includes(item.node); + }).map(item => { + const filteredItem = { node: item.node, timestamp: item.timestamp }; + selectedFields.forEach(field => { + filteredItem[field] = item[field]; + }); + return filteredItem; + }); + return filteredData; + } + + // Create HTML input elements for user input + // Include checkboxes for each data field + const temperatureCheckbox = createCheckBox('temperature', 'Temperature'); + const humidityCheckbox = createCheckBox('humidity', 'Humidity'); + const eco2Checkbox = createCheckBox('eco2', 'eCO2'); + const tvocCheckbox = createCheckBox('tvoc', 'TVOC'); + + // Create a checkbox element with label + function createCheckBox(id, label) { + const checkbox = document.createElement('input'); + checkbox.setAttribute('type', 'checkbox'); + checkbox.setAttribute('id', id); + checkbox.setAttribute('class', 'checkbox'); + + const checkboxLabel = document.createElement('label'); + checkboxLabel.setAttribute('for', id); + checkboxLabel.textContent = label; + + return { checkbox, checkboxLabel }; + } + + const startDateInput = document.createElement('input'); + startDateInput.setAttribute('type', 'datetime-local'); + startDateInput.setAttribute('id', 'start-date'); + startDateInput.setAttribute('class', 'input-field'); + + const endDateInput = document.createElement('input'); + endDateInput.setAttribute('type', 'datetime-local'); + endDateInput.setAttribute('id', 'end-date'); + endDateInput.setAttribute('class', 'input-field'); + + const nodeInput = document.createElement('input'); + nodeInput.setAttribute('type', 'text'); + nodeInput.setAttribute('placeholder', 'Enter node (A, B, etc.)'); + nodeInput.setAttribute('id', 'node-input'); + nodeInput.setAttribute('class', 'input-field'); + + const filterButton = document.createElement('button'); + filterButton.textContent = 'Filter Data'; + filterButton.setAttribute('class', 'filter-button'); + filterButton.addEventListener('click', () => { + const startDate = new Date(document.getElementById('start-date').value); + const endDate = new Date(document.getElementById('end-date').value); + const selectedNodes = document.getElementById('node-input').value.split(',').map(node => node.trim()); + + const selectedFields = []; + const checkboxes = [temperatureCheckbox, humidityCheckbox, eco2Checkbox, tvocCheckbox]; + checkboxes.forEach(checkbox => { + if (checkbox.checkbox.checked) { + selectedFields.push(checkbox.checkbox.id); + } + }); + + const filteredData = filterData(data, startDate, endDate, selectedNodes, selectedFields); + console.log(filteredData); + }); + + // Append input elements to the document body + document.body.appendChild(startDateInput); + document.body.appendChild(endDateInput); + document.body.appendChild(nodeInput); + document.body.appendChild(temperatureCheckbox.checkbox); + document.body.appendChild(temperatureCheckbox.checkboxLabel); + document.body.appendChild(humidityCheckbox.checkbox); + document.body.appendChild(humidityCheckbox.checkboxLabel); + document.body.appendChild(eco2Checkbox.checkbox); + document.body.appendChild(eco2Checkbox.checkboxLabel); + document.body.appendChild(tvocCheckbox.checkbox); + document.body.appendChild(tvocCheckbox.checkboxLabel); + document.body.appendChild(filterButton); \ No newline at end of file diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index 8ad355d..ec79d48 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -165,4 +165,29 @@ body { color: #fff; text-decoration: none; font-size: 18px; -} \ No newline at end of file +} + +.input-field { + margin: 10px; + padding: 5px; + border: 1px solid #ccc; + border-radius: 5px; + } + + .checkbox { + margin-right: 5px; + } + + .filter-button { + margin: 10px; + padding: 5px 10px; + background-color: #007bff; + color: #fff; + border: none; + border-radius: 5px; + cursor: pointer; + } + + .filter-button:hover { + background-color: #0056b3; + } \ No newline at end of file From 09e3d7020ef8398af8adfeaadc759d75c5c57ea7 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Fri, 29 Mar 2024 19:36:07 +0100 Subject: [PATCH 116/215] moved navbar into body --- web/newWebsite/index.html | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/web/newWebsite/index.html b/web/newWebsite/index.html index 05f02b7..854fcd6 100644 --- a/web/newWebsite/index.html +++ b/web/newWebsite/index.html @@ -11,22 +11,23 @@ -
    + + From 0666b21bc57b2799a7d9cad5a19a3c616d952ef3 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Fri, 29 Mar 2024 19:36:12 +0100 Subject: [PATCH 117/215] styling --- web/newWebsite/styles/dashboard-styles.css | 25 ++++++++++++++++------ 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 2985720..190586e 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -6,21 +6,20 @@ } body { - padding-top: 5vw; display: flex; justify-content: center; - align-items: center; - height: 100vh; margin: 0; + margin-top: 8vh; background-color: #f0f0f0; flex-direction: column; background-color: #afafaf; + align-items: center; } .gaugeGroup { width: 98vw; - height: 20vh; + height: auto; display: flex; flex-direction: column; /* Keep as column */ justify-content: flex-start; @@ -32,8 +31,8 @@ body { clear: both; margin-bottom: 10px; position: relative; - float: top; } + .groupTitle { width: 100%; text-align: center; @@ -76,7 +75,9 @@ body { height: 80%; /* Increase the height from 70% to 80% */ position: relative; overflow: visible; - + height: 5vh; + margin-bottom: 1vh; + } .gaugeImage { @@ -89,7 +90,6 @@ body { left: 0; z-index: 1; /* Make the image display below the needle */ bottom: 0; - margin-bottom: 10px; } .gaugeValue, .gaugeText { @@ -179,4 +179,15 @@ body { color: #fff; text-decoration: none; font-size: 18px; +} + +.plotly-container { + + float: bottom; + margin: auto; + padding: 1vw; + align-items: center; + justify-content: center; + display: flex; + width: 20vw; } \ No newline at end of file From 9ac39ff74f77e98c534c59f989b7e5ae58bae484 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Sat, 30 Mar 2024 12:38:13 +0100 Subject: [PATCH 118/215] removed junk --- web/newWebsite/liveGraph.js | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/web/newWebsite/liveGraph.js b/web/newWebsite/liveGraph.js index e2aac1d..6668620 100644 --- a/web/newWebsite/liveGraph.js +++ b/web/newWebsite/liveGraph.js @@ -54,15 +54,16 @@ class liveGraph { } // Function to update the graph with new values got from updateData function - updateGraph() { + updateGraph(temperature, humidity, eCO2, TVOC) { + // Update the graph + this.tempArray.push(temperature); + this.humiArray.push(humidity); + this.eco2Array.push(eCO2 / 10); + this.tvocArray.push(TVOC / 10); + let time = new Date(); this.timeArray.push(new Date()); - let update = { - x: [[this.timeArray]], - y: [[this.tempArray], [this.humiArray], [this.eco2Array], [this.tvocArray]] - }; - let olderTime = time.setMinutes(time.getMinutes() - 1); let futureTime = time.setMinutes(time.getMinutes() + 1); let minuteView = { @@ -75,11 +76,4 @@ class liveGraph { if (this.cnt === 10) clearInterval(interval); } // function to get the new data for graph - updateData(temperature, humidity, eCO2, TVOC) { - // Update the graph - this.tempArray.push(temperature); - this.humiArray.push(humidity); - this.eco2Array.push(eCO2 / 10); - this.tvocArray.push(TVOC / 10); - } } \ No newline at end of file From 92b27ab9b7749d9989536ec41534d7c8ce005483 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Sat, 30 Mar 2024 12:38:20 +0100 Subject: [PATCH 119/215] graph works now --- web/newWebsite/main.js | 2 +- web/newWebsite/styles/dashboard-styles.css | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/web/newWebsite/main.js b/web/newWebsite/main.js index a97fd96..d55fb12 100644 --- a/web/newWebsite/main.js +++ b/web/newWebsite/main.js @@ -66,6 +66,7 @@ async function handleIncomingData(data) { sensorData[data.node].updateGauge(2, humidity); sensorData[data.node].updateGauge(3, CO2); sensorData[data.node].updateGauge(4, TVOC); + sensorData[data.node].graph.updateGraph(temperature, humidity, CO2, TVOC); } else { console.error('No sensor data for node:', nodeName); } @@ -102,7 +103,6 @@ async function nodeAdressHandler(node, dataTypes) { sensorData[node] = gaugeGroup; gaugeGroup.graph.makeGraph(); sensorData[node] = gaugeGroup; - } } diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 190586e..0758c94 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -190,4 +190,6 @@ body { justify-content: center; display: flex; width: 20vw; + z-index: -0; + height: -; } \ No newline at end of file From 3e7a89bf8b8e98665a5b39ea32d5d5995b9e403c Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Sat, 30 Mar 2024 17:22:55 +0100 Subject: [PATCH 120/215] Added togglegraph function --- web/newWebsite/main.js | 15 ++++++++++++++- web/newWebsite/styles/dashboard-styles.css | 7 ++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/web/newWebsite/main.js b/web/newWebsite/main.js index d55fb12..c5e1486 100644 --- a/web/newWebsite/main.js +++ b/web/newWebsite/main.js @@ -103,7 +103,6 @@ async function nodeAdressHandler(node, dataTypes) { sensorData[node] = gaugeGroup; gaugeGroup.graph.makeGraph(); sensorData[node] = gaugeGroup; - } } @@ -129,3 +128,17 @@ function getNodeInfo(node){ } +// create a function to enable and disable the graph using .disabled using the id of the graph +function toggleGraph(nodeId) { + let graph = document.querySelector('#liveGraph' + nodeId); + + if (graph) { + if (graph.classList.contains('disabled')) { + graph.classList.remove('disabled'); + } else { + graph.classList.add('disabled'); + } + } else { + console.error('No element found with id: liveGraph' + nodeId); + } +} \ No newline at end of file diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 0758c94..d550f41 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -191,5 +191,10 @@ body { display: flex; width: 20vw; z-index: -0; - height: -; + +} +* +.disabled { + opacity: 0; + height: 0; } \ No newline at end of file From 02b32c33ea7a958f18eec8b344836529f6abeaae Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Sat, 30 Mar 2024 17:31:41 +0100 Subject: [PATCH 121/215] made dropdown graph --- web/newWebsite/GaugGroup.js | 3 ++- web/newWebsite/styles/dashboard-styles.css | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/web/newWebsite/GaugGroup.js b/web/newWebsite/GaugGroup.js index 8b9e427..cf3c1f4 100644 --- a/web/newWebsite/GaugGroup.js +++ b/web/newWebsite/GaugGroup.js @@ -13,6 +13,7 @@ class GaugeGroup { this.element.innerHTML = `

    ${this.nodeId} - ${this.location}

    + ${Array(this.gaugesCount).fill().map((_, i) => `
    @@ -26,7 +27,7 @@ class GaugeGroup { `).join('')}
    -
    +
    `; diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index d550f41..e4e367a 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -190,11 +190,11 @@ body { justify-content: center; display: flex; width: 20vw; - z-index: -0; } * .disabled { opacity: 0; height: 0; + } \ No newline at end of file From 79c3c956fe729207c15c9b8667c25337d6843428 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sat, 30 Mar 2024 20:43:51 +0100 Subject: [PATCH 122/215] Update graph styles and input field margins --- web/newWebsite/graph-main.js | 188 +++++++++++++------------ web/newWebsite/styles/graph-styles.css | 24 +++- 2 files changed, 118 insertions(+), 94 deletions(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 3eb71ae..eadfb77 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -1,95 +1,99 @@ // Sample data - you can replace this with your actual dataset const data = [ - { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 25, humidity: 50, eco2: 400, tvoc: 1 }, - { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 26, humidity: 45, eco2: 450, tvoc: 2 }, - { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 24, humidity: 55, eco2: 500, tvoc: 3 }, - { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 27, humidity: 40, eco2: 550, tvoc: 4 }, - { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 23, humidity: 60, eco2: 600, tvoc: 5 }, - { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 25, humidity: 50, eco2: 650, tvoc: 6 } - ]; - - // Function to filter data based on user input - function filterData(data, startDate, endDate, nodes, selectedFields) { - const filteredData = data.filter(item => { - const timestamp = new Date(item.timestamp); - return timestamp >= startDate && timestamp <= endDate && nodes.includes(item.node); - }).map(item => { - const filteredItem = { node: item.node, timestamp: item.timestamp }; - selectedFields.forEach(field => { - filteredItem[field] = item[field]; - }); - return filteredItem; - }); - return filteredData; - } - - // Create HTML input elements for user input - // Include checkboxes for each data field - const temperatureCheckbox = createCheckBox('temperature', 'Temperature'); - const humidityCheckbox = createCheckBox('humidity', 'Humidity'); - const eco2Checkbox = createCheckBox('eco2', 'eCO2'); - const tvocCheckbox = createCheckBox('tvoc', 'TVOC'); - - // Create a checkbox element with label - function createCheckBox(id, label) { - const checkbox = document.createElement('input'); - checkbox.setAttribute('type', 'checkbox'); - checkbox.setAttribute('id', id); - checkbox.setAttribute('class', 'checkbox'); - - const checkboxLabel = document.createElement('label'); - checkboxLabel.setAttribute('for', id); - checkboxLabel.textContent = label; - - return { checkbox, checkboxLabel }; - } - - const startDateInput = document.createElement('input'); - startDateInput.setAttribute('type', 'datetime-local'); - startDateInput.setAttribute('id', 'start-date'); - startDateInput.setAttribute('class', 'input-field'); - - const endDateInput = document.createElement('input'); - endDateInput.setAttribute('type', 'datetime-local'); - endDateInput.setAttribute('id', 'end-date'); - endDateInput.setAttribute('class', 'input-field'); - - const nodeInput = document.createElement('input'); - nodeInput.setAttribute('type', 'text'); - nodeInput.setAttribute('placeholder', 'Enter node (A, B, etc.)'); - nodeInput.setAttribute('id', 'node-input'); - nodeInput.setAttribute('class', 'input-field'); - - const filterButton = document.createElement('button'); - filterButton.textContent = 'Filter Data'; - filterButton.setAttribute('class', 'filter-button'); - filterButton.addEventListener('click', () => { - const startDate = new Date(document.getElementById('start-date').value); - const endDate = new Date(document.getElementById('end-date').value); - const selectedNodes = document.getElementById('node-input').value.split(',').map(node => node.trim()); - - const selectedFields = []; - const checkboxes = [temperatureCheckbox, humidityCheckbox, eco2Checkbox, tvocCheckbox]; - checkboxes.forEach(checkbox => { - if (checkbox.checkbox.checked) { - selectedFields.push(checkbox.checkbox.id); - } - }); - - const filteredData = filterData(data, startDate, endDate, selectedNodes, selectedFields); - console.log(filteredData); + { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 25, humidity: 50, eco2: 400, tvoc: 1 }, + { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 26, humidity: 45, eco2: 450, tvoc: 2 }, + { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 24, humidity: 55, eco2: 500, tvoc: 3 }, + { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 27, humidity: 40, eco2: 550, tvoc: 4 }, + { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 23, humidity: 60, eco2: 600, tvoc: 5 }, + { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 25, humidity: 50, eco2: 650, tvoc: 6 } +]; + +// Function to create checkbox with label +function createCheckBox(id, label) { + const checkbox = document.createElement('input'); + checkbox.setAttribute('type', 'checkbox'); + checkbox.setAttribute('id', id); + checkbox.setAttribute('class', 'checkbox'); + + const checkboxLabel = document.createElement('label'); + checkboxLabel.setAttribute('for', id); + checkboxLabel.textContent = label; + + return { checkbox, checkboxLabel }; +} + +// Create HTML input elements for user input +const container = document.createElement('div'); +container.setAttribute('class', 'container'); + +const dataTypesContainer = document.createElement('div'); +dataTypesContainer.setAttribute('class', 'data-types'); + +const temperatureCheckbox = createCheckBox('temperature', 'Temperature'); +const humidityCheckbox = createCheckBox('humidity', 'Humidity'); +const eco2Checkbox = createCheckBox('eco2', 'eCO2'); +const tvocCheckbox = createCheckBox('tvoc', 'TVOC'); + +dataTypesContainer.appendChild(temperatureCheckbox.checkbox); +dataTypesContainer.appendChild(temperatureCheckbox.checkboxLabel); +dataTypesContainer.appendChild(humidityCheckbox.checkbox); +dataTypesContainer.appendChild(humidityCheckbox.checkboxLabel); +dataTypesContainer.appendChild(eco2Checkbox.checkbox); +dataTypesContainer.appendChild(eco2Checkbox.checkboxLabel); +dataTypesContainer.appendChild(tvocCheckbox.checkbox); +dataTypesContainer.appendChild(tvocCheckbox.checkboxLabel); + +const filterButton = document.createElement('button'); +filterButton.textContent = 'Filter Data'; +filterButton.setAttribute('class', 'filter-button'); +filterButton.addEventListener('click', () => { + const startDate = new Date(document.getElementById('start-date').value); + const endDate = new Date(document.getElementById('end-date').value); + const selectedNodes = document.getElementById('node-input').value.split(',').map(node => node.trim()); + + const selectedFields = []; + const checkboxes = [temperatureCheckbox, humidityCheckbox, eco2Checkbox, tvocCheckbox]; + checkboxes.forEach(checkbox => { + if (checkbox.checkbox.checked) { + selectedFields.push(checkbox.checkbox.id); + } }); - - // Append input elements to the document body - document.body.appendChild(startDateInput); - document.body.appendChild(endDateInput); - document.body.appendChild(nodeInput); - document.body.appendChild(temperatureCheckbox.checkbox); - document.body.appendChild(temperatureCheckbox.checkboxLabel); - document.body.appendChild(humidityCheckbox.checkbox); - document.body.appendChild(humidityCheckbox.checkboxLabel); - document.body.appendChild(eco2Checkbox.checkbox); - document.body.appendChild(eco2Checkbox.checkboxLabel); - document.body.appendChild(tvocCheckbox.checkbox); - document.body.appendChild(tvocCheckbox.checkboxLabel); - document.body.appendChild(filterButton); \ No newline at end of file + + const filteredData = filterData(data, startDate, endDate, selectedNodes, selectedFields); + console.log(filteredData); +}); + +container.appendChild(dataTypesContainer); + +const dateFilter = document.createElement('div'); +dateFilter.setAttribute('class', 'date-filter'); + +const startDateInput = document.createElement('input'); +startDateInput.setAttribute('type', 'datetime-local'); +startDateInput.setAttribute('id', 'start-date'); +startDateInput.setAttribute('class', 'input-field'); + +const endDateInput = document.createElement('input'); +endDateInput.setAttribute('type', 'datetime-local'); +endDateInput.setAttribute('id', 'end-date'); +endDateInput.setAttribute('class', 'input-field'); + +dateFilter.appendChild(startDateInput); +dateFilter.appendChild(endDateInput); +container.appendChild(dateFilter); + +const nodeFilter = document.createElement('div'); +nodeFilter.setAttribute('class', 'node-filter'); + +const nodeInput = document.createElement('input'); +nodeInput.setAttribute('type', 'text'); +nodeInput.setAttribute('placeholder', 'Enter node (A, B, etc.)'); +nodeInput.setAttribute('id', 'node-input'); +nodeInput.setAttribute('class', 'input-field'); + +nodeFilter.appendChild(nodeInput); +container.appendChild(nodeFilter); + +container.appendChild(filterButton); + +document.body.appendChild(container); \ No newline at end of file diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index ec79d48..eaf79e0 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -167,8 +167,28 @@ body { font-size: 18px; } -.input-field { - margin: 10px; +.container { + display: flex; + justify-content: space-around; + align-items: center; + border: 2px solid #ccc; + border-radius: 10px; + padding: 10px; + margin: 20px; + } + + .data-types { + display: flex; + flex-direction: column; + } + + .date-filter, + .node-filter { + margin-left: 10px; + } + + .input-field { + margin: 5px; padding: 5px; border: 1px solid #ccc; border-radius: 5px; From 726d411321335ce588e443a0d14230d29b3c3791 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sat, 30 Mar 2024 21:25:20 +0100 Subject: [PATCH 123/215] Add dataTypesContainer to container and update styles --- web/newWebsite/graph-main.js | 3 +- web/newWebsite/graphs.html | 3 +- web/newWebsite/styles/graph-styles.css | 60 +++++++++++++------------- 3 files changed, 33 insertions(+), 33 deletions(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index eadfb77..024aad6 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -42,6 +42,7 @@ dataTypesContainer.appendChild(eco2Checkbox.checkbox); dataTypesContainer.appendChild(eco2Checkbox.checkboxLabel); dataTypesContainer.appendChild(tvocCheckbox.checkbox); dataTypesContainer.appendChild(tvocCheckbox.checkboxLabel); +container.appendChild(dataTypesContainer); const filterButton = document.createElement('button'); filterButton.textContent = 'Filter Data'; @@ -63,8 +64,6 @@ filterButton.addEventListener('click', () => { console.log(filteredData); }); -container.appendChild(dataTypesContainer); - const dateFilter = document.createElement('div'); dateFilter.setAttribute('class', 'date-filter'); diff --git a/web/newWebsite/graphs.html b/web/newWebsite/graphs.html index 0629172..ad48fd4 100644 --- a/web/newWebsite/graphs.html +++ b/web/newWebsite/graphs.html @@ -28,7 +28,8 @@
    - + +
    diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index eaf79e0..ce423d9 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -168,46 +168,46 @@ body { } .container { + box-sizing: border-box; display: flex; - justify-content: space-around; + flex-wrap: wrap; + flex-direction: row; + justify-content: center; align-items: center; - border: 2px solid #ccc; + border: 2px solid #000000; border-radius: 10px; - padding: 10px; - margin: 20px; + padding: 20px; } .data-types { - display: flex; flex-direction: column; + align-self: self-center; + justify-content: space-between; + padding: 20px; + width: 30%; /* Adjust width as needed */ + background-color: #f1f1f1; } - .date-filter, - .node-filter { - margin-left: 10px; + .date-filter{ + align-content: center; + flex-direction: column; + justify-content: space-between; + /* width: 30%; /* Adjust width as needed */ + background-color: #f1f1f1; } - - .input-field { - margin: 5px; - padding: 5px; - border: 1px solid #ccc; - border-radius: 5px; - } - - .checkbox { - margin-right: 5px; - } - - .filter-button { - margin: 10px; - padding: 5px 10px; - background-color: #007bff; - color: #fff; + + .node-filter{ + align-self: center; + justify-content: space-between; + width: 10%; /* Adjust width as needed */ border: none; - border-radius: 5px; - cursor: pointer; + border-radius: 4px; + background-color: #f1f1f1; + } + + .filter-button { + width: 100%; + margin-top: 20px; } - .filter-button:hover { - background-color: #0056b3; - } \ No newline at end of file + /* Additional styling as needed */ \ No newline at end of file From 415a0c456e0e960945cc2de49ec64b76cbce8d68 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sat, 30 Mar 2024 21:46:32 +0100 Subject: [PATCH 124/215] Remove extra closing div tag in graphs.html --- web/newWebsite/graphs.html | 3 +- web/newWebsite/styles/graph-styles.css | 320 +++++++++++++------------ 2 files changed, 163 insertions(+), 160 deletions(-) diff --git a/web/newWebsite/graphs.html b/web/newWebsite/graphs.html index ad48fd4..0629172 100644 --- a/web/newWebsite/graphs.html +++ b/web/newWebsite/graphs.html @@ -28,8 +28,7 @@
    - -
    + diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index ce423d9..f60bf63 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -1,213 +1,217 @@ * { - box-sizing: border-box; - font-family: "Roboto", sans-serif; + box-sizing: border-box; + font-family: "Roboto", sans-serif; } body { - padding-top: 5vw; - display: flex; - justify-content: center; - align-items: center; - height: 100vh; - margin: 0; - background-color: #f0f0f0; - flex-direction: column; - background-color: #afafaf; - + padding-top: 5vw; + display: flex; + justify-content: center; + align-items: center; + height: 100vh; + margin: 0; + background-color: #f0f0f0; + flex-direction: column; + background-color: #afafaf; } .gaugeGroup { - width: 98vw; - height: 20vh; - display: flex; - flex-direction: column; /* Keep as column */ - justify-content: flex-start; - background-color: #333; - color: #fff; - padding: 10px; - border-radius: 50px; - border: 2px solid #333; - clear: both; - margin-bottom: 10px; - position: relative; - float: top; + width: 98vw; + height: 20vh; + display: flex; + flex-direction: column; /* Keep as column */ + justify-content: flex-start; + background-color: #333; + color: #fff; + padding: 10px; + border-radius: 50px; + border: 2px solid #333; + clear: both; + margin-bottom: 10px; + position: relative; + float: top; } .groupTitle { - width: 100%; - text-align: center; - font-size: 24px; + width: 100%; + text-align: center; + font-size: 24px; } .Node { - display: flex; - justify-content: space-around; - align-items: center; - width: 100%; - height: 100%; + display: flex; + justify-content: space-around; + align-items: center; + width: 100%; + height: 100%; } .Sensorvalues { - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - flex-wrap: wrap; - width: 15%; - height: 110%; - background-color: #ddd; - color: #333; - padding: 10px; - margin: 10px; - border-radius: 10px; - text-align: center; - position: relative; - padding-bottom: 6vh; /* Increase bottom padding */ - + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-around; + flex-wrap: wrap; + width: 15%; + height: 110%; + background-color: #ddd; + color: #333; + padding: 10px; + margin: 10px; + border-radius: 10px; + text-align: center; + position: relative; + padding-bottom: 6vh; /* Increase bottom padding */ } .gaugeContainer { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - width: 100%; - height: 80%; /* Increase the height from 70% to 80% */ - position: relative; - overflow: visible; - + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + width: 100%; + height: 80%; /* Increase the height from 70% to 80% */ + position: relative; + overflow: visible; } .gaugeImage { - width: 100%; - height: auto; - max-height: 200%; - object-fit: contain; - position: absolute; /* Make the image position absolute */ - top: 0; - left: 0; - z-index: 1; /* Make the image display below the needle */ - bottom: 0; - margin-bottom: 10px; + width: 100%; + height: auto; + max-height: 200%; + object-fit: contain; + position: absolute; /* Make the image position absolute */ + top: 0; + left: 0; + z-index: 1; /* Make the image display below the needle */ + bottom: 0; + margin-bottom: 10px; } -.gaugeValue, .gaugeText { - width: 100%; - text-align: center; - font-size: 24px; - z-index: 2; +.gaugeValue, +.gaugeText { + width: 100%; + text-align: center; + font-size: 24px; + z-index: 2; } .gaugeText { - width: 100%; - text-align: center; - font-size: 1.4vw; - z-index: 2; - position: absolute; - bottom: -3.2vw; /* Adjust this value to move the text further down */ - + width: 100%; + text-align: center; + font-size: 1.4vw; + z-index: 2; + position: absolute; + bottom: -3.2vw; /* Adjust this value to move the text further down */ } - .valueContainer { - display: flex; - justify-content: center; - margin-top: 10px; + display: flex; + justify-content: center; + margin-top: 10px; } #valueText { - font-size: 20px; + font-size: 20px; } .needle { - position: absolute; - bottom: -40%; /* Lower the needle to the bottom */ - left: 50%; - width: 2px; - height: 110%; - background-color: black; - transform-origin: bottom; - z-index: 3; /* Make the needle display above the image */ + position: absolute; + bottom: -40%; /* Lower the needle to the bottom */ + left: 50%; + width: 2px; + height: 110%; + background-color: black; + transform-origin: bottom; + z-index: 3; /* Make the needle display above the image */ } .contentContainer { - display: flex; - flex-direction: row; /* Layout children side by side */ - width: 100%; - height: 100%; + display: flex; + flex-direction: row; /* Layout children side by side */ + width: 100%; + height: 100%; } .navbar { - background-color: #333; - height: 60px; - display: flex; - align-items: center; - padding: 0 20px; - position: fixed; /* Fix the navbar at the top of the page */ - top: 0; /* Position it at the very top */ - width: 100%; /* Make it span the full width of the page */ - z-index: 1000; /* Make sure it's above all other elements */ + background-color: #333; + height: 60px; + display: flex; + align-items: center; + padding: 0 20px; + position: fixed; /* Fix the navbar at the top of the page */ + top: 0; /* Position it at the very top */ + width: 100%; /* Make it span the full width of the page */ + z-index: 1000; /* Make sure it's above all other elements */ } .navbar-nav { - list-style: none; - display: flex; - align-items: center; - justify-content: center; /* Center the links horizontally */ - height: 100%; - width: 100%; /* Make it span the full width of the navbar */ + list-style: none; + display: flex; + align-items: center; + justify-content: center; /* Center the links horizontally */ + height: 100%; + width: 100%; /* Make it span the full width of the navbar */ } .nav-item { - margin-right: 20px; + margin-right: 20px; } .nav-link { - color: #fff; - text-decoration: none; - font-size: 18px; + color: #fff; + text-decoration: none; + font-size: 18px; } .container { - box-sizing: border-box; - display: flex; - flex-wrap: wrap; - flex-direction: row; - justify-content: center; - align-items: center; - border: 2px solid #000000; - border-radius: 10px; - padding: 20px; - } - - .data-types { - flex-direction: column; - align-self: self-center; - justify-content: space-between; - padding: 20px; - width: 30%; /* Adjust width as needed */ - background-color: #f1f1f1; - } - - .date-filter{ - align-content: center; - flex-direction: column; - justify-content: space-between; - /* width: 30%; /* Adjust width as needed */ - background-color: #f1f1f1; - } + display: flex; + flex-direction: row; + align-items: center; + border: 2px solid #ccc; + border-radius: 10px; + padding: 20px; + width: 100%; + box-sizing: border-box; +} - .node-filter{ - align-self: center; - justify-content: space-between; - width: 10%; /* Adjust width as needed */ - border: none; - border-radius: 4px; - background-color: #f1f1f1; - } +.data-types { + display: flex; + flex-direction: column; /* Display data types in a column */ + align-items: flex-start; /* Align to the start of the container */ + text-align: right; /* Align text to the right */ + width: 20%; /* Set a fixed width for the data types */ +} - .filter-button { - width: 100%; - margin-top: 20px; - } - - /* Additional styling as needed */ \ No newline at end of file +.filter { + display: flex; + flex-direction: column; /* Display filters in a column */ + align-items: center center; /* Align to the center of the container */ + text-align: center center; + margin-left: 20px; /* Add some space between the data types and filters */ +} + +.date-filter { + flex-direction: column; + align-items: center center; + justify-content: center; + align-self: center; + width: 30%; +} + +.node-filter { + align-items: center; + text-align: center; + justify-content: center; + align-self: flex-end; + width: 20%; +} + +.filter-button { + text-align: center; + align-items: center; + justify-content: center; + width: 10%; + margin-top: auto; +} + +/* Additional styling as needed */ \ No newline at end of file From 0a25bbf84f432fc0650ae1496a3ad37e702d79e1 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sat, 30 Mar 2024 22:27:16 +0100 Subject: [PATCH 125/215] Refactor graph styles and filters --- web/newWebsite/styles/graph-styles.css | 187 ++++++------------------- 1 file changed, 40 insertions(+), 147 deletions(-) diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index f60bf63..68c7c86 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -6,130 +6,8 @@ body { padding-top: 5vw; display: flex; - justify-content: center; - align-items: center; - height: 100vh; - margin: 0; - background-color: #f0f0f0; - flex-direction: column; background-color: #afafaf; -} - -.gaugeGroup { - width: 98vw; - height: 20vh; - display: flex; - flex-direction: column; /* Keep as column */ - justify-content: flex-start; - background-color: #333; - color: #fff; - padding: 10px; - border-radius: 50px; - border: 2px solid #333; - clear: both; - margin-bottom: 10px; - position: relative; - float: top; -} -.groupTitle { - width: 100%; - text-align: center; - font-size: 24px; -} - -.Node { - display: flex; - justify-content: space-around; - align-items: center; - width: 100%; - height: 100%; -} - -.Sensorvalues { - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - flex-wrap: wrap; - width: 15%; - height: 110%; - background-color: #ddd; - color: #333; - padding: 10px; - margin: 10px; - border-radius: 10px; - text-align: center; - position: relative; - padding-bottom: 6vh; /* Increase bottom padding */ -} - -.gaugeContainer { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - width: 100%; - height: 80%; /* Increase the height from 70% to 80% */ - position: relative; - overflow: visible; -} - -.gaugeImage { - width: 100%; - height: auto; - max-height: 200%; - object-fit: contain; - position: absolute; /* Make the image position absolute */ - top: 0; - left: 0; - z-index: 1; /* Make the image display below the needle */ - bottom: 0; - margin-bottom: 10px; -} - -.gaugeValue, -.gaugeText { - width: 100%; - text-align: center; - font-size: 24px; - z-index: 2; -} - -.gaugeText { - width: 100%; - text-align: center; - font-size: 1.4vw; - z-index: 2; - position: absolute; - bottom: -3.2vw; /* Adjust this value to move the text further down */ -} - -.valueContainer { - display: flex; - justify-content: center; - margin-top: 10px; -} - -#valueText { - font-size: 20px; -} - -.needle { - position: absolute; - bottom: -40%; /* Lower the needle to the bottom */ - left: 50%; - width: 2px; - height: 110%; - background-color: black; - transform-origin: bottom; - z-index: 3; /* Make the needle display above the image */ -} - -.contentContainer { - display: flex; - flex-direction: row; /* Layout children side by side */ - width: 100%; - height: 100%; + margin: 0; } .navbar { @@ -169,49 +47,64 @@ body { align-items: center; border: 2px solid #ccc; border-radius: 10px; + margin: 20px; padding: 20px; width: 100%; box-sizing: border-box; } .data-types { + flex: 1; display: flex; - flex-direction: column; /* Display data types in a column */ - align-items: flex-start; /* Align to the start of the container */ - text-align: right; /* Align text to the right */ - width: 20%; /* Set a fixed width for the data types */ + flex-direction: column; + align-items: flex-start; + margin-right: 60px; + margin-bottom: 10px; + font-size: 0.8em; + padding: 8px; + border-radius: 5px; + background-color: #f0f0f0; } -.filter { +.filters { display: flex; - flex-direction: column; /* Display filters in a column */ - align-items: center center; /* Align to the center of the container */ - text-align: center center; - margin-left: 20px; /* Add some space between the data types and filters */ + justify-content: space-between; + align-items: center; + width: 100%; + margin-bottom: 10px; } .date-filter { - flex-direction: column; - align-items: center center; - justify-content: center; - align-self: center; - width: 30%; + flex: 1; + text-align: center; + margin-right: 60px; + font-size: 1.2em; /* Increase font size for a bigger appearance */ + padding: 8px; + border-radius: 5px; /* Add border radius for a rounded look */ + background-color: #f0f0f0; /* Light background color for contrast */ } .node-filter { - align-items: center; + flex: 1; + margin: auto; text-align: center; - justify-content: center; - align-self: flex-end; - width: 20%; + margin-right: 60px; + align-content: center; + font-size: 1.2em; /* Increase font size for a bigger appearance */ + padding: 8px; + border-radius: 5px; /* Add border radius for a rounded look */ + background-color: #f0f0f0; /* Light background color for contrast */ } .filter-button { - text-align: center; - align-items: center; - justify-content: center; - width: 10%; - margin-top: auto; + flex: 1; + width: 20%; + background-color: #007bff; + color: white; + padding: 10px; + border: none; + border-radius: 5px; + cursor: pointer; } -/* Additional styling as needed */ \ No newline at end of file +/* Additional styling as needed */ From 97c21f9d3179e6c5362f5faf5023211cbed35702 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sat, 30 Mar 2024 22:33:42 +0100 Subject: [PATCH 126/215] Add query for retrieving replies --- server/Flask/queries.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/server/Flask/queries.py b/server/Flask/queries.py index cd85146..d2b4144 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -11,6 +11,8 @@ def get_query(node, dataType, MAC, questionID, replies): query = f"SELECT * FROM Reply WHERE QuestionID = '{questionID}'" elif questionID: query = f"SELECT * FROM Question" + elif replies: + query = f"SELECT * FROM Reply" else: query = "SELECT * FROM `Measurement`" return query From 8416254d6c6a12bb9ce6e1cb80b4c7af483bd94a Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sat, 30 Mar 2024 22:33:45 +0100 Subject: [PATCH 127/215] Refactor code to create filter container and fetch data from server --- web/newWebsite/graph-main.js | 174 ++++++++++++++++++++--------------- 1 file changed, 102 insertions(+), 72 deletions(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 024aad6..c1436ed 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -1,98 +1,128 @@ // Sample data - you can replace this with your actual dataset -const data = [ - { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 25, humidity: 50, eco2: 400, tvoc: 1 }, - { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 26, humidity: 45, eco2: 450, tvoc: 2 }, - { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 24, humidity: 55, eco2: 500, tvoc: 3 }, - { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 27, humidity: 40, eco2: 550, tvoc: 4 }, - { node: 'A', timestamp: '2022-01-01 08:00:00', temperature: 23, humidity: 60, eco2: 600, tvoc: 5 }, - { node: 'B', timestamp: '2022-01-01 09:00:00', temperature: 25, humidity: 50, eco2: 650, tvoc: 6 } -]; +const data = []; // Function to create checkbox with label function createCheckBox(id, label) { - const checkbox = document.createElement('input'); - checkbox.setAttribute('type', 'checkbox'); - checkbox.setAttribute('id', id); - checkbox.setAttribute('class', 'checkbox'); + const checkbox = document.createElement("input"); + checkbox.setAttribute("type", "checkbox"); + checkbox.setAttribute("id", id); + checkbox.setAttribute("class", "checkbox"); - const checkboxLabel = document.createElement('label'); - checkboxLabel.setAttribute('for', id); + const checkboxLabel = document.createElement("label"); + checkboxLabel.setAttribute("for", id); checkboxLabel.textContent = label; return { checkbox, checkboxLabel }; } -// Create HTML input elements for user input -const container = document.createElement('div'); -container.setAttribute('class', 'container'); +// Function to ceate filter container and all the input elements +function createFilterContainer() { + // Create HTML input elements for user input + const container = document.createElement("div"); + container.setAttribute("class", "container"); -const dataTypesContainer = document.createElement('div'); -dataTypesContainer.setAttribute('class', 'data-types'); + const dataTypesContainer = document.createElement("div"); + dataTypesContainer.setAttribute("class", "data-types"); -const temperatureCheckbox = createCheckBox('temperature', 'Temperature'); -const humidityCheckbox = createCheckBox('humidity', 'Humidity'); -const eco2Checkbox = createCheckBox('eco2', 'eCO2'); -const tvocCheckbox = createCheckBox('tvoc', 'TVOC'); + const temperatureCheckbox = createCheckBox("temperature", "Temperature"); + const humidityCheckbox = createCheckBox("humidity", "Humidity"); + const eco2Checkbox = createCheckBox("eco2", "eCO2"); + const tvocCheckbox = createCheckBox("tvoc", "TVOC"); -dataTypesContainer.appendChild(temperatureCheckbox.checkbox); -dataTypesContainer.appendChild(temperatureCheckbox.checkboxLabel); -dataTypesContainer.appendChild(humidityCheckbox.checkbox); -dataTypesContainer.appendChild(humidityCheckbox.checkboxLabel); -dataTypesContainer.appendChild(eco2Checkbox.checkbox); -dataTypesContainer.appendChild(eco2Checkbox.checkboxLabel); -dataTypesContainer.appendChild(tvocCheckbox.checkbox); -dataTypesContainer.appendChild(tvocCheckbox.checkboxLabel); -container.appendChild(dataTypesContainer); + dataTypesContainer.appendChild(temperatureCheckbox.checkbox); + dataTypesContainer.appendChild(temperatureCheckbox.checkboxLabel); + dataTypesContainer.appendChild(humidityCheckbox.checkbox); + dataTypesContainer.appendChild(humidityCheckbox.checkboxLabel); + dataTypesContainer.appendChild(eco2Checkbox.checkbox); + dataTypesContainer.appendChild(eco2Checkbox.checkboxLabel); + dataTypesContainer.appendChild(tvocCheckbox.checkbox); + dataTypesContainer.appendChild(tvocCheckbox.checkboxLabel); + container.appendChild(dataTypesContainer); -const filterButton = document.createElement('button'); -filterButton.textContent = 'Filter Data'; -filterButton.setAttribute('class', 'filter-button'); -filterButton.addEventListener('click', () => { - const startDate = new Date(document.getElementById('start-date').value); - const endDate = new Date(document.getElementById('end-date').value); - const selectedNodes = document.getElementById('node-input').value.split(',').map(node => node.trim()); + const filterButton = document.createElement("button"); + filterButton.textContent = "Filter Data"; + filterButton.setAttribute("class", "filter-button"); + filterButton.addEventListener("click", () => { + const startDate = new Date(document.getElementById("start-date").value); + const endDate = new Date(document.getElementById("end-date").value); + const selectedNodes = document + .getElementById("node-input") + .value.split(",") + .map((node) => node.trim()); - const selectedFields = []; - const checkboxes = [temperatureCheckbox, humidityCheckbox, eco2Checkbox, tvocCheckbox]; - checkboxes.forEach(checkbox => { - if (checkbox.checkbox.checked) { - selectedFields.push(checkbox.checkbox.id); - } + const selectedFields = []; + const checkboxes = [ + temperatureCheckbox, + humidityCheckbox, + eco2Checkbox, + tvocCheckbox, + ]; + checkboxes.forEach((checkbox) => { + if (checkbox.checkbox.checked) { + selectedFields.push(checkbox.checkbox.id); + } + }); + + const filteredData = filterData( + data, + startDate, + endDate, + selectedNodes, + selectedFields + ); + console.log(filteredData); }); - const filteredData = filterData(data, startDate, endDate, selectedNodes, selectedFields); - console.log(filteredData); -}); + const dateFilter = document.createElement("div"); + dateFilter.setAttribute("class", "date-filter"); -const dateFilter = document.createElement('div'); -dateFilter.setAttribute('class', 'date-filter'); + const startDateInput = document.createElement("input"); + startDateInput.setAttribute("type", "datetime-local"); + startDateInput.setAttribute("id", "start-date"); + startDateInput.setAttribute("class", "input-field"); -const startDateInput = document.createElement('input'); -startDateInput.setAttribute('type', 'datetime-local'); -startDateInput.setAttribute('id', 'start-date'); -startDateInput.setAttribute('class', 'input-field'); + const endDateInput = document.createElement("input"); + endDateInput.setAttribute("type", "datetime-local"); + endDateInput.setAttribute("id", "end-date"); + endDateInput.setAttribute("class", "input-field"); -const endDateInput = document.createElement('input'); -endDateInput.setAttribute('type', 'datetime-local'); -endDateInput.setAttribute('id', 'end-date'); -endDateInput.setAttribute('class', 'input-field'); + dateFilter.appendChild(startDateInput); + dateFilter.appendChild(endDateInput); + container.appendChild(dateFilter); -dateFilter.appendChild(startDateInput); -dateFilter.appendChild(endDateInput); -container.appendChild(dateFilter); + const nodeFilter = document.createElement("div"); + nodeFilter.setAttribute("class", "node-filter"); -const nodeFilter = document.createElement('div'); -nodeFilter.setAttribute('class', 'node-filter'); + const nodeInput = document.createElement("input"); + nodeInput.setAttribute("type", "text"); + nodeInput.setAttribute("placeholder", "Enter node (A, B, etc.)"); + nodeInput.setAttribute("id", "node-input"); + nodeInput.setAttribute("class", "input-field"); -const nodeInput = document.createElement('input'); -nodeInput.setAttribute('type', 'text'); -nodeInput.setAttribute('placeholder', 'Enter node (A, B, etc.)'); -nodeInput.setAttribute('id', 'node-input'); -nodeInput.setAttribute('class', 'input-field'); + nodeFilter.appendChild(nodeInput); + container.appendChild(nodeFilter); -nodeFilter.appendChild(nodeInput); -container.appendChild(nodeFilter); + container.appendChild(filterButton); -container.appendChild(filterButton); + document.body.appendChild(container); +} -document.body.appendChild(container); \ No newline at end of file +// Get request to fetch data from the server +function fetchData() { + fetch("http://145.92.8.114/getNodeInfo") + .then((response) => { + if (!response.ok) { + throw new Error("Network response was not ok"); + } + return response.json(); + }) + .then((data) => { + data.push(...data); + createFilterContainer(); + }) + .catch((error) => { + console.error("Error fetching data:", error); + }); +} + +fetchData(); \ No newline at end of file From 66793a12fc117dd9e5d791c5508a46738184abca Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Sat, 30 Mar 2024 22:50:24 +0100 Subject: [PATCH 128/215] kleine pdates questiondata pulling. --- server/Flask/main.py | 6 +++--- server/Flask/queries.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index 7232c81..6e7c9f4 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -69,12 +69,12 @@ def getNodeInfo(macAdress): return result -def getQuestionData(): +def getQuestionData(questionID, replies): mydb = loginDB() - query = get_query(False, False, False, True, False) + query = get_query(False, False, False, questionID, replies) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) - result = cursor.fetchall() # Fetch the results + result = cursor.fetchall() # Fetch the results cursor.close() mydb.close() diff --git a/server/Flask/queries.py b/server/Flask/queries.py index d2b4144..143b691 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -8,7 +8,7 @@ def get_query(node, dataType, MAC, questionID, replies): elif MAC: query = f"SELECT * FROM Node WHERE MAC = '{MAC}'" elif replies and questionID: - query = f"SELECT * FROM Reply WHERE QuestionID = '{questionID}'" + query = f"SELECT * FROM Reply WHERE replies = '{replies}' AND QuestionID = '{questionID}'" elif questionID: query = f"SELECT * FROM Question" elif replies: From 034dd2b660ddd36b2f8905837f6d269f7538ba99 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sat, 30 Mar 2024 22:57:40 +0100 Subject: [PATCH 129/215] Add Questions Dashboard page --- web/newWebsite/graphs.html | 2 + web/newWebsite/index.html | 2 + web/newWebsite/questions-dashboard.html | 34 +++++++++++++++ web/newWebsite/questions-main.js | 0 web/newWebsite/settings.html | 2 + .../styles/questions-dashboard-styles.css | 42 +++++++++++++++++++ 6 files changed, 82 insertions(+) create mode 100644 web/newWebsite/questions-dashboard.html create mode 100644 web/newWebsite/questions-main.js create mode 100644 web/newWebsite/styles/questions-dashboard-styles.css diff --git a/web/newWebsite/graphs.html b/web/newWebsite/graphs.html index 0629172..e6c7ab4 100644 --- a/web/newWebsite/graphs.html +++ b/web/newWebsite/graphs.html @@ -23,6 +23,8 @@ + + +
    + diff --git a/web/newWebsite/questions-main-class.js b/web/newWebsite/questions-main-class.js new file mode 100644 index 0000000..356d3e0 --- /dev/null +++ b/web/newWebsite/questions-main-class.js @@ -0,0 +1,27 @@ +class QuestionCreationClass { + constructor(data, label) { + this.data = data; + this.label = label; + } + + get questionData() { + return { + labels: this.label, + datasets: [{ + label: 'Responses', + data: this.data, + backgroundColor: [ + 'rgba(255, 99, 132, 0.2)', + 'rgba(54, 162, 235, 0.2)', + 'rgba(255, 206, 86, 0.2)' + ], + borderColor: [ + 'rgba(255, 99, 132, 1)', + 'rgba(54, 162, 235, 1)', + 'rgba(255, 206, 86, 1)' + ], + borderWidth: 1 + }] + }; + } +} \ No newline at end of file diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index c4baf7f..0b19d5b 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -1,76 +1,3 @@ - -// // Sample data -// const dataItems = [ -// { id: 1, name: "Question 1", description: "Description for Item 1" }, -// { id: 2, name: "Question 2", description: "Description for Item 2" }, -// ]; - -// // Function to display data items on the webpage -// function displayDataItems() { -// const container = document.getElementById("data-container"); - -// // Clear previous content -// container.innerHTML = ""; - -// // Loop through data items and create HTML elements -// dataItems.forEach(item => { -// const itemElement = document.createElement("div"); -// itemElement.classList.add("data-item"); -// itemElement.innerHTML = ` -//

    ${item.name}

    -//

    ${item.description}

    -// `; -// container.appendChild(itemElement); -// }); -// } - -// // Call the function to display data items when the page loads -// window.onload = displayDataItems; - -// // Sample data for the questionnaire results -// const questionnaireData = { -// labels: ['Option 1', 'Option 2', 'Option 3', 'Option 4', 'Option 5'], -// datasets: [{ -// label: 'Responses', -// data: [20, 35, 15, 10, 20], // Sample response counts for each option -// backgroundColor: [ -// 'rgba(255, 99, 132, 0.2)', -// 'rgba(54, 162, 235, 0.2)', -// 'rgba(255, 206, 86, 0.2)', -// 'rgba(75, 192, 192, 0.2)', -// 'rgba(153, 102, 255, 0.2)' -// ], -// borderColor: [ -// 'rgba(255, 99, 132, 1)', -// 'rgba(54, 162, 235, 1)', -// 'rgba(255, 206, 86, 1)', -// 'rgba(75, 192, 192, 1)', -// 'rgba(153, 102, 255, 1)' -// ], -// borderWidth: 1 -// }] -// }; - -// // Chart configuration -// const chartConfig = { -// type: 'bar', -// data: questionnaireData, -// options: { -// scales: { -// yAxes: [{ -// ticks: { -// beginAtZero: true -// } -// }] -// } -// } -// }; - -// // Create the chart -// const ctx = document.getElementById('chart').getContext('2d'); -// const myChart = new Chart(ctx, chartConfig); - -// Sample data for the questionnaire results const question1Data = { labels: ['Option A', 'Option B', 'Option C'], datasets: [{ @@ -90,6 +17,11 @@ const question1Data = { }] }; +// let dummydata = [40, 30, 20]; +// let questionOptionsDummy = ['Option A', 'Option B', 'Option C']; + +// const question3Data = new QuestionCreationClass(dummydata, questionOptionsDummy); + const question2Data = { labels: ['Option A', 'Option B', 'Option C'], datasets: [{ @@ -147,6 +79,24 @@ const chartConfig2 = { } } }; +// const chartConfig3 = { +// type: 'pie', +// data: question3Data.questionData(), +// options: { +// responsive: true, +// legend: { +// position: 'top', +// }, +// title: { +// display: true, +// text: 'Question 3 Responses' +// }, +// animation: { +// animateScale: true, +// animateRotate: true +// } +// } +// }; // Create the charts const ctx1 = document.getElementById('chart1').getContext('2d'); @@ -154,3 +104,7 @@ const myChart1 = new Chart(ctx1, chartConfig1); const ctx2 = document.getElementById('chart2').getContext('2d'); const myChart2 = new Chart(ctx2, chartConfig2); + +// const ctx3 = document.getElementById('chart3').getContext('2d'); +// const myChart3 = new Chart(ctx3, chartConfig3); + From 3435bdaaabec4091880201d57cf6de9a10317bdd Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Sun, 31 Mar 2024 20:27:33 +0200 Subject: [PATCH 134/215] extra dummy question added. --- web/newWebsite/questions-dashboard.html | 4 +-- web/newWebsite/questions-main.js | 40 +++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 2 deletions(-) diff --git a/web/newWebsite/questions-dashboard.html b/web/newWebsite/questions-dashboard.html index fa2a045..f3cb2f2 100644 --- a/web/newWebsite/questions-dashboard.html +++ b/web/newWebsite/questions-dashboard.html @@ -83,8 +83,8 @@

    Question 2

    - +

    Question 3

    +
    diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index 0b19d5b..581545d 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -41,6 +41,25 @@ const question2Data = { }] }; +const question3Data = { + labels: ['Option A', 'Option B', 'Option C'], + datasets: [{ + label: 'Responses', + data: [30, 30, 30], + backgroundColor: [ + 'rgba(255, 99, 132, 0.2)', + 'rgba(54, 162, 235, 0.2)', + 'rgba(255, 206, 86, 0.2)' + ], + borderColor: [ + 'rgba(255, 99, 132, 1)', + 'rgba(54, 162, 235, 1)', + 'rgba(255, 206, 86, 1)' + ], + borderWidth: 1 + }] +}; + // Chart configurations for each question const chartConfig1 = { type: 'pie', @@ -79,6 +98,25 @@ const chartConfig2 = { } } }; + +const chartConfig3 = { + type: 'pie', + data: question3Data, + options: { + responsive: true, + legend: { + position: 'top', + }, + title: { + display: true, + text: 'Question 3 Responses' + }, + animation: { + animateScale: true, + animateRotate: true + } + } +}; // const chartConfig3 = { // type: 'pie', // data: question3Data.questionData(), @@ -105,6 +143,8 @@ const myChart1 = new Chart(ctx1, chartConfig1); const ctx2 = document.getElementById('chart2').getContext('2d'); const myChart2 = new Chart(ctx2, chartConfig2); +const ctx3 = document.getElementById('chart3').getContext('2d'); +const myChart3 = new Chart(ctx3, chartConfig3); // const ctx3 = document.getElementById('chart3').getContext('2d'); // const myChart3 = new Chart(ctx3, chartConfig3); From f2050a54a443296f58f7c94b1c4d266b89f2066f Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Sun, 31 Mar 2024 20:48:50 +0200 Subject: [PATCH 135/215] class working kindof, kan nog niet gelezen worden vanaf andere js file. --- web/newWebsite/questions-dashboard.html | 51 +---------------- web/newWebsite/questions-main-class.js | 52 ++++++++--------- web/newWebsite/questions-main.js | 75 +++++++++++-------------- 3 files changed, 60 insertions(+), 118 deletions(-) diff --git a/web/newWebsite/questions-dashboard.html b/web/newWebsite/questions-dashboard.html index f3cb2f2..6e267a1 100644 --- a/web/newWebsite/questions-dashboard.html +++ b/web/newWebsite/questions-dashboard.html @@ -1,50 +1,3 @@ - - - @@ -90,6 +43,6 @@
    - + - + \ No newline at end of file diff --git a/web/newWebsite/questions-main-class.js b/web/newWebsite/questions-main-class.js index 356d3e0..a1e301b 100644 --- a/web/newWebsite/questions-main-class.js +++ b/web/newWebsite/questions-main-class.js @@ -1,27 +1,27 @@ -class QuestionCreationClass { - constructor(data, label) { - this.data = data; - this.label = label; - } +// class QuestionCreationClass { +// constructor(data, label) { +// this.data = data; +// this.label = label; +// } - get questionData() { - return { - labels: this.label, - datasets: [{ - label: 'Responses', - data: this.data, - backgroundColor: [ - 'rgba(255, 99, 132, 0.2)', - 'rgba(54, 162, 235, 0.2)', - 'rgba(255, 206, 86, 0.2)' - ], - borderColor: [ - 'rgba(255, 99, 132, 1)', - 'rgba(54, 162, 235, 1)', - 'rgba(255, 206, 86, 1)' - ], - borderWidth: 1 - }] - }; - } -} \ No newline at end of file +// get questionData() { +// return { +// labels: this.label, +// datasets: [{ +// label: 'Responses', +// data: this.data, +// backgroundColor: [ +// 'rgba(255, 99, 132, 0.2)', +// 'rgba(54, 162, 235, 0.2)', +// 'rgba(255, 206, 86, 0.2)' +// ], +// borderColor: [ +// 'rgba(255, 99, 132, 1)', +// 'rgba(54, 162, 235, 1)', +// 'rgba(255, 206, 86, 1)' +// ], +// borderWidth: 1 +// }] +// }; +// } +// } \ No newline at end of file diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index 581545d..747707a 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -1,3 +1,31 @@ +class QuestionCreationClass { + constructor(data, label) { + this.data = data; + this.label = label; + } + + get questionData() { + return { + labels: this.label, + datasets: [{ + label: 'Responses', + data: this.data, + backgroundColor: [ + 'rgba(255, 99, 132, 0.2)', + 'rgba(54, 162, 235, 0.2)', + 'rgba(255, 206, 86, 0.2)' + ], + borderColor: [ + 'rgba(255, 99, 132, 1)', + 'rgba(54, 162, 235, 1)', + 'rgba(255, 206, 86, 1)' + ], + borderWidth: 1 + }] + }; + } +} + const question1Data = { labels: ['Option A', 'Option B', 'Option C'], datasets: [{ @@ -17,10 +45,10 @@ const question1Data = { }] }; -// let dummydata = [40, 30, 20]; -// let questionOptionsDummy = ['Option A', 'Option B', 'Option C']; +let dummydata = [30, 20, 20]; +let questionOptionsDummy = ['Option A', 'Option B', 'Option C']; -// const question3Data = new QuestionCreationClass(dummydata, questionOptionsDummy); +const question3Data = new QuestionCreationClass(dummydata, questionOptionsDummy); const question2Data = { labels: ['Option A', 'Option B', 'Option C'], @@ -41,25 +69,6 @@ const question2Data = { }] }; -const question3Data = { - labels: ['Option A', 'Option B', 'Option C'], - datasets: [{ - label: 'Responses', - data: [30, 30, 30], - backgroundColor: [ - 'rgba(255, 99, 132, 0.2)', - 'rgba(54, 162, 235, 0.2)', - 'rgba(255, 206, 86, 0.2)' - ], - borderColor: [ - 'rgba(255, 99, 132, 1)', - 'rgba(54, 162, 235, 1)', - 'rgba(255, 206, 86, 1)' - ], - borderWidth: 1 - }] -}; - // Chart configurations for each question const chartConfig1 = { type: 'pie', @@ -101,7 +110,7 @@ const chartConfig2 = { const chartConfig3 = { type: 'pie', - data: question3Data, + data: question3Data.questionData, options: { responsive: true, legend: { @@ -117,24 +126,6 @@ const chartConfig3 = { } } }; -// const chartConfig3 = { -// type: 'pie', -// data: question3Data.questionData(), -// options: { -// responsive: true, -// legend: { -// position: 'top', -// }, -// title: { -// display: true, -// text: 'Question 3 Responses' -// }, -// animation: { -// animateScale: true, -// animateRotate: true -// } -// } -// }; // Create the charts const ctx1 = document.getElementById('chart1').getContext('2d'); @@ -145,6 +136,4 @@ const myChart2 = new Chart(ctx2, chartConfig2); const ctx3 = document.getElementById('chart3').getContext('2d'); const myChart3 = new Chart(ctx3, chartConfig3); -// const ctx3 = document.getElementById('chart3').getContext('2d'); -// const myChart3 = new Chart(ctx3, chartConfig3); From 28cc13484f9a3e7b95d62a232af1813605c3288e Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sun, 31 Mar 2024 21:08:35 +0200 Subject: [PATCH 136/215] Remove graph1 div and add flex-direction to body --- web/newWebsite/graphs.html | 2 -- web/newWebsite/styles/graph-styles.css | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/web/newWebsite/graphs.html b/web/newWebsite/graphs.html index e6c7ab4..d4b62cc 100644 --- a/web/newWebsite/graphs.html +++ b/web/newWebsite/graphs.html @@ -29,8 +29,6 @@ -
    - diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index 68c7c86..70e4a11 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -6,6 +6,7 @@ body { padding-top: 5vw; display: flex; + flex-direction: column; background-color: #afafaf; margin: 0; } From e94f12e13c7c3ba3db82f7127dca5671d9626db4 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sun, 31 Mar 2024 21:08:40 +0200 Subject: [PATCH 137/215] Refactor graph classes and add data processor --- web/newWebsite/graph-classes.js | 181 ++++++++++++++++++-------------- web/newWebsite/graph-main.js | 17 ++- 2 files changed, 117 insertions(+), 81 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index 200b0f0..63257c3 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -1,79 +1,106 @@ -class Graph{ - constructor(id) { - this.id = "graph" + id; - this.timeArray = []; - } - - // Function to create a graph - makeGraph(line, lineColor, name) { - let lineArray; - switch (line) { - case "temp": - lineArray = this.tempArray; - break; - case "humi": - lineArray = this.humiArray; - break; - case "eco2": - lineArray = this.eco2Array; - break; - case "tvoc": - lineArray = this.tvocArray; - break; - default: - console.error("Invalid line"); - } - this.timeArray.push(new Date()); - Plotly.plot(this.id, [ - { - x: this.timeArray, - y: lineArray, - mode: "lines", - line: { color: lineColor }, - name: name, - }, - ]); - } -} - -class LiveGraph extends Graph{ - // Constructor to initialize the graph - constructor(id){ - super(id); - this.tempArray = []; - this.humiArray = []; - this.eco2Array = []; - this.tvocArray = []; - this.cnt = 0; - } - // Function to update the graph with new values got from updateData function - updateGraph() { - let time = new Date(); - this.timeArray.push(new Date()); - - let update = { - x: [[this.timeArray]], - y: [[this.tempArray], [this.humiArray], [this.eco2Array], [this.tvocArray]] - }; - - let olderTime = time.setMinutes(time.getMinutes() - 1); - let futureTime = time.setMinutes(time.getMinutes() + 1); - let minuteView = { - xaxis: { - type: "date", - range: [olderTime, futureTime], - }, - }; - Plotly.relayout(this.id, minuteView); - if (this.cnt === 10) clearInterval(interval); - } - // function to get the new data for graph - updateData(temperature, humidity, eCO2, TVOC) { - // Update the graph - this.tempArray.push(temperature); - this.humiArray.push(humidity); - this.eco2Array.push(eCO2 / 10); - this.tvocArray.push(TVOC / 10); - } +class Graph { + constructor(id) { + this.id = "graph" + id; + this.timeArray = []; } + // Function to create a graph + makeGraph(line, lineColor, name) { + let lineArray; + switch (line) { + case "temp": + lineArray = this.tempArray; + break; + case "humi": + lineArray = this.humiArray; + break; + case "eco2": + lineArray = this.eco2Array; + break; + case "tvoc": + lineArray = this.tvocArray; + break; + default: + console.error("Invalid line"); + } + this.timeArray.push(new Date()); + Plotly.plot(this.id, [ + { + x: this.timeArray, + y: lineArray, + mode: "lines", + line: { color: lineColor }, + name: name, + }, + ]); + } +} + +class LiveGraph extends Graph { + // Constructor to initialize the graph + constructor(id) { + super(id); + this.tempArray = []; + this.humiArray = []; + this.eco2Array = []; + this.tvocArray = []; + this.cnt = 0; + } + // Function to update the graph with new values got from updateData function + updateGraph() { + let time = new Date(); + this.timeArray.push(new Date()); + + let update = { + x: [[this.timeArray]], + y: [ + [this.tempArray], + [this.humiArray], + [this.eco2Array], + [this.tvocArray], + ], + }; + + let olderTime = time.setMinutes(time.getMinutes() - 1); + let futureTime = time.setMinutes(time.getMinutes() + 1); + let minuteView = { + xaxis: { + type: "date", + range: [olderTime, futureTime], + }, + }; + Plotly.relayout(this.id, minuteView); + if (this.cnt === 10) clearInterval(interval); + } + // function to get the new data for graph + updateData(temperature, humidity, eCO2, TVOC) { + // Update the graph + this.tempArray.push(temperature); + this.humiArray.push(humidity); + this.eco2Array.push(eCO2 / 10); + this.tvocArray.push(TVOC / 10); + } +} + +class DataProcessor { + constructor(data) { + this.data = data; + } + // You can add more filtering methods based on different criteria if needed + update(data) { + this.data = data; + console.log("Data updated"); + console.log(data); + } + + graph() { + let div = document.createElement("div"); + div.setAttribute("id", "graph1"); + document.body.appendChild(div); + let graph = new Graph(1); + graph.makeGraph("temp", "red", "Temperature"); + graph.makeGraph("humi", "blue", "Humidity"); + graph.makeGraph("eco2", "green", "eCO2"); + graph.makeGraph("tvoc", "purple", "TVOC"); + } +} diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 9aba63a..37b3cd0 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -1,6 +1,6 @@ // Sample data - you can replace this with your actual dataset const data = []; - +processor = new DataProcessor(); // Function to create checkbox with label function createCheckBox(id, label) { const checkbox = document.createElement("input"); @@ -109,19 +109,28 @@ function createFilterContainer() { // Get request to fetch data from the server function fetchData() { - fetch("http://145.92.8.114/getMeasurements") + fetch("http://145.92.8.114/getMeasurements?dateStart=2024-03-27%2011:47:11&dateEnd=2024-03-27%2011:47:11") .then((response) => { if (!response.ok) { throw new Error("Network response was not ok"); } return response.json(); }) - .then((measurements) => { + .then((data) => { createFilterContainer(); + processor.update(data); + processor.graph(); + }) .catch((error) => { console.error("Error fetching data:", error); }); } -fetchData(); \ No newline at end of file +fetchData(); + +// Function to create the graph +function createGraph() { + const graph = new Graph("graph"); + graph.updateGraph(); +} \ No newline at end of file From 912ffc052b926c1f3c01f9ad4a8279cf99548f8a Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sun, 31 Mar 2024 21:08:48 +0200 Subject: [PATCH 138/215] Add date range filter to getData function --- server/Flask/main.py | 10 ++++++---- server/Flask/queries.py | 6 +++++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index 6e7c9f4..349cf99 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -3,12 +3,14 @@ import mysql.connector from queries import * app = Flask(__name__) -@app.route('/') +@app.route('/getMeasurements') def index(): node = request.args.get('node', default = None) dataType = request.args.get('dataType', default = None) MAC = request.args.get('MAC', default = None) - return getData(node, dataType, MAC) + dateStart = request.args.get('dateStart', default = None) + dateEnd = request.args.get('dateEnd', default = None) + return getData(node, dataType, MAC, dateStart, dateEnd) @app.route('/updateData') def updateDataIndex(): @@ -47,9 +49,9 @@ def loginDB(): ) return mydb -def getData(node, dataType, MAC): +def getData(node, dataType, MAC, dateStart, dateEnd): mydb = loginDB() - query = get_query(node, dataType, MAC, False, False) + query = get_query(node, dataType, MAC, False, False, dateStart, dateEnd) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results diff --git a/server/Flask/queries.py b/server/Flask/queries.py index 143b691..65abfeb 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -1,4 +1,4 @@ -def get_query(node, dataType, MAC, questionID, replies): +def get_query(node, dataType, MAC, questionID, replies, dateStart, dateEnd): if node and dataType: query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" elif node: @@ -13,6 +13,10 @@ def get_query(node, dataType, MAC, questionID, replies): query = f"SELECT * FROM Question" elif replies: query = f"SELECT * FROM Reply" + elif dateStart and dateEnd: + query = f'''SELECT * + FROM Measurement + WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}';''' else: query = "SELECT * FROM `Measurement`" return query From ae082b53a41e3ef5ec569b3d590d661fbaeeea36 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sun, 31 Mar 2024 21:19:37 +0200 Subject: [PATCH 139/215] Add temperature, humidity, eCO2, and TVOC data to graph and update graph view --- web/newWebsite/graph-classes.js | 60 ++++++++++++++++++++++++++++++++- web/newWebsite/graph-main.js | 1 - 2 files changed, 59 insertions(+), 2 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index 63257c3..4bacf78 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -2,6 +2,10 @@ class Graph { constructor(id) { this.id = "graph" + id; this.timeArray = []; + this.tempArray = []; + this.humiArray = []; + this.eco2Array = []; + this.tvocArray = []; } // Function to create a graph @@ -34,6 +38,49 @@ class Graph { }, ]); } + + updateData(type, value) { + switch (type) { + case "Temp": + this.tempArray.push(value); + break; + case "Humi": + this.humiArray.push(value); + break; + case "eCO2": + this.eco2Array.push(value); + break; + case "TVOC": + this.tvocArray.push(value); + break; + default: + console.error("Invalid type"); + } + } + + updateGraph() { + let time = new Date(); + this.timeArray.push(time); + let update = { + x: [[this.timeArray]], + y: [ + [this.tempArray], + [this.humiArray], + [this.eco2Array], + [this.tvocArray], + ], + }; + + let olderTime = time.setMinutes(time.getMinutes() - 1); + let futureTime = time.setMinutes(time.getMinutes() + 1); + let minuteView = { + xaxis: { + type: "date", + range: [olderTime, futureTime], + }, + }; + Plotly.relayout(this.id, minuteView); + } } class LiveGraph extends Graph { @@ -101,6 +148,17 @@ class DataProcessor { graph.makeGraph("temp", "red", "Temperature"); graph.makeGraph("humi", "blue", "Humidity"); graph.makeGraph("eco2", "green", "eCO2"); - graph.makeGraph("tvoc", "purple", "TVOC"); + graph.makeGraph("tvoc", "#F5G644", "TVOC"); + + graph.updateData(this.data[0].Type, this.data[0].Value); + console.log(this.data[0].Type, this.data[0].Value); + graph.updateData(this.data[1].Type, this.data[1].Value); + console.log(this.data[1].Type, this.data[1].Value); + graph.updateData(this.data[2].Type, this.data[2].Value); + console.log(this.data[2].Type, this.data[2].Value); + graph.updateData(this.data[3].Type, this.data[3].Value); + console.log(this.data[3].Type, this.data[3].Value); + + graph.updateGraph(); } } diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 37b3cd0..c271e48 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -120,7 +120,6 @@ function fetchData() { createFilterContainer(); processor.update(data); processor.graph(); - }) .catch((error) => { console.error("Error fetching data:", error); From 76532c538b88a3c086409835ec542d0da9a99c39 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Sun, 31 Mar 2024 21:24:52 +0200 Subject: [PATCH 140/215] Refactor graph creation and update methods --- web/newWebsite/graph-classes.js | 25 ++++++++++++++----------- web/newWebsite/graph-main.js | 11 +++-------- 2 files changed, 17 insertions(+), 19 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index 4bacf78..8c90a2e 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -136,29 +136,32 @@ class DataProcessor { // You can add more filtering methods based on different criteria if needed update(data) { this.data = data; + this.graph; console.log("Data updated"); console.log(data); } - graph() { + makeGraph() { let div = document.createElement("div"); div.setAttribute("id", "graph1"); document.body.appendChild(div); - let graph = new Graph(1); - graph.makeGraph("temp", "red", "Temperature"); - graph.makeGraph("humi", "blue", "Humidity"); - graph.makeGraph("eco2", "green", "eCO2"); - graph.makeGraph("tvoc", "#F5G644", "TVOC"); + this.graph = new Graph(1); + this.graph.makeGraph("temp", "red", "Temperature"); + this.graph.makeGraph("humi", "blue", "Humidity"); + this.graph.makeGraph("eco2", "green", "eCO2"); + this.graph.makeGraph("tvoc", "#F5G644", "TVOC"); + } - graph.updateData(this.data[0].Type, this.data[0].Value); + updateGraph() { + this.graph.updateData(this.data[0].Type, this.data[0].Value); console.log(this.data[0].Type, this.data[0].Value); - graph.updateData(this.data[1].Type, this.data[1].Value); + this.graph.updateData(this.data[1].Type, this.data[1].Value); console.log(this.data[1].Type, this.data[1].Value); - graph.updateData(this.data[2].Type, this.data[2].Value); + this.graph.updateData(this.data[2].Type, this.data[2].Value); console.log(this.data[2].Type, this.data[2].Value); - graph.updateData(this.data[3].Type, this.data[3].Value); + this.graph.updateData(this.data[3].Type, this.data[3].Value); console.log(this.data[3].Type, this.data[3].Value); - graph.updateGraph(); + this.graph.updateGraph(); } } diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index c271e48..8f2de1d 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -119,17 +119,12 @@ function fetchData() { .then((data) => { createFilterContainer(); processor.update(data); - processor.graph(); + processor.makeGraph(); + processor.updateGraph(); }) .catch((error) => { console.error("Error fetching data:", error); }); } -fetchData(); - -// Function to create the graph -function createGraph() { - const graph = new Graph("graph"); - graph.updateGraph(); -} \ No newline at end of file +fetchData(); \ No newline at end of file From 5e2daa445a6159e8e2c76fabf554709ce2ef01fb Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 11:33:18 +0200 Subject: [PATCH 141/215] can succesfully make a graph from database data --- web/newWebsite/graph-classes.js | 38 +++++++++++---------------------- web/newWebsite/graph-main.js | 7 ++++-- 2 files changed, 17 insertions(+), 28 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index 8c90a2e..d5bce51 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -10,6 +10,9 @@ class Graph { // Function to create a graph makeGraph(line, lineColor, name) { + let div = document.createElement("div"); + div.setAttribute("id", this.id); + document.body.appendChild(div); let lineArray; switch (line) { case "temp": @@ -27,7 +30,6 @@ class Graph { default: console.error("Invalid line"); } - this.timeArray.push(new Date()); Plotly.plot(this.id, [ { x: this.timeArray, @@ -39,7 +41,9 @@ class Graph { ]); } - updateData(type, value) { + updateData(type, value, timestamp) { + this.timeArray.push(timestamp); + switch (type) { case "Temp": this.tempArray.push(value); @@ -59,8 +63,6 @@ class Graph { } updateGraph() { - let time = new Date(); - this.timeArray.push(time); let update = { x: [[this.timeArray]], y: [ @@ -71,15 +73,7 @@ class Graph { ], }; - let olderTime = time.setMinutes(time.getMinutes() - 1); - let futureTime = time.setMinutes(time.getMinutes() + 1); - let minuteView = { - xaxis: { - type: "date", - range: [olderTime, futureTime], - }, - }; - Plotly.relayout(this.id, minuteView); + Plotly.relayout(this.id, update); } } @@ -142,9 +136,6 @@ class DataProcessor { } makeGraph() { - let div = document.createElement("div"); - div.setAttribute("id", "graph1"); - document.body.appendChild(div); this.graph = new Graph(1); this.graph.makeGraph("temp", "red", "Temperature"); this.graph.makeGraph("humi", "blue", "Humidity"); @@ -153,15 +144,10 @@ class DataProcessor { } updateGraph() { - this.graph.updateData(this.data[0].Type, this.data[0].Value); - console.log(this.data[0].Type, this.data[0].Value); - this.graph.updateData(this.data[1].Type, this.data[1].Value); - console.log(this.data[1].Type, this.data[1].Value); - this.graph.updateData(this.data[2].Type, this.data[2].Value); - console.log(this.data[2].Type, this.data[2].Value); - this.graph.updateData(this.data[3].Type, this.data[3].Value); - console.log(this.data[3].Type, this.data[3].Value); - - this.graph.updateGraph(); + for (let i = 0; i < this.data.length; i++) { + this.graph.updateData(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); + console.log(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); + this.graph.updateGraph(); + } } } diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 8f2de1d..7f52e14 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -1,6 +1,9 @@ // Sample data - you can replace this with your actual dataset const data = []; processor = new DataProcessor(); +dateStart='2024-03-27%2011:47:11' +dateEnd="2024-03-27%2011:47:11" + // Function to create checkbox with label function createCheckBox(id, label) { const checkbox = document.createElement("input"); @@ -109,7 +112,7 @@ function createFilterContainer() { // Get request to fetch data from the server function fetchData() { - fetch("http://145.92.8.114/getMeasurements?dateStart=2024-03-27%2011:47:11&dateEnd=2024-03-27%2011:47:11") + fetch("http://145.92.8.114/getMeasurements?dateStart=2024-03-27%2011:47:11&dateEnd=2024-03-28%2011:47:11") .then((response) => { if (!response.ok) { throw new Error("Network response was not ok"); @@ -120,7 +123,7 @@ function fetchData() { createFilterContainer(); processor.update(data); processor.makeGraph(); - processor.updateGraph(); + processor.updateGraph(dateStart, dateEnd); }) .catch((error) => { console.error("Error fetching data:", error); From 69ef7013bb55666810b21c9219c0d31e144aeefe Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 11:50:47 +0200 Subject: [PATCH 142/215] Refactor get_query function to handle additional conditions --- server/Flask/queries.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/server/Flask/queries.py b/server/Flask/queries.py index 65abfeb..2257b79 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -1,5 +1,13 @@ def get_query(node, dataType, MAC, questionID, replies, dateStart, dateEnd): - if node and dataType: + if dateStart and dateEnd and node: + query = f'''SELECT * + FROM Measurement + WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}' AND NodeID = {node};''' + elif dateStart and dateEnd: + query = f'''SELECT * + FROM Measurement + WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}';''' + elif node and dataType: query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" elif node: query = f"SELECT * FROM Measurement WHERE NodeID = {node}" @@ -13,7 +21,7 @@ def get_query(node, dataType, MAC, questionID, replies, dateStart, dateEnd): query = f"SELECT * FROM Question" elif replies: query = f"SELECT * FROM Reply" - elif dateStart and dateEnd: + elif dateStart and dateEnd and node: query = f'''SELECT * FROM Measurement WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}';''' From 0d86c6bcbd0ec87cda165b71844f880aeb293b1e Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 11:50:52 +0200 Subject: [PATCH 143/215] Add node parameter to fetch request --- web/newWebsite/graph-main.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 7f52e14..5b6db31 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -112,7 +112,7 @@ function createFilterContainer() { // Get request to fetch data from the server function fetchData() { - fetch("http://145.92.8.114/getMeasurements?dateStart=2024-03-27%2011:47:11&dateEnd=2024-03-28%2011:47:11") + fetch("http://145.92.8.114/getMeasurements?dateStart=2024-03-27%2011:47:11&dateEnd=2024-03-28%2011:47:11&node=113") .then((response) => { if (!response.ok) { throw new Error("Network response was not ok"); From a4a73b84cc0ffd08e4f0548f13b785da78ebf4a3 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 11:58:39 +0200 Subject: [PATCH 144/215] Refactor fetchData function and add getLink function --- web/newWebsite/graph-main.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 5b6db31..8058f94 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -1,8 +1,6 @@ // Sample data - you can replace this with your actual dataset const data = []; processor = new DataProcessor(); -dateStart='2024-03-27%2011:47:11' -dateEnd="2024-03-27%2011:47:11" // Function to create checkbox with label function createCheckBox(id, label) { @@ -110,9 +108,15 @@ function createFilterContainer() { document.body.appendChild(container); } +// Function to get the link for the get request +function getLink(startDate, endDate, node) { + return link = "http://getMeasurements?dateStart=" + startDate.toISOString() + + "&dateEnd=" + endDate.toISOString() + + "&node=" + node; +} // Get request to fetch data from the server -function fetchData() { - fetch("http://145.92.8.114/getMeasurements?dateStart=2024-03-27%2011:47:11&dateEnd=2024-03-28%2011:47:11&node=113") +function fetchData(link) { + fetch(link) .then((response) => { if (!response.ok) { throw new Error("Network response was not ok"); From ec756cd3876fa1339a56db2bad793d65509e4133 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 12:35:52 +0200 Subject: [PATCH 145/215] Update plotly container styles --- web/newWebsite/styles/dashboard-styles.css | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index e4e367a..f00eca5 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -182,17 +182,19 @@ body { } .plotly-container { - + width: 100%; float: bottom; - margin: auto; padding: 1vw; align-items: center; justify-content: center; display: flex; - width: 20vw; - } -* + +.js-plotly-plot { + width: 90%; + height: 100%; +} + .disabled { opacity: 0; height: 0; From 81b81683c9f91cd5a2d0b3be91450022882f888f Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Mon, 1 Apr 2024 12:46:08 +0200 Subject: [PATCH 146/215] questions awnsers page updated with variables and dummydata, class now on sepperate file. --- docs/brainstorm/Questions Enquete.md | 2 +- web/newWebsite/questions-dashboard.html | 15 ++- web/newWebsite/questions-main-class.js | 52 +++++----- web/newWebsite/questions-main.js | 128 +++++++++++------------- 4 files changed, 97 insertions(+), 100 deletions(-) diff --git a/docs/brainstorm/Questions Enquete.md b/docs/brainstorm/Questions Enquete.md index 5fc8bc8..e32bd27 100644 --- a/docs/brainstorm/Questions Enquete.md +++ b/docs/brainstorm/Questions Enquete.md @@ -9,7 +9,7 @@ Questions shouldn't be able to measure using sensors. 3 possible answers. - How clean is the study area? (clean, normal, disgusting). - What do you think of the temperature in the study area? (hot, perfect, cold). - How crowded would you say the study area is?(not at all, its fine, really crowded). -- Is there enough help available? (no, decently, yes). +- Is there enough help available on the 5th floor? (no, decently, yes). ### Feedback questions diff --git a/web/newWebsite/questions-dashboard.html b/web/newWebsite/questions-dashboard.html index 6e267a1..46dad55 100644 --- a/web/newWebsite/questions-dashboard.html +++ b/web/newWebsite/questions-dashboard.html @@ -30,19 +30,24 @@
    -

    Question 1

    +

    Question 1: How clean are the toilets?

    -

    Question 2

    +

    Question 2: How clean is the study area?

    -

    Question 3

    +

    Question 3: What do you think of the temperature in the study area?

    +

    Question 4: How crowded would you say the study area is?

    + + +

    Question 5: Is there enough help available on the 5th floor?

    + +
    - - + \ No newline at end of file diff --git a/web/newWebsite/questions-main-class.js b/web/newWebsite/questions-main-class.js index a1e301b..356d3e0 100644 --- a/web/newWebsite/questions-main-class.js +++ b/web/newWebsite/questions-main-class.js @@ -1,27 +1,27 @@ -// class QuestionCreationClass { -// constructor(data, label) { -// this.data = data; -// this.label = label; -// } +class QuestionCreationClass { + constructor(data, label) { + this.data = data; + this.label = label; + } -// get questionData() { -// return { -// labels: this.label, -// datasets: [{ -// label: 'Responses', -// data: this.data, -// backgroundColor: [ -// 'rgba(255, 99, 132, 0.2)', -// 'rgba(54, 162, 235, 0.2)', -// 'rgba(255, 206, 86, 0.2)' -// ], -// borderColor: [ -// 'rgba(255, 99, 132, 1)', -// 'rgba(54, 162, 235, 1)', -// 'rgba(255, 206, 86, 1)' -// ], -// borderWidth: 1 -// }] -// }; -// } -// } \ No newline at end of file + get questionData() { + return { + labels: this.label, + datasets: [{ + label: 'Responses', + data: this.data, + backgroundColor: [ + 'rgba(255, 99, 132, 0.2)', + 'rgba(54, 162, 235, 0.2)', + 'rgba(255, 206, 86, 0.2)' + ], + borderColor: [ + 'rgba(255, 99, 132, 1)', + 'rgba(54, 162, 235, 1)', + 'rgba(255, 206, 86, 1)' + ], + borderWidth: 1 + }] + }; + } +} \ No newline at end of file diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index 747707a..145523f 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -1,78 +1,27 @@ -class QuestionCreationClass { - constructor(data, label) { - this.data = data; - this.label = label; - } +let dummydata1 = [40, 30, 20]; +let questionOptionsDummy1 = ['disgusting','clean', 'fine' ]; - get questionData() { - return { - labels: this.label, - datasets: [{ - label: 'Responses', - data: this.data, - backgroundColor: [ - 'rgba(255, 99, 132, 0.2)', - 'rgba(54, 162, 235, 0.2)', - 'rgba(255, 206, 86, 0.2)' - ], - borderColor: [ - 'rgba(255, 99, 132, 1)', - 'rgba(54, 162, 235, 1)', - 'rgba(255, 206, 86, 1)' - ], - borderWidth: 1 - }] - }; - } -} +let dummydata2 = [25, 35, 40]; +let questionOptionsDummy2 = ['Option A', 'Option B', 'Option C']; -const question1Data = { - labels: ['Option A', 'Option B', 'Option C'], - datasets: [{ - label: 'Responses', - data: [40, 30, 20], - backgroundColor: [ - 'rgba(255, 99, 132, 0.2)', - 'rgba(54, 162, 235, 0.2)', - 'rgba(255, 206, 86, 0.2)' - ], - borderColor: [ - 'rgba(255, 99, 132, 1)', - 'rgba(54, 162, 235, 1)', - 'rgba(255, 206, 86, 1)' - ], - borderWidth: 1 - }] -}; +let dummydata3 = [30, 20, 20]; +let questionOptionsDummy3 = ['Option A', 'Option B', 'Option C']; -let dummydata = [30, 20, 20]; -let questionOptionsDummy = ['Option A', 'Option B', 'Option C']; +let dummydata4 = [30, 20, 20]; +let questionOptionsDummy4 = ['Option A', 'Option B', 'Option C']; -const question3Data = new QuestionCreationClass(dummydata, questionOptionsDummy); +let dummydata5 = [30, 20, 20]; +let questionOptionsDummy5 = ['Option A', 'Option B', 'Option C']; -const question2Data = { - labels: ['Option A', 'Option B', 'Option C'], - datasets: [{ - label: 'Responses', - data: [25, 35, 40], - backgroundColor: [ - 'rgba(255, 99, 132, 0.2)', - 'rgba(54, 162, 235, 0.2)', - 'rgba(255, 206, 86, 0.2)' - ], - borderColor: [ - 'rgba(255, 99, 132, 1)', - 'rgba(54, 162, 235, 1)', - 'rgba(255, 206, 86, 1)' - ], - borderWidth: 1 - }] -}; +const question1Data = new QuestionCreationClass(dummydata1,questionOptionsDummy1) +const question2Data = new QuestionCreationClass(dummydata2,questionOptionsDummy2) +const question3Data = new QuestionCreationClass(dummydata3, questionOptionsDummy3); +const question4Data = new QuestionCreationClass(dummydata4, questionOptionsDummy4); +const question5Data = new QuestionCreationClass(dummydata5, questionOptionsDummy5); -// Chart configurations for each question const chartConfig1 = { type: 'pie', - data: question1Data, + data: question1Data.questionData, options: { responsive: true, legend: { @@ -91,7 +40,7 @@ const chartConfig1 = { const chartConfig2 = { type: 'pie', - data: question2Data, + data: question2Data.questionData, options: { responsive: true, legend: { @@ -127,6 +76,44 @@ const chartConfig3 = { } }; +const chartConfig4 = { + type: 'pie', + data: question4Data.questionData, + options: { + responsive: true, + legend: { + position: 'top', + }, + title: { + display: true, + text: 'Question 4 Responses' + }, + animation: { + animateScale: true, + animateRotate: true + } + } +}; + +const chartConfig5 = { + type: 'pie', + data: question5Data.questionData, + options: { + responsive: true, + legend: { + position: 'top', + }, + title: { + display: true, + text: 'Question 5 Responses' + }, + animation: { + animateScale: true, + animateRotate: true + } + } +}; + // Create the charts const ctx1 = document.getElementById('chart1').getContext('2d'); const myChart1 = new Chart(ctx1, chartConfig1); @@ -137,3 +124,8 @@ const myChart2 = new Chart(ctx2, chartConfig2); const ctx3 = document.getElementById('chart3').getContext('2d'); const myChart3 = new Chart(ctx3, chartConfig3); +const ctx4 = document.getElementById('chart4').getContext('2d'); +const myChart4 = new Chart(ctx4, chartConfig4); + +const ctx5 = document.getElementById('chart5').getContext('2d'); +const myChart5 = new Chart(ctx5, chartConfig5); From 9ba6a237f33db715840444e9dfa82834aa1bc636 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Mon, 1 Apr 2024 12:53:41 +0200 Subject: [PATCH 147/215] questionawnsers updated. --- web/newWebsite/questions-main.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index 145523f..8bdaafc 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -1,17 +1,17 @@ let dummydata1 = [40, 30, 20]; -let questionOptionsDummy1 = ['disgusting','clean', 'fine' ]; +let questionOptionsDummy1 = ['disgusting','clean', 'fine']; let dummydata2 = [25, 35, 40]; -let questionOptionsDummy2 = ['Option A', 'Option B', 'Option C']; +let questionOptionsDummy2 = ['disgusting', 'clean', 'normal']; let dummydata3 = [30, 20, 20]; -let questionOptionsDummy3 = ['Option A', 'Option B', 'Option C']; +let questionOptionsDummy3 = ['cold', 'perfect', 'hot']; let dummydata4 = [30, 20, 20]; -let questionOptionsDummy4 = ['Option A', 'Option B', 'Option C']; +let questionOptionsDummy4 = ['really crowded','not at all', 'its fine', ]; let dummydata5 = [30, 20, 20]; -let questionOptionsDummy5 = ['Option A', 'Option B', 'Option C']; +let questionOptionsDummy5 = ['no','yes', 'decently']; const question1Data = new QuestionCreationClass(dummydata1,questionOptionsDummy1) const question2Data = new QuestionCreationClass(dummydata2,questionOptionsDummy2) From 887e84c16c76b9a303450c29fb7d7407adbc247c Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 13:06:07 +0200 Subject: [PATCH 148/215] Update graph class and data processor --- web/newWebsite/graph-classes.js | 20 ++-- web/newWebsite/graph-main.js | 176 ++++++++++++++++---------------- 2 files changed, 97 insertions(+), 99 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index d5bce51..3e6e359 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -52,10 +52,10 @@ class Graph { this.humiArray.push(value); break; case "eCO2": - this.eco2Array.push(value); + this.eco2Array.push(value / 10); break; case "TVOC": - this.tvocArray.push(value); + this.tvocArray.push(value / 10); break; default: console.error("Invalid type"); @@ -64,16 +64,11 @@ class Graph { updateGraph() { let update = { - x: [[this.timeArray]], - y: [ - [this.tempArray], - [this.humiArray], - [this.eco2Array], - [this.tvocArray], - ], + x: [this.timeArray], + y: [this.tempArray, this.humiArray, this.eco2Array, this.tvocArray], }; - - Plotly.relayout(this.id, update); + + Plotly.update(this.id, update); } } @@ -126,11 +121,12 @@ class LiveGraph extends Graph { class DataProcessor { constructor(data) { this.data = data; + this.graph; } // You can add more filtering methods based on different criteria if needed update(data) { this.data = data; - this.graph; + console.log("Data updated"); console.log(data); } diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 8058f94..e07f628 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -1,6 +1,7 @@ // Sample data - you can replace this with your actual dataset const data = []; processor = new DataProcessor(); +let link; // Function to create checkbox with label function createCheckBox(id, label) { @@ -16,106 +17,111 @@ function createCheckBox(id, label) { return { checkbox, checkboxLabel }; } -// Function to ceate filter container and all the input elements -function createFilterContainer() { - // Create HTML input elements for user input - const container = document.createElement("div"); - container.setAttribute("class", "container"); +// Create HTML input elements for user input +const container = document.createElement("div"); +container.setAttribute("class", "container"); - const dataTypesContainer = document.createElement("div"); - dataTypesContainer.setAttribute("class", "data-types"); +const dataTypesContainer = document.createElement("div"); +dataTypesContainer.setAttribute("class", "data-types"); - const temperatureCheckbox = createCheckBox("temperature", "Temperature"); - const humidityCheckbox = createCheckBox("humidity", "Humidity"); - const eco2Checkbox = createCheckBox("eco2", "eCO2"); - const tvocCheckbox = createCheckBox("tvoc", "TVOC"); +const temperatureCheckbox = createCheckBox("temperature", "Temperature"); +const humidityCheckbox = createCheckBox("humidity", "Humidity"); +const eco2Checkbox = createCheckBox("eco2", "eCO2"); +const tvocCheckbox = createCheckBox("tvoc", "TVOC"); - dataTypesContainer.appendChild(temperatureCheckbox.checkbox); - dataTypesContainer.appendChild(temperatureCheckbox.checkboxLabel); - dataTypesContainer.appendChild(humidityCheckbox.checkbox); - dataTypesContainer.appendChild(humidityCheckbox.checkboxLabel); - dataTypesContainer.appendChild(eco2Checkbox.checkbox); - dataTypesContainer.appendChild(eco2Checkbox.checkboxLabel); - dataTypesContainer.appendChild(tvocCheckbox.checkbox); - dataTypesContainer.appendChild(tvocCheckbox.checkboxLabel); - container.appendChild(dataTypesContainer); +dataTypesContainer.appendChild(temperatureCheckbox.checkbox); +dataTypesContainer.appendChild(temperatureCheckbox.checkboxLabel); +dataTypesContainer.appendChild(humidityCheckbox.checkbox); +dataTypesContainer.appendChild(humidityCheckbox.checkboxLabel); +dataTypesContainer.appendChild(eco2Checkbox.checkbox); +dataTypesContainer.appendChild(eco2Checkbox.checkboxLabel); +dataTypesContainer.appendChild(tvocCheckbox.checkbox); +dataTypesContainer.appendChild(tvocCheckbox.checkboxLabel); +container.appendChild(dataTypesContainer); - const filterButton = document.createElement("button"); - filterButton.textContent = "Filter Data"; - filterButton.setAttribute("class", "filter-button"); - filterButton.addEventListener("click", () => { - const startDate = new Date(document.getElementById("start-date").value); - const endDate = new Date(document.getElementById("end-date").value); - const selectedNodes = document - .getElementById("node-input") - .value.split(",") - .map((node) => node.trim()); +const filterButton = document.createElement("button"); +filterButton.textContent = "Filter Data"; +filterButton.setAttribute("class", "filter-button"); +filterButton.addEventListener("click", () => { + const startDate = document.getElementById("start-date").value + const endDate = document.getElementById("end-date").value + const selectedNodes = document + .getElementById("node-input") + .value.split(",") + .map((node) => node.trim()); - const selectedFields = []; - const checkboxes = [ - temperatureCheckbox, - humidityCheckbox, - eco2Checkbox, - tvocCheckbox, - ]; - checkboxes.forEach((checkbox) => { - if (checkbox.checkbox.checked) { - selectedFields.push(checkbox.checkbox.id); - } - }); - - const filteredData = filterData( - data, - startDate, - endDate, - selectedNodes, - selectedFields - ); - console.log(filteredData); + const selectedFields = []; + const checkboxes = [ + temperatureCheckbox, + humidityCheckbox, + eco2Checkbox, + tvocCheckbox, + ]; + checkboxes.forEach((checkbox) => { + if (checkbox.checkbox.checked) { + selectedFields.push(checkbox.checkbox.id); + } }); - const dateFilter = document.createElement("div"); - dateFilter.setAttribute("class", "date-filter"); + const filteredData = [ + startDate, + endDate, + selectedNodes, + selectedFields + ]; + console.log(filteredData); + console.log(startDate, endDate, selectedNodes); - const startDateInput = document.createElement("input"); - startDateInput.setAttribute("type", "datetime-local"); - startDateInput.setAttribute("id", "start-date"); - startDateInput.setAttribute("class", "input-field"); + generateLink(startDate, endDate, selectedNodes); + fetchData(); +}); - const endDateInput = document.createElement("input"); - endDateInput.setAttribute("type", "datetime-local"); - endDateInput.setAttribute("id", "end-date"); - endDateInput.setAttribute("class", "input-field"); +const dateFilter = document.createElement("div"); +dateFilter.setAttribute("class", "date-filter"); - dateFilter.appendChild(startDateInput); - dateFilter.appendChild(endDateInput); - container.appendChild(dateFilter); +const startDateInput = document.createElement("input"); +startDateInput.setAttribute("type", "datetime-local"); +startDateInput.setAttribute("id", "start-date"); +startDateInput.setAttribute("class", "input-field"); - const nodeFilter = document.createElement("div"); - nodeFilter.setAttribute("class", "node-filter"); +const endDateInput = document.createElement("input"); +endDateInput.setAttribute("type", "datetime-local"); +endDateInput.setAttribute("id", "end-date"); +endDateInput.setAttribute("class", "input-field"); - const nodeInput = document.createElement("input"); - nodeInput.setAttribute("type", "text"); - nodeInput.setAttribute("placeholder", "Enter node (A, B, etc.)"); - nodeInput.setAttribute("id", "node-input"); - nodeInput.setAttribute("class", "input-field"); +dateFilter.appendChild(startDateInput); +dateFilter.appendChild(endDateInput); +container.appendChild(dateFilter); - nodeFilter.appendChild(nodeInput); - container.appendChild(nodeFilter); +const nodeFilter = document.createElement("div"); +nodeFilter.setAttribute("class", "node-filter"); - container.appendChild(filterButton); +const nodeInput = document.createElement("input"); +nodeInput.setAttribute("type", "text"); +nodeInput.setAttribute("placeholder", "Enter node (A, B, etc.)"); +nodeInput.setAttribute("id", "node-input"); +nodeInput.setAttribute("class", "input-field"); - document.body.appendChild(container); -} +nodeFilter.appendChild(nodeInput); +container.appendChild(nodeFilter); + +container.appendChild(filterButton); + +document.body.appendChild(container); // Function to get the link for the get request -function getLink(startDate, endDate, node) { - return link = "http://getMeasurements?dateStart=" + startDate.toISOString() + - "&dateEnd=" + endDate.toISOString() + - "&node=" + node; +function generateLink(dateStart, dateEnd, node) { + const baseUrl = 'http://145.92.8.114/getMeasurements'; + const formattedDateStart = new Date(dateStart).toISOString().replace('T', '%20'); + const formattedDateEnd = new Date(dateEnd).toISOString().replace('T', '%20'); + + link = `${baseUrl}?dateStart=${formattedDateStart}&dateEnd=${formattedDateEnd}&node=${node}`; + + console.log(link); } +processor.makeGraph(); // Get request to fetch data from the server -function fetchData(link) { +function fetchData() { fetch(link) .then((response) => { if (!response.ok) { @@ -124,14 +130,10 @@ function fetchData(link) { return response.json(); }) .then((data) => { - createFilterContainer(); processor.update(data); - processor.makeGraph(); - processor.updateGraph(dateStart, dateEnd); + processor.updateGraph(); }) .catch((error) => { console.error("Error fetching data:", error); }); -} - -fetchData(); \ No newline at end of file +} \ No newline at end of file From 47a228123e2f0c51458be8745638838c578a9917 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Mon, 1 Apr 2024 13:17:15 +0200 Subject: [PATCH 149/215] moved files around --- .../Screen code/Screen-code-full/Screen-code.ino | 0 .../Adafruit_ST7796S_kbv-master.zip | Bin .../displayText.cpp | 0 .../displayText.h | 0 .../example.ino} | 0 .../headerFile.h | 0 6 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 arduino/Screen code/Screen-code-full/Screen-code.ino rename arduino/Screen code/{ => screen-code-class}/Adafruit_ST7796S_kbv-master.zip (100%) rename arduino/Screen code/{Screen-code-full => screen-code-class}/displayText.cpp (100%) rename arduino/Screen code/{Screen-code-full => screen-code-class}/displayText.h (100%) rename arduino/Screen code/{Screen-code-full/Screen-code-full.ino => screen-code-class/example.ino} (100%) rename arduino/Screen code/{Screen-code-full => screen-code-class}/headerFile.h (100%) diff --git a/arduino/Screen code/Screen-code-full/Screen-code.ino b/arduino/Screen code/Screen-code-full/Screen-code.ino new file mode 100644 index 0000000..e69de29 diff --git a/arduino/Screen code/Adafruit_ST7796S_kbv-master.zip b/arduino/Screen code/screen-code-class/Adafruit_ST7796S_kbv-master.zip similarity index 100% rename from arduino/Screen code/Adafruit_ST7796S_kbv-master.zip rename to arduino/Screen code/screen-code-class/Adafruit_ST7796S_kbv-master.zip diff --git a/arduino/Screen code/Screen-code-full/displayText.cpp b/arduino/Screen code/screen-code-class/displayText.cpp similarity index 100% rename from arduino/Screen code/Screen-code-full/displayText.cpp rename to arduino/Screen code/screen-code-class/displayText.cpp diff --git a/arduino/Screen code/Screen-code-full/displayText.h b/arduino/Screen code/screen-code-class/displayText.h similarity index 100% rename from arduino/Screen code/Screen-code-full/displayText.h rename to arduino/Screen code/screen-code-class/displayText.h diff --git a/arduino/Screen code/Screen-code-full/Screen-code-full.ino b/arduino/Screen code/screen-code-class/example.ino similarity index 100% rename from arduino/Screen code/Screen-code-full/Screen-code-full.ino rename to arduino/Screen code/screen-code-class/example.ino diff --git a/arduino/Screen code/Screen-code-full/headerFile.h b/arduino/Screen code/screen-code-class/headerFile.h similarity index 100% rename from arduino/Screen code/Screen-code-full/headerFile.h rename to arduino/Screen code/screen-code-class/headerFile.h From 9954d66af659cc4d76ae3ff5881ba36eddf5ad83 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 13:18:56 +0200 Subject: [PATCH 150/215] Refactor question creation and chart configuration --- web/newWebsite/questions-main.js | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index 8bdaafc..010d6bf 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -13,15 +13,22 @@ let questionOptionsDummy4 = ['really crowded','not at all', 'its fine', ]; let dummydata5 = [30, 20, 20]; let questionOptionsDummy5 = ['no','yes', 'decently']; -const question1Data = new QuestionCreationClass(dummydata1,questionOptionsDummy1) -const question2Data = new QuestionCreationClass(dummydata2,questionOptionsDummy2) -const question3Data = new QuestionCreationClass(dummydata3, questionOptionsDummy3); -const question4Data = new QuestionCreationClass(dummydata4, questionOptionsDummy4); -const question5Data = new QuestionCreationClass(dummydata5, questionOptionsDummy5); + +let questionArray = []; +let questionOptionsDummy = []; +let dummydata = []; + +for (let i = 0; i < 5; i++) { + dummydata.push(dummydata1, dummydata2, dummydata3, dummydata4, dummydata5); + questionOptionsDummy.push(questionOptionsDummy1, questionOptionsDummy2, questionOptionsDummy3, questionOptionsDummy4, questionOptionsDummy5); + + questionArray.push(new QuestionCreationClass(dummydata[i], questionOptionsDummy[i])); +} + const chartConfig1 = { type: 'pie', - data: question1Data.questionData, + data: questionArray[0].questionData, options: { responsive: true, legend: { @@ -40,7 +47,7 @@ const chartConfig1 = { const chartConfig2 = { type: 'pie', - data: question2Data.questionData, + data: questionArray[1].questionData, options: { responsive: true, legend: { @@ -59,7 +66,7 @@ const chartConfig2 = { const chartConfig3 = { type: 'pie', - data: question3Data.questionData, + data: questionArray[2].questionData, options: { responsive: true, legend: { @@ -78,7 +85,7 @@ const chartConfig3 = { const chartConfig4 = { type: 'pie', - data: question4Data.questionData, + data: questionArray[3].questionData, options: { responsive: true, legend: { @@ -97,7 +104,7 @@ const chartConfig4 = { const chartConfig5 = { type: 'pie', - data: question5Data.questionData, + data: questionArray[4].questionData, options: { responsive: true, legend: { From 8ff9a4e9e409939c58cf0e7beee34b6b1e9c45a6 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 13:19:00 +0200 Subject: [PATCH 151/215] Fix updateGraph() method in DataProcessor class --- web/newWebsite/graph-classes.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index 3e6e359..1889e51 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -67,7 +67,7 @@ class Graph { x: [this.timeArray], y: [this.tempArray, this.humiArray, this.eco2Array, this.tvocArray], }; - + Plotly.update(this.id, update); } } @@ -140,10 +140,12 @@ class DataProcessor { } updateGraph() { - for (let i = 0; i < this.data.length; i++) { - this.graph.updateData(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); - console.log(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); - this.graph.updateGraph(); + for (let i = 0; i < this.data.length; i + 3) { + for (let i = 0; i < 4; i++) { + this.graph.updateData(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); + console.log(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); + this.graph.updateGraph(); + } } } } From 38722052f3075eea920c5fe3f586d76ac2daf2de Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Mon, 1 Apr 2024 13:19:25 +0200 Subject: [PATCH 152/215] resizing the pie graphs. --- web/newWebsite/styles/questions-dashboard-styles.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/newWebsite/styles/questions-dashboard-styles.css b/web/newWebsite/styles/questions-dashboard-styles.css index eba538a..48fdf87 100644 --- a/web/newWebsite/styles/questions-dashboard-styles.css +++ b/web/newWebsite/styles/questions-dashboard-styles.css @@ -50,8 +50,8 @@ } .chart-container { - width: 80%; - margin: 20px auto; + width: 400px; + margin: 50px auto; } canvas { margin-bottom: 20px; From c539bb2edf06ff4ae8f8986aad19a32e64eeb289 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 13:50:49 +0200 Subject: [PATCH 153/215] Fix graph update bug and optimize data processing --- web/newWebsite/graph-classes.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index 1889e51..b3e222a 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -42,8 +42,7 @@ class Graph { } updateData(type, value, timestamp) { - this.timeArray.push(timestamp); - + // this.timeArray.push(timestamp); switch (type) { case "Temp": this.tempArray.push(value); @@ -67,7 +66,7 @@ class Graph { x: [this.timeArray], y: [this.tempArray, this.humiArray, this.eco2Array, this.tvocArray], }; - + console.log(update); Plotly.update(this.id, update); } } @@ -140,12 +139,13 @@ class DataProcessor { } updateGraph() { - for (let i = 0; i < this.data.length; i + 3) { - for (let i = 0; i < 4; i++) { - this.graph.updateData(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); - console.log(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); - this.graph.updateGraph(); + for (let i = 0; i < this.data.length; i++) { + if (i % 4 == 0){ + this.graph.timeArray.push(this.data[i].TimeStamp); } + this.graph.updateData(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); + console.log(this.data[i].Type, this.data[i].Value, this.data[i].TimeStamp); } - } + this.graph.updateGraph(); + } } From 96d10b32fdeaeca9bfcdac527fe785621567c7d7 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Mon, 1 Apr 2024 13:56:49 +0200 Subject: [PATCH 154/215] chart class, shortcuts, for loop update. --- web/newWebsite/questions-chart-class.js | 27 +++++ ...n-class.js => questions-creation-class.js} | 0 web/newWebsite/questions-dashboard.html | 3 +- web/newWebsite/questions-main.js | 109 ++---------------- 4 files changed, 40 insertions(+), 99 deletions(-) create mode 100644 web/newWebsite/questions-chart-class.js rename web/newWebsite/{questions-main-class.js => questions-creation-class.js} (100%) diff --git a/web/newWebsite/questions-chart-class.js b/web/newWebsite/questions-chart-class.js new file mode 100644 index 0000000..42467d9 --- /dev/null +++ b/web/newWebsite/questions-chart-class.js @@ -0,0 +1,27 @@ +class ChartConfigClass{ + constructor(data, text){ + this.data = data + this.text = text + } + + get chartConfig() { + return{ + type: 'pie', + data: this.data, + options: { + responsive: true, + legend: { + position: 'top', + }, + title: { + display: true, + text: this.text + }, + animation: { + animateScale: true, + animateRotate: true + } + } + } + } +} \ No newline at end of file diff --git a/web/newWebsite/questions-main-class.js b/web/newWebsite/questions-creation-class.js similarity index 100% rename from web/newWebsite/questions-main-class.js rename to web/newWebsite/questions-creation-class.js diff --git a/web/newWebsite/questions-dashboard.html b/web/newWebsite/questions-dashboard.html index 46dad55..3594c6b 100644 --- a/web/newWebsite/questions-dashboard.html +++ b/web/newWebsite/questions-dashboard.html @@ -47,7 +47,8 @@
    - + + \ No newline at end of file diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index 010d6bf..c9f996e 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -13,6 +13,8 @@ let questionOptionsDummy4 = ['really crowded','not at all', 'its fine', ]; let dummydata5 = [30, 20, 20]; let questionOptionsDummy5 = ['no','yes', 'decently']; +let chartConfigArray = []; +let textArray = []; let questionArray = []; let questionOptionsDummy = []; @@ -26,113 +28,24 @@ for (let i = 0; i < 5; i++) { } -const chartConfig1 = { - type: 'pie', - data: questionArray[0].questionData, - options: { - responsive: true, - legend: { - position: 'top', - }, - title: { - display: true, - text: 'Question 1 Responses' - }, - animation: { - animateScale: true, - animateRotate: true - } - } -}; +for (let i = 0; i < 5; i++){ + textArray.push('Question 1 Responses', 'Question 2 Responses', 'Question 3 Responses', 'Question 4 Responses', 'Question 5 Responses'); -const chartConfig2 = { - type: 'pie', - data: questionArray[1].questionData, - options: { - responsive: true, - legend: { - position: 'top', - }, - title: { - display: true, - text: 'Question 2 Responses' - }, - animation: { - animateScale: true, - animateRotate: true - } - } -}; - -const chartConfig3 = { - type: 'pie', - data: questionArray[2].questionData, - options: { - responsive: true, - legend: { - position: 'top', - }, - title: { - display: true, - text: 'Question 3 Responses' - }, - animation: { - animateScale: true, - animateRotate: true - } - } -}; - -const chartConfig4 = { - type: 'pie', - data: questionArray[3].questionData, - options: { - responsive: true, - legend: { - position: 'top', - }, - title: { - display: true, - text: 'Question 4 Responses' - }, - animation: { - animateScale: true, - animateRotate: true - } - } -}; - -const chartConfig5 = { - type: 'pie', - data: questionArray[4].questionData, - options: { - responsive: true, - legend: { - position: 'top', - }, - title: { - display: true, - text: 'Question 5 Responses' - }, - animation: { - animateScale: true, - animateRotate: true - } - } -}; + chartConfigArray.push(new ChartConfigClass(questionArray[i].questionData, textArray[i])); +} // Create the charts const ctx1 = document.getElementById('chart1').getContext('2d'); -const myChart1 = new Chart(ctx1, chartConfig1); +const myChart1 = new Chart(ctx1, chartConfigArray[0].chartConfig); const ctx2 = document.getElementById('chart2').getContext('2d'); -const myChart2 = new Chart(ctx2, chartConfig2); +const myChart2 = new Chart(ctx2, chartConfigArray[1].chartConfig); const ctx3 = document.getElementById('chart3').getContext('2d'); -const myChart3 = new Chart(ctx3, chartConfig3); +const myChart3 = new Chart(ctx3, chartConfigArray[2].chartConfig); const ctx4 = document.getElementById('chart4').getContext('2d'); -const myChart4 = new Chart(ctx4, chartConfig4); +const myChart4 = new Chart(ctx4, chartConfigArray[3].chartConfig); const ctx5 = document.getElementById('chart5').getContext('2d'); -const myChart5 = new Chart(ctx5, chartConfig5); +const myChart5 = new Chart(ctx5, chartConfigArray[4].chartConfig); From fdd4b647ec81cb59e8cf4729e2666492e206d24a Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 13:57:38 +0200 Subject: [PATCH 155/215] Update graph styles in CSS file --- web/newWebsite/styles/graph-styles.css | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index 70e4a11..370617f 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -50,7 +50,7 @@ body { border-radius: 10px; margin: 20px; padding: 20px; - width: 100%; + width: 90; box-sizing: border-box; } @@ -98,8 +98,7 @@ body { } .filter-button { - flex: 1; - width: 20%; + width: 10%; background-color: #007bff; color: white; padding: 10px; @@ -108,4 +107,10 @@ body { cursor: pointer; } +.js-plotly-plot { + align-self: center; + width: 95%; + height: 100%; + margin: 10px; +} /* Additional styling as needed */ From b0b1ed84c76c2a42b34cc41ee501d3b42502e029 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Mon, 1 Apr 2024 14:01:16 +0200 Subject: [PATCH 156/215] code comments added. --- web/newWebsite/questions-main.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index c9f996e..06bf47e 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -1,3 +1,4 @@ +//For now create dummy data to show on the website. let dummydata1 = [40, 30, 20]; let questionOptionsDummy1 = ['disgusting','clean', 'fine']; @@ -13,6 +14,7 @@ let questionOptionsDummy4 = ['really crowded','not at all', 'its fine', ]; let dummydata5 = [30, 20, 20]; let questionOptionsDummy5 = ['no','yes', 'decently']; +//make arrays to store data. let chartConfigArray = []; let textArray = []; @@ -20,6 +22,7 @@ let questionArray = []; let questionOptionsDummy = []; let dummydata = []; +//Go along the array's to fetch data, and push this in a class. for (let i = 0; i < 5; i++) { dummydata.push(dummydata1, dummydata2, dummydata3, dummydata4, dummydata5); questionOptionsDummy.push(questionOptionsDummy1, questionOptionsDummy2, questionOptionsDummy3, questionOptionsDummy4, questionOptionsDummy5); @@ -27,7 +30,7 @@ for (let i = 0; i < 5; i++) { questionArray.push(new QuestionCreationClass(dummydata[i], questionOptionsDummy[i])); } - +//Go allong another array to also give the class that creates the charts the data collected by the previous array. for (let i = 0; i < 5; i++){ textArray.push('Question 1 Responses', 'Question 2 Responses', 'Question 3 Responses', 'Question 4 Responses', 'Question 5 Responses'); From 650032fced8ba3f58a714856e28a6bf9e3660d5e Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 14:35:30 +0200 Subject: [PATCH 157/215] Refactor questions-dashboard.html and questions-dashboard-styles.css --- web/newWebsite/questions-dashboard.html | 15 +++++++++----- .../styles/questions-dashboard-styles.css | 20 +++++++++++++++---- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/web/newWebsite/questions-dashboard.html b/web/newWebsite/questions-dashboard.html index 3594c6b..5ce5f66 100644 --- a/web/newWebsite/questions-dashboard.html +++ b/web/newWebsite/questions-dashboard.html @@ -30,21 +30,26 @@
    +

    Question 1: How clean are the toilets?

    - +
    +

    Question 2: How clean is the study area?

    - +
    +

    Question 3: What do you think of the temperature in the study area?

    - +
    +

    Question 4: How crowded would you say the study area is?

    - +
    +

    Question 5: Is there enough help available on the 5th floor?

    - +
    diff --git a/web/newWebsite/styles/questions-dashboard-styles.css b/web/newWebsite/styles/questions-dashboard-styles.css index 48fdf87..b336bc0 100644 --- a/web/newWebsite/styles/questions-dashboard-styles.css +++ b/web/newWebsite/styles/questions-dashboard-styles.css @@ -4,6 +4,7 @@ } body { + flex-direction: row; padding-top: 5vw; display: flex; background-color: #dbd7d7; @@ -42,16 +43,27 @@ } #data-container { - width: 80%; - margin: 0 auto; padding: 20px; background-color: #f5f5f5; border: 1px solid #ccc; } .chart-container { - width: 400px; - margin: 50px auto; + justify-content: center; + align-self: start; + display: flex; + flex-direction: row; + flex-wrap: wrap; + width: 100%; +} + +.chart { + width: 30%; + margin: 20px; + padding: 20px; + background-color: #dbd7d7; + border: 3px solid #000; + border-radius: 30px; } canvas { margin-bottom: 20px; From 4ab7709c8203e2085ebb6bdbcef14845cfbc8f54 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 14:41:02 +0200 Subject: [PATCH 158/215] Refactor getData function and fix query bug --- server/Flask/main.py | 4 ++-- server/Flask/queries.py | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index 349cf99..029b1e0 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -49,9 +49,9 @@ def loginDB(): ) return mydb -def getData(node, dataType, MAC, dateStart, dateEnd): +def getData(node, dataType, MAC, dateStart, dateEnd, type): mydb = loginDB() - query = get_query(node, dataType, MAC, False, False, dateStart, dateEnd) + query = get_query(node, dataType, MAC, dateStart, dateEnd, type) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results diff --git a/server/Flask/queries.py b/server/Flask/queries.py index 2257b79..8c6d004 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -1,12 +1,12 @@ def get_query(node, dataType, MAC, questionID, replies, dateStart, dateEnd): - if dateStart and dateEnd and node: + if dateStart and dateEnd and node and dataType: + query = f'''SELECT * + FROM Measurement + WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}' AND NodeID = {node} AND Type IN {dataType} OR;''' + elif dateStart and dateEnd and node: query = f'''SELECT * FROM Measurement WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}' AND NodeID = {node};''' - elif dateStart and dateEnd: - query = f'''SELECT * - FROM Measurement - WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}';''' elif node and dataType: query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" elif node: From c789aec3730b6ce2d0b62b133a79b3c38b1b0c03 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 14:41:30 +0200 Subject: [PATCH 159/215] Add dataTypes parameter to generateLink function --- web/newWebsite/graph-main.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index e07f628..457fbce 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -110,12 +110,12 @@ container.appendChild(filterButton); document.body.appendChild(container); // Function to get the link for the get request -function generateLink(dateStart, dateEnd, node) { +function generateLink(dateStart, dateEnd, node, dataTypes) { const baseUrl = 'http://145.92.8.114/getMeasurements'; const formattedDateStart = new Date(dateStart).toISOString().replace('T', '%20'); const formattedDateEnd = new Date(dateEnd).toISOString().replace('T', '%20'); - link = `${baseUrl}?dateStart=${formattedDateStart}&dateEnd=${formattedDateEnd}&node=${node}`; + link = `${baseUrl}?dateStart=${formattedDateStart}&dateEnd=${formattedDateEnd}&node=${node}&dataTypes=${dataTypes}`; console.log(link); } From a53ecb1c96c4aa4844ffb8677ba09e0f42fa7234 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 16:09:17 +0200 Subject: [PATCH 160/215] yippee het werkt --- web/newWebsite/graph-classes.js | 6 ++++++ web/newWebsite/graph-main.js | 24 +++++++++++++++--------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index b3e222a..9700ab0 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -139,6 +139,12 @@ class DataProcessor { } updateGraph() { + this.graph.timeArray = []; + this.graph.tempArray = []; + this.graph.humiArray = []; + this.graph.eco2Array = []; + this.graph.tvocArray = []; + for (let i = 0; i < this.data.length; i++) { if (i % 4 == 0){ this.graph.timeArray.push(this.data[i].TimeStamp); diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 457fbce..3d10f42 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -24,10 +24,10 @@ container.setAttribute("class", "container"); const dataTypesContainer = document.createElement("div"); dataTypesContainer.setAttribute("class", "data-types"); -const temperatureCheckbox = createCheckBox("temperature", "Temperature"); -const humidityCheckbox = createCheckBox("humidity", "Humidity"); -const eco2Checkbox = createCheckBox("eco2", "eCO2"); -const tvocCheckbox = createCheckBox("tvoc", "TVOC"); +const temperatureCheckbox = createCheckBox("Temp", "Temperature"); +const humidityCheckbox = createCheckBox("Humi", "Humidity"); +const eco2Checkbox = createCheckBox("eCO2", "eCO2"); +const tvocCheckbox = createCheckBox("TVOC", "TVOC"); dataTypesContainer.appendChild(temperatureCheckbox.checkbox); dataTypesContainer.appendChild(temperatureCheckbox.checkboxLabel); @@ -55,24 +55,30 @@ filterButton.addEventListener("click", () => { temperatureCheckbox, humidityCheckbox, eco2Checkbox, - tvocCheckbox, + tvocCheckbox ]; + checkboxes.forEach((checkbox) => { if (checkbox.checkbox.checked) { - selectedFields.push(checkbox.checkbox.id); + selectedFields.push(String(checkbox.checkbox.id)); } }); + let selectedFieldsString = selectedFields.map(String); + + let formattedString = '(' + selectedFieldsString.map(item => `'${item}'`).join(', ') + ')'; + const filteredData = [ startDate, endDate, selectedNodes, - selectedFields + formattedString ]; + console.log(filteredData); console.log(startDate, endDate, selectedNodes); - generateLink(startDate, endDate, selectedNodes); + generateLink(startDate, endDate, selectedNodes, formattedString); fetchData(); }); @@ -115,7 +121,7 @@ function generateLink(dateStart, dateEnd, node, dataTypes) { const formattedDateStart = new Date(dateStart).toISOString().replace('T', '%20'); const formattedDateEnd = new Date(dateEnd).toISOString().replace('T', '%20'); - link = `${baseUrl}?dateStart=${formattedDateStart}&dateEnd=${formattedDateEnd}&node=${node}&dataTypes=${dataTypes}`; + link = `${baseUrl}?dateStart=${formattedDateStart}&dateEnd=${formattedDateEnd}&node=${node}&dataType=${dataTypes}`; console.log(link); } From 5aa494773e064b94f5a1e8875586a353be034491 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 16:09:20 +0200 Subject: [PATCH 161/215] Refactor getData function and fix SQL query in queries.py --- server/Flask/main.py | 6 ++++-- server/Flask/queries.py | 11 ++++++----- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index 029b1e0..87168c9 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -1,6 +1,7 @@ from flask import Flask, request, jsonify import mysql.connector from queries import * +import ast app = Flask(__name__) @app.route('/getMeasurements') @@ -49,9 +50,10 @@ def loginDB(): ) return mydb -def getData(node, dataType, MAC, dateStart, dateEnd, type): +def getData(node, dataType, MAC, dateStart, dateEnd): + dataTypeTuple = ast.literal_eval(dataType) mydb = loginDB() - query = get_query(node, dataType, MAC, dateStart, dateEnd, type) + query = get_query(node, dataTypeTuple, MAC, dateStart, dateEnd) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results diff --git a/server/Flask/queries.py b/server/Flask/queries.py index 8c6d004..0211c8d 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -2,11 +2,15 @@ def get_query(node, dataType, MAC, questionID, replies, dateStart, dateEnd): if dateStart and dateEnd and node and dataType: query = f'''SELECT * FROM Measurement - WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}' AND NodeID = {node} AND Type IN {dataType} OR;''' + WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}' AND NodeID = {node} AND Type IN ('{dataType}');''' elif dateStart and dateEnd and node: query = f'''SELECT * FROM Measurement WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}' AND NodeID = {node};''' + elif dateStart and dateEnd: + query = f'''SELECT * + FROM Measurement + WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}';''' elif node and dataType: query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" elif node: @@ -21,10 +25,7 @@ def get_query(node, dataType, MAC, questionID, replies, dateStart, dateEnd): query = f"SELECT * FROM Question" elif replies: query = f"SELECT * FROM Reply" - elif dateStart and dateEnd and node: - query = f'''SELECT * - FROM Measurement - WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}';''' + else: query = "SELECT * FROM `Measurement`" return query From 267bb7db9cc019d9ed06b932ea4769bd2ead75b9 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 16:13:38 +0200 Subject: [PATCH 162/215] Refactor getData and getNodeInfo functions --- server/Flask/main.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/server/Flask/main.py b/server/Flask/main.py index 87168c9..9fb35a1 100644 --- a/server/Flask/main.py +++ b/server/Flask/main.py @@ -1,7 +1,6 @@ from flask import Flask, request, jsonify import mysql.connector from queries import * -import ast app = Flask(__name__) @app.route('/getMeasurements') @@ -50,10 +49,9 @@ def loginDB(): ) return mydb -def getData(node, dataType, MAC, dateStart, dateEnd): - dataTypeTuple = ast.literal_eval(dataType) +def getData(node, dataTypes, MAC, dateStart, dateEnd): mydb = loginDB() - query = get_query(node, dataTypeTuple, MAC, dateStart, dateEnd) + query = get_query(node, dataTypes, MAC, False, False, dateStart, dateEnd) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results @@ -64,7 +62,7 @@ def getData(node, dataType, MAC, dateStart, dateEnd): def getNodeInfo(macAdress): mydb = loginDB() - query = get_query(False, False, macAdress, False, False) + query = get_query(False, False, macAdress, False, False, False, False) cursor = mydb.cursor(dictionary=True) # Enable dictionary output cursor.execute(query) result = cursor.fetchall() # Fetch the results From 61d67fc1e295493ee525474fdbaa872ab735bb15 Mon Sep 17 00:00:00 2001 From: sietse jonker Date: Mon, 1 Apr 2024 16:20:36 +0200 Subject: [PATCH 163/215] Update node input placeholder and adjust styles --- web/newWebsite/graph-main.js | 2 +- web/newWebsite/styles/settings-styles.css | 202 ++++++++++++++++++++++ 2 files changed, 203 insertions(+), 1 deletion(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 3d10f42..cd9760a 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -104,7 +104,7 @@ nodeFilter.setAttribute("class", "node-filter"); const nodeInput = document.createElement("input"); nodeInput.setAttribute("type", "text"); -nodeInput.setAttribute("placeholder", "Enter node (A, B, etc.)"); +nodeInput.setAttribute("placeholder", "Enter Node Name (* for all)"); nodeInput.setAttribute("id", "node-input"); nodeInput.setAttribute("class", "input-field"); diff --git a/web/newWebsite/styles/settings-styles.css b/web/newWebsite/styles/settings-styles.css index e69de29..f00eca5 100644 --- a/web/newWebsite/styles/settings-styles.css +++ b/web/newWebsite/styles/settings-styles.css @@ -0,0 +1,202 @@ +* { + box-sizing: border-box; + font-family: "Roboto", sans-serif; + + +} + +body { + display: flex; + justify-content: center; + margin: 0; + margin-top: 8vh; + background-color: #f0f0f0; + flex-direction: column; + background-color: #afafaf; + align-items: center; + +} + +.gaugeGroup { + width: 98vw; + height: auto; + display: flex; + flex-direction: column; /* Keep as column */ + justify-content: flex-start; + background-color: #333; + color: #fff; + padding: 10px; + border-radius: 50px; + border: 2px solid #333; + clear: both; + margin-bottom: 10px; + position: relative; +} + +.groupTitle { + width: 100%; + text-align: center; + font-size: 24px; +} + +.Node { + display: flex; + justify-content: space-around; + align-items: center; + width: 100%; + height: 100%; +} + +.Sensorvalues { + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-around; + flex-wrap: wrap; + width: 15%; + height: 110%; + background-color: #ddd; + color: #333; + padding: 10px; + margin: 10px; + border-radius: 10px; + text-align: center; + position: relative; + padding-top: 3vh; /* Increase bottom padding */ + +} + +.gaugeContainer { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + width: 100%; + height: 80%; /* Increase the height from 70% to 80% */ + position: relative; + overflow: visible; + height: 5vh; + margin-bottom: 1vh; + +} + +.gaugeImage { + width: 100%; + height: auto; + max-height: 120%; + object-fit: contain; + position: absolute; /* Make the image position absolute */ + top: 0; + left: 0; + z-index: 1; /* Make the image display below the needle */ + bottom: 0; +} + +.gaugeValue, .gaugeText { + width: 100%; + text-align: center; + font-size: 24px; + z-index: 2; +} + +.gaugeText { + width: 100%; + text-align: center; + font-size: 1.4vw; + z-index: 2; + position: absolute; + top: -1.4vw; /* Adjust this value to move the text further down */ + +} + +.arrowimg { + width: 3vh; + height: auto; + max-height: 100%; + object-fit: contain; + position: absolute; + top: 0.5vw; + right: 1.2vw; + z-index: 2; +} + +.valueContainer { + display: flex; + justify-content: center; + margin-top: 10px; +} + +#valueText { + font-size: 20px; +} + +.needle { + position: absolute; + bottom: -10%; /* Lower the needle to the bottom */ + left: 50%; + width: 2px; + height: 100%; + background-color: black; + transform-origin: bottom; + z-index: 3; /* Make the needle display above the image */ + transition: transform 0.1s ease-out; + +} + +.contentContainer { + display: flex; + flex-direction: row; /* Layout children side by side */ + width: 100%; + height: 100%; +} + +.navbar { + background-color: #333; + height: 60px; + display: flex; + align-items: center; + padding: 0 20px; + position: fixed; /* Fix the navbar at the top of the page */ + top: 0; /* Position it at the very top */ + width: 100%; /* Make it span the full width of the page */ + z-index: 1000; /* Make sure it's above all other elements */ +} + +.navbar-nav { + list-style: none; + display: flex; + align-items: center; + justify-content: center; /* Center the links horizontally */ + height: 100%; + width: 100%; /* Make it span the full width of the navbar */ +} + +.nav-item { + margin-right: 20px; +} + +.nav-link { + color: #fff; + text-decoration: none; + font-size: 18px; +} + +.plotly-container { + width: 100%; + float: bottom; + padding: 1vw; + align-items: center; + justify-content: center; + display: flex; +} + +.js-plotly-plot { + width: 90%; + height: 100%; +} + +.disabled { + opacity: 0; + height: 0; + +} \ No newline at end of file From 7b8f98cb3c94b7fa9237fa6d34fff5a96049cd8e Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Mon, 1 Apr 2024 16:49:44 +0200 Subject: [PATCH 164/215] Fully functioning screen code --- .../Screen-code-final/.theia/launch.json | 7 ++ .../Screen-code-final/Screen-code-final.ino | 115 ++++++++++++++++++ .../Screen-code-final/displayText.cpp | 106 ++++++++++++++++ .../Screen-code-final/displayText.h | 19 +++ .../Screen-code-final/headerFile.h | 22 ++++ .../Screen-code-full/Screen-code.ino | 0 6 files changed, 269 insertions(+) create mode 100644 arduino/Screen code/Screen-code-final/.theia/launch.json create mode 100644 arduino/Screen code/Screen-code-final/Screen-code-final.ino create mode 100644 arduino/Screen code/Screen-code-final/displayText.cpp create mode 100644 arduino/Screen code/Screen-code-final/displayText.h create mode 100644 arduino/Screen code/Screen-code-final/headerFile.h delete mode 100644 arduino/Screen code/Screen-code-full/Screen-code.ino diff --git a/arduino/Screen code/Screen-code-final/.theia/launch.json b/arduino/Screen code/Screen-code-final/.theia/launch.json new file mode 100644 index 0000000..8b8a0d4 --- /dev/null +++ b/arduino/Screen code/Screen-code-final/.theia/launch.json @@ -0,0 +1,7 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + "version": "0.2.0", + "configurations": [ + ] +} diff --git a/arduino/Screen code/Screen-code-final/Screen-code-final.ino b/arduino/Screen code/Screen-code-final/Screen-code-final.ino new file mode 100644 index 0000000..0f965ba --- /dev/null +++ b/arduino/Screen code/Screen-code-final/Screen-code-final.ino @@ -0,0 +1,115 @@ +#include "headerFile.h" + +int i = 0; +int questionID = 1; +char* Question[] = { + "How clean are the toilets?", + "How clean is the study area?", + "What do you think of the temperature in the study area?", + "How crowded would you say the study area is?", + "Is there enough help available?" +}; + +char* Answer[] = { + "clean, normal, disgusting", + "clean, normal, disgusting", + "hot, perfect, cold", + "not at all, its fine, really crowded", + "no, decently, yes" +}; + + Adafruit_ST7796S_kbv tft = Adafruit_ST7796S_kbv(TFT_CS, TFT_DC, MOSI, SCK, TFT_RST, MISO); + DisplayText displayText(tft); + +void setup() { + //buttonpins + pinMode(16, INPUT_PULLDOWN); + pinMode(17, INPUT_PULLDOWN); + pinMode(18, INPUT_PULLDOWN); + Serial.begin(9600); + + tft.begin(); // Initialize the display + tft.setRotation(3); // Set the rotation to horizontal + tft.fillScreen(ST7796S_BLACK); + displayText.writeText("Loading...", 3, 0, 200, 0, true, true); + websocketSetup(); +} + + +void loop() { + webSocket.loop(); + screenButtonHandler(); +} + +void websocketSetup(){ + WiFiMulti.addAP("iotroam", "vbK9gbDBIB"); + WiFiMulti.addAP("ObsidianAmstelveen", "drijversstraatmaastricht"); + + while(WiFiMulti.run() != WL_CONNECTED) { + delay(100); + } + + // server address, port and URL + webSocket.begin("145.92.8.114", 80, "/ws"); + // try ever 500 again if connection has failed + webSocket.setReconnectInterval(500); +} + +void screenButtonHandler(){ + + int redButton = digitalRead(16); + int whiteButton = digitalRead(17); + int greenButton = digitalRead(18); + + if (initialized) { + initialized = false; + tft.fillScreen(ST7796S_BLACK); + displayText.writeText(Question[i], 3, 0, 0, 0, true, false); + displayText.writeText(Answer[i], 3, 0, 200, 0, true, true); + } + + if (redButton == HIGH){ + sendData(questionID, "0"); + } + if (whiteButton == HIGH){ + sendData(questionID, "1"); + } + if (greenButton == HIGH){ + sendData(questionID, "2"); + } + + + + if (redButton || whiteButton || greenButton) { + i++; + questionID++; + if (questionID == 6){ + questionID = 1; + } + if (i == 5) { + i = 0; + } + tft.fillScreen(ST7796S_BLACK); + displayText.writeText(Question[i], 3, 0, 0, 0, true, false); + displayText.writeText(Answer[i], 3, 0, 200, 0, true, true); + } + +} + +void sendData(int question, String answer){ + webSocket.sendTXT("{\"node\": \"" + String(WiFi.macAddress()) + "\", \"Response\":\"" + String(answer) + "\",\"QuestionID\":\"" + String(question) + "\"}"); +} + +void hexdump(const void *mem, uint32_t len, uint8_t cols = 16) { + const uint8_t* src = (const uint8_t*) mem; + USE_SERIAL.printf("\n[HEXDUMP] Address: 0x%08X len: 0x%X (%d)", (ptrdiff_t)src, len, len); + for(uint32_t i = 0; i < len; i++) { + if(i % cols == 0) { + USE_SERIAL.printf("\n[0x%08X] 0x%08X: ", (ptrdiff_t)src, i); + } + USE_SERIAL.printf("%02X ", *src); + src++; + } + USE_SERIAL.printf("\n"); +} + diff --git a/arduino/Screen code/Screen-code-final/displayText.cpp b/arduino/Screen code/Screen-code-final/displayText.cpp new file mode 100644 index 0000000..88dfd70 --- /dev/null +++ b/arduino/Screen code/Screen-code-final/displayText.cpp @@ -0,0 +1,106 @@ +#include "displayText.h" +#include "Arduino.h" + +//constructor +DisplayText::DisplayText(Adafruit_ST7796S_kbv& tftDisplay) : tft(tftDisplay) { + tft.setCursor(0,0); + tft.fillScreen(ST7796S_BLACK); +} +//display text public function +void DisplayText::writeText(char* text, int size, int posX, int posY, int screenTime, bool center, bool bottom) { + if (center) { + posX = centerText(text); + } + // if (bottom) { + // posY = bottomText(text); + // } + tft.setCursor(posX, posY); + tft.setTextSize(size); + printWordsFull(text, bottom); + delay(screenTime); +} + +//to center the text when enabled in the public function +int DisplayText::centerText(char* text) { + int16_t x1, y1; + uint16_t w, h; + tft.getTextBounds(text, 0, 0, &x1, &y1, &w, &h); + int x = (tft.width() - w) / 2; + return x; +} + +// //to display the text at the bottom when enabled in the public function +// int DisplayText::bottomText(char* text) { +// int16_t x1, y1; +// uint16_t w, h; +// tft.getTextBounds(text, 0, 0, &x1, &y1, &w, &h); +// int y = (tft.height() - h); +// return y; +// } + +//attempt to write the text out in full (wip) +void DisplayText::printWordsFull(char* text, bool bottom) { + const int screenWidth = 480; // replace with your TFT display width + const int lineHeight = 30; // replace with your text line height + //the double copy is needed so it doesnt alter the original text + char* newtext1 = strdup(text); // Create a copy of the string for the first strtok_r + char* newtext2 = strdup(text); // Create a second copy for the second strtok_r + char* saveptr1, *saveptr2; + char* word = strtok_r(newtext1, " ", &saveptr1); + char line[100] = ""; + int lineCount = 0; + int lineWidth = 0; + + // Calculate total number of lines + int totalLines = 0; + char* tempWord = strtok_r(newtext2, " ", &saveptr2); + while (tempWord != NULL) { + int16_t x1, y1; + uint16_t w, h; + tft.getTextBounds(tempWord, 0, 0, &x1, &y1, &w, &h); + if (lineWidth + w > screenWidth && strlen(line) > 0) { + //if the line width is greater than the screen width, then we need to add a new line + totalLines++; + lineWidth = w; + //otherwise we just add the width of the word to the line width + } else { + lineWidth += w; + } + tempWord = strtok_r(NULL, " ", &saveptr2); + } + totalLines++; // Add one for the last line + + // Reset variables for actual printing + strcpy(line, ""); + lineWidth = 0; + + while (word != NULL) { + int16_t x1, y1; + uint16_t w, h; + tft.getTextBounds(word, 0, 0, &x1, &y1, &w, &h); + + if (lineWidth + w > screenWidth && strlen(line) > 0) { + int y = bottom ? tft.height() - lineHeight * (totalLines - lineCount) : lineHeight * lineCount; + tft.setCursor(0, y); + tft.println(line); + lineCount++; + strcpy(line, word); + strcat(line, " "); + lineWidth = w; + } else { + strcat(line, word); + strcat(line, " "); + lineWidth += w; + } + + word = strtok_r(NULL, " ", &saveptr1); + } + + // print the last line + int y = bottom ? tft.height() - lineHeight * (totalLines - lineCount) : lineHeight * lineCount; + tft.setCursor(0, y); + tft.println(line); + + free(newtext1); // Free the memory allocated by strdup + free(newtext2); // Free the memory allocated by strdup +} \ No newline at end of file diff --git a/arduino/Screen code/Screen-code-final/displayText.h b/arduino/Screen code/Screen-code-final/displayText.h new file mode 100644 index 0000000..9888068 --- /dev/null +++ b/arduino/Screen code/Screen-code-final/displayText.h @@ -0,0 +1,19 @@ +#ifndef DISPLAYTEXT_H +#define DISPLAYTEXT_H + +#include "Adafruit_GFX.h" +#include "Adafruit_ST7796S_kbv.h" + +class DisplayText { + private: + Adafruit_ST7796S_kbv& tft; + int centerText(char* text); + // int bottomText(char* text); + void printWordsFull(char* text, bool bottom); + + public: + DisplayText(Adafruit_ST7796S_kbv& tftDisplay); + void writeText(char* text, int size, int posX, int posY, int screenTime, bool center, bool bottom); +}; + +#endif \ No newline at end of file diff --git a/arduino/Screen code/Screen-code-final/headerFile.h b/arduino/Screen code/Screen-code-final/headerFile.h new file mode 100644 index 0000000..4f1152e --- /dev/null +++ b/arduino/Screen code/Screen-code-final/headerFile.h @@ -0,0 +1,22 @@ +//screen stuff +#include +#include "Adafruit_GFX.h" +#include "Adafruit_ST7796S_kbv.h" +#include "displayText.h" + +#define TFT_CS 14 +#define TFT_DC 13 +#define TFT_RST 12 +#define MOSI 11 +#define SCK 10 +#define MISO 9 + +//websocket stuff +#include +#include +#include +#define USE_SERIAL Serial + +WiFiMulti WiFiMulti; +WebSocketsClient webSocket; +bool initialized = true; \ No newline at end of file diff --git a/arduino/Screen code/Screen-code-full/Screen-code.ino b/arduino/Screen code/Screen-code-full/Screen-code.ino deleted file mode 100644 index e69de29..0000000 From a1ceb2d2c1b29044d6dbe52690d92ebf67b35982 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 11:22:44 +0200 Subject: [PATCH 165/215] copying classes python to document --- server/data.py | 73 ++++------------------------------ server/databaseGeneralClass.py | 26 ++++++++++++ server/enqueteNodeClass.py | 35 ++++++++++++++++ server/sensorNodeClass.py | 41 +++++++++++++++++++ 4 files changed, 110 insertions(+), 65 deletions(-) create mode 100644 server/databaseGeneralClass.py create mode 100644 server/enqueteNodeClass.py create mode 100644 server/sensorNodeClass.py diff --git a/server/data.py b/server/data.py index 3157c8a..d5865f9 100644 --- a/server/data.py +++ b/server/data.py @@ -1,64 +1,19 @@ import asyncio import websockets -import mysql.connector import json +from class_SensorNode import SensorNode +from class_enqueteNode import EnqueteNode +from classes_data import dbLogin sensorNodeArray = [] enqueteNodeArray = [] -async def processSensorNodeData(data, nodeID): - try: - mydb = dbLogin() - cursor = mydb.cursor() - - query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" - processedData = json.loads(data) - - processedTemp = (processedData['Temp']) - processedHumi = (processedData['Humi']) - processedeCO2 = (processedData['eCO2']) - processedTVOC = (processedData['TVOC']) - processedMAC = (processedData['node']) - - pushingDataArray = [(nodeID, "Temp", processedTemp), (nodeID, "Humi", processedHumi), (nodeID, "eCO2", processedeCO2), (nodeID, "TVOC", processedTVOC)] - for i in pushingDataArray: - print(query ,i) - cursor.execute(query, i) - mydb.commit() - - except mysql.connector.Error as err: - print("MySQL Error:", err) - finally: - cursor.close() - mydb.close() - -async def processEnqueteNodeData(data, nodeID): - try: - mydb = dbLogin() - cursor = mydb.cursor() - - query = "INSERT INTO `Reply` (Result, Node_NodeID, Question_QuestionID) VALUES (%s, %s, %s)" - processedData = json.loads(data) - - processedQuestionID = (processedData['QuestionID']) - processedResponse = (processedData['Response']) - - pushingDataArray = [(processedResponse, nodeID, processedQuestionID)] - - for i in pushingDataArray: - cursor.execute(query, i) - mydb.commit() - except mysql.connector.Error as err: - print("MySQL Error:", err) - finally: - cursor.close() - mydb.close() - async def receive_data(): uri = "ws://145.92.8.114/ws" try: async with websockets.connect(uri) as websocket: while True: + print("true") data = await websocket.recv() print(f"Received data: {data}") @@ -73,14 +28,13 @@ async def receive_data(): await getNodeInfo('sensor') await getNodeInfo('enquete') - print(sensorNodeArray) if macAdress in sensorNodeArray: nodeID = await getNodeID(macAdress) - await processSensorNodeData(data, nodeID) + await SensorNode.processSensorNodeData(data, nodeID) elif macAdress in enqueteNodeArray: nodeID = await getNodeID(macAdress) - await processEnqueteNodeData(data, nodeID) + await EnqueteNode.processEnqueteNodeData(data, nodeID) else: await newNode(macAdress, type) except websockets.ConnectionClosedError as e: @@ -89,17 +43,8 @@ async def receive_data(): async def main(): await receive_data() -def dbLogin(): - mydb = mysql.connector.connect( - host="localhost", - user="root", - password="Dingleberries69!", - database="NodeData" - ) - - return mydb - async def getNodeInfo(type): + print("getNodeINfo") global sensorNodeArray global enqueteNodeArray @@ -114,14 +59,12 @@ async def getNodeInfo(type): for tuples in nodeInfo: for item in tuples: nodeInfoArray.append(item) - print(nodeInfoArray) cursor.close() mydb.close() if type == 'sensor': sensorNodeArray = nodeInfoArray - print(sensorNodeArray) return sensorNodeArray elif type == 'enquete': @@ -143,7 +86,7 @@ async def getNodeID(macAdress): return nodeID async def newNode(mac, type): - id = (mac, type,) + id = (mac, type) mydb = dbLogin() cursor = mydb.cursor() diff --git a/server/databaseGeneralClass.py b/server/databaseGeneralClass.py new file mode 100644 index 0000000..e3c6407 --- /dev/null +++ b/server/databaseGeneralClass.py @@ -0,0 +1,26 @@ +import mysql.connector + +def dbLogin(): + mydb = mysql.connector.connect( + host="localhost", + user="root", + password="Dingleberries69!", + database="NodeData" + ) + return mydb + +class Node(): + def __init__(self, macAdress): + self.macAdress = macAdress + self.id = None + + def getNodeId(self): + id = (self.macAdress,) + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) + data = cursor.fetchall() + + for tuples in data: + for item in tuples: + self.id = item \ No newline at end of file diff --git a/server/enqueteNodeClass.py b/server/enqueteNodeClass.py new file mode 100644 index 0000000..f1243bf --- /dev/null +++ b/server/enqueteNodeClass.py @@ -0,0 +1,35 @@ +import mysql.connector +import json + +from classes_data import Node +from classes_data import dbLogin + +class EnqueteNode(Node): + query = "INSERT INTO `Reply` (Result, Node_NodeID, Question_QuestionID) VALUES (%s, %s, %s)" + + def __init__(self, macAdress, response, questionID): + super().__init__(macAdress) + self.response = response + self.questionID = questionID + + async def processEnqueteNodeData(data, nodeID): + try: + mydb = dbLogin() + cursor = mydb.cursor() + + processedData = json.loads(data) + + EnqueteNode.questionID = (processedData['QuestionID']) + EnqueteNode.response = (processedData['Response']) + + pushingDataArray = [(EnqueteNode.questionID, nodeID, EnqueteNode.response)] + + for i in pushingDataArray: + print(EnqueteNode.query, i) + cursor.execute(EnqueteNode.query, i) + mydb.commit() + except mysql.connector.Error as err: + print("MySQL Error:", err) + finally: + cursor.close() + mydb.close() \ No newline at end of file diff --git a/server/sensorNodeClass.py b/server/sensorNodeClass.py new file mode 100644 index 0000000..c3cb90d --- /dev/null +++ b/server/sensorNodeClass.py @@ -0,0 +1,41 @@ +import mysql.connector +import json + +from classes_data import Node +from classes_data import dbLogin + +class SensorNode(Node): + query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" + + def __init__(self, macAdress, temp, humi, eCO2, TVOC): + super().__init__(macAdress) + self.temperature = temp + self.humidity = humi + self.eCO2 = eCO2 + self.TVOC = TVOC + + async def processSensorNodeData(data, nodeID): + try: + mydb = dbLogin() + cursor = mydb.cursor() + + processedData = json.loads(data) + + SensorNode.temperature = (processedData['Temp']) + SensorNode.humidity = (processedData['Humi']) + SensorNode.eCO2 = (processedData['eCO2']) + SensorNode.TVOC = (processedData['TVOC']) + + + + pushingDataArray = [(nodeID, "Temp", SensorNode.temperature), (nodeID, "Humi", SensorNode.humidity), (nodeID, "eCO2", SensorNode.eCO2), (nodeID, "TVOC", SensorNode.TVOC)] + for i in pushingDataArray: + cursor.execute(SensorNode.query, i) + mydb.commit() + + + except mysql.connector.Error as err: + print("MySQL Error:", err) + finally: + cursor.close() + mydb.close() \ No newline at end of file From cac09770351150f568953a6e297c5dc9bd3d495b Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Tue, 2 Apr 2024 11:43:29 +0200 Subject: [PATCH 166/215] Add query to select all nodes when MAC is "*" and update background color in dashboard styles --- server/Flask/queries.py | 2 ++ web/newWebsite/styles/dashboard-styles.css | 7 ++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/server/Flask/queries.py b/server/Flask/queries.py index 0211c8d..c423711 100644 --- a/server/Flask/queries.py +++ b/server/Flask/queries.py @@ -13,6 +13,8 @@ def get_query(node, dataType, MAC, questionID, replies, dateStart, dateEnd): WHERE TimeStamp BETWEEN '{dateStart}' AND '{dateEnd}';''' elif node and dataType: query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'" + elif MAC == "*": + query = "SELECT * FROM Node" elif node: query = f"SELECT * FROM Measurement WHERE NodeID = {node}" elif dataType: diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index f00eca5..50eeefe 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -12,22 +12,23 @@ body { margin-top: 8vh; background-color: #f0f0f0; flex-direction: column; - background-color: #afafaf; + background-color: #fff; align-items: center; } .gaugeGroup { + box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); width: 98vw; height: auto; display: flex; flex-direction: column; /* Keep as column */ justify-content: flex-start; - background-color: #333; + background-color: #d3d3d3; color: #fff; padding: 10px; border-radius: 50px; - border: 2px solid #333; + /* border: 2px solid #333; */ clear: both; margin-bottom: 10px; position: relative; From 30d8543ff432aa1855dccbd58620575821356a62 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Tue, 2 Apr 2024 11:45:13 +0200 Subject: [PATCH 167/215] Update dashboard styles --- web/newWebsite/styles/dashboard-styles.css | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 50eeefe..f00eca5 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -12,23 +12,22 @@ body { margin-top: 8vh; background-color: #f0f0f0; flex-direction: column; - background-color: #fff; + background-color: #afafaf; align-items: center; } .gaugeGroup { - box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); width: 98vw; height: auto; display: flex; flex-direction: column; /* Keep as column */ justify-content: flex-start; - background-color: #d3d3d3; + background-color: #333; color: #fff; padding: 10px; border-radius: 50px; - /* border: 2px solid #333; */ + border: 2px solid #333; clear: both; margin-bottom: 10px; position: relative; From 6fb54d0b071274619e5aaf6daff0b64f6e1af98b Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 11:49:29 +0200 Subject: [PATCH 168/215] websocket, database, file made. --- server/{ => web-data-connection}/data.py | 0 server/{ => web-data-connection}/databaseGeneralClass.py | 0 server/{ => web-data-connection}/enqueteNodeClass.py | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename server/{ => web-data-connection}/data.py (100%) rename server/{ => web-data-connection}/databaseGeneralClass.py (100%) rename server/{ => web-data-connection}/enqueteNodeClass.py (100%) diff --git a/server/data.py b/server/web-data-connection/data.py similarity index 100% rename from server/data.py rename to server/web-data-connection/data.py diff --git a/server/databaseGeneralClass.py b/server/web-data-connection/databaseGeneralClass.py similarity index 100% rename from server/databaseGeneralClass.py rename to server/web-data-connection/databaseGeneralClass.py diff --git a/server/enqueteNodeClass.py b/server/web-data-connection/enqueteNodeClass.py similarity index 100% rename from server/enqueteNodeClass.py rename to server/web-data-connection/enqueteNodeClass.py From f044891ed87c06dbecb4034b3f0e5e981032fb47 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 11:49:51 +0200 Subject: [PATCH 169/215] little update, no changes --- server/{ => web-data-connection}/sensorNodeClass.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename server/{ => web-data-connection}/sensorNodeClass.py (100%) diff --git a/server/sensorNodeClass.py b/server/web-data-connection/sensorNodeClass.py similarity index 100% rename from server/sensorNodeClass.py rename to server/web-data-connection/sensorNodeClass.py From b9455a56a82a0f38c6c35e7497502c373a96258b Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Tue, 2 Apr 2024 13:05:31 +0200 Subject: [PATCH 170/215] change node name functionalitijd --- web/newWebsite/index.html | 18 ++++- web/newWebsite/styles/dashboard-styles.css | 36 +++++++++ web/newWebsite/text.html | 27 +++++++ web/newWebsite/text.js | 91 ++++++++++++++++++++++ web/styles.css | 2 - 5 files changed, 170 insertions(+), 4 deletions(-) create mode 100644 web/newWebsite/text.html create mode 100644 web/newWebsite/text.js diff --git a/web/newWebsite/index.html b/web/newWebsite/index.html index 52122e5..819f549 100644 --- a/web/newWebsite/index.html +++ b/web/newWebsite/index.html @@ -8,7 +8,9 @@ Gauges - + - + + + \ No newline at end of file diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 2985720..28bc043 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -5,6 +5,42 @@ } +/* +.editNodeInformation{ + margin-bottom: 60%; + display: flex; + justify-content: left; +} */ + +#editNode{ + display: flex; + justify-content: center; + /* align-items: center; */ + /* flex-direction: column; */ + /* border-radius: 5%; */ + /* border: 20px solid orange; */ + } + + /* #editNode { + width: 98vw; + height: 20vh; + display: flex; + justify-content: center; + /* flex-direction: column; Keep as column + /* justify-content: ; + align-items: center; + + background-color: #333; + color: #fff; + padding: 10px; + border-radius: 50px; + border: 2px solid #333; + clear: both; + margin-bottom: 10px; + position: relative; + float: top; +} */ + body { padding-top: 5vw; display: flex; diff --git a/web/newWebsite/text.html b/web/newWebsite/text.html new file mode 100644 index 0000000..e3d1ae5 --- /dev/null +++ b/web/newWebsite/text.html @@ -0,0 +1,27 @@ + + + + + + + Document + + + + + + + +
    +

    Status updating

    + + + + +
    + +
    + +
    + + \ No newline at end of file diff --git a/web/newWebsite/text.js b/web/newWebsite/text.js new file mode 100644 index 0000000..63e3853 --- /dev/null +++ b/web/newWebsite/text.js @@ -0,0 +1,91 @@ +apiGetAllNode = "http://145.92.8.114/getNodeInfo?macAdress=*" + +nodeDataArray = {}; + +var updateNode = document.getElementById('editNode'); +var locationInput = document.getElementById("inputLocation"); +var nameInput = document.getElementById("inputName"); +var select = document.getElementById('mySelect'); + +document.getElementById("inputName").placeholder = "Type new name here.."; +document.getElementById("inputLocation").placeholder = "Type new location here.."; + +updateNode.style.display = "none"; + +function settings() { + if (updateNode.style.display === "none") { + updateNode.style.display = "block"; + locationInput.value = ""; + nameInput.value = ""; + + fetch(apiGetAllNode) + .then(response => { + if (!response.ok) { + document.getElementById('text').innerHTML = "Error: Network response was not ok"; + throw new Error('Network response was not ok'); + } + document.getElementById('text').innerHTML = "Fetching data"; + return response.json(); + }) + .then(data => { + document.getElementById('text').innerHTML = "Data fetched"; + handleData(data); + }) + + } else { + updateNode.style.display = "none"; + } + +} +function handleData(JSONdata) { + var i, L = select.options.length - 1; + for (i = L; i >= 0; i--) { + select.remove(i); + } + + for (var i = 0; i < JSONdata.length; i++) { + var node = JSONdata[i].NodeID; + var name = JSONdata[i].Name; + var location = JSONdata[i].Location; + nodeDataArray[node] = { name: name, location: location }; + // Create new option element + var option = document.createElement('option'); + + // Set the value of the option + option.value = node; + + // Set the text of the option + option.text = name; + + // Add the option to the select + select.add(option); + } +} + +function changeText() { + var nodeName = encodeURIComponent(document.getElementById('inputName').value); + var nodeLocation = encodeURIComponent(document.getElementById('inputLocation').value); + + updateNodeInfo(select.value, nodeName, nodeLocation); + + var text = document.getElementById('text'); + + text.innerHTML = "Changes made" +} + +function updateNodeInfo(node, newNodeName, newNodeLocation) { + apiUrl = "http://145.92.8.114/updateData?node=" + node + "&name=" + newNodeName + "&location=" + newNodeLocation; + fetch(apiUrl) + .then(response => { + if (!response.ok) { + throw new Error('Network response was not ok'); + } + return response.json(); + }) + .catch(error => { + console.error('Error:', error); + }); +} + + + diff --git a/web/styles.css b/web/styles.css index 06cb22f..33ece6c 100644 --- a/web/styles.css +++ b/web/styles.css @@ -72,8 +72,6 @@ p1 { } - - .nodeData { display: flex; justify-content: left; From 93492db324f3ec08c1b2c505d4eeb750b4966279 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 13:25:39 +0200 Subject: [PATCH 171/215] documentation updated. --- docs/rpi-documentation/Databaseconnection.md | 2 +- server/web-data-connection/datatransfer.md | 128 ++++++++++++++++++ .../generalDatabaseFile.md | 0 3 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 server/web-data-connection/datatransfer.md create mode 100644 server/web-data-connection/generalDatabaseFile.md diff --git a/docs/rpi-documentation/Databaseconnection.md b/docs/rpi-documentation/Databaseconnection.md index 8f6dd7f..86cf47b 100644 --- a/docs/rpi-documentation/Databaseconnection.md +++ b/docs/rpi-documentation/Databaseconnection.md @@ -237,7 +237,7 @@ async def getNodeID(macAdress): This function is alot like the original one, with the only 2 changes being that it now also commits the nodeID and that the code to make a new node is now in a different function. -[Link to code](server\data.py) +[link to code](../../server/web-data-connection/data.py) ## The function to commit the data from the enqueteNodes diff --git a/server/web-data-connection/datatransfer.md b/server/web-data-connection/datatransfer.md new file mode 100644 index 0000000..d1f9547 --- /dev/null +++ b/server/web-data-connection/datatransfer.md @@ -0,0 +1,128 @@ +## The websocket -> database connection classes. +I have made several classes to make the database connection more clear and easyer to overlook. +In the file : "data.py" the primary connections are made to the websocket and the data recieved is split off to see which type of node came back. + +These types can be the "sensorNode"(the nodes that are located around the school) and the "enqueteNode"(a questionaire node which also collects data.). + +```py +#Importing all different files from all the nodes which are on different pages +import asyncio +import websockets +import json +from class_SensorNode import SensorNode +from class_enqueteNode import EnqueteNode +from classes_data import dbLogin + +#Making global variables +sensorNodeArray = [] +enqueteNodeArray = [] +``` +These variables need to be global to serve for several locations in the code. + +Here the code makes connection with the websocket. +```py +#Connection making with the websocket +async def receive_data(): + uri = "ws://145.92.8.114/ws" + try: + async with websockets.connect(uri) as websocket: + while True: + print("true") + data = await websocket.recv() + print(f"Received data: {data}") + + processedData = json.loads(data) + macAdress = processedData['node'] + + #A function to see if the node is one of two types. + if "Temp" in processedData: + type = 'sensor' + else: + type = 'enquete' + + await getNodeInfo('sensor') + await getNodeInfo('enquete') + + #get the node id and use it in functions seperate from this file. + if macAdress in sensorNodeArray: + nodeID = await getNodeID(macAdress) + await SensorNode.processSensorNodeData(data, nodeID) + elif macAdress in enqueteNodeArray: + nodeID = await getNodeID(macAdress) + await EnqueteNode.processEnqueteNodeData(data, nodeID) + else: + await newNode(macAdress, type) + # error message if smth went wrong + except websockets.ConnectionClosedError as e: + print("WebSocket connection closed:", e) + +#wait for data to come in. +async def main(): + await receive_data() +``` +Here we have a case of python's scoping, it couldn't read the variables correctly and by making them global the variables were now available for all functions. +```py +#by python's scuffed we had to use global variables. +async def getNodeInfo(type): + print("getNodeINfo") + global sensorNodeArray + global enqueteNodeArray + + #new array which is needed. + nodeInfoArray = [] + + id = (type,) + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT MAC FROM Node WHERE Type = %s""", id) + nodeInfo = cursor.fetchall() + + #go along each tuple in nodeinfo and each item in tuple, append(item) + for tuples in nodeInfo: + for item in tuples: + nodeInfoArray.append(item) + + cursor.close() + mydb.close() + + #if the type is a sensor do this, + if type == 'sensor': + sensorNodeArray = nodeInfoArray + return sensorNodeArray + + #else, this if statement + elif type == 'enquete': + enqueteNodeArray = nodeInfoArray + return enqueteNodeArray +``` +Here the database gets hinted to gain info of the existing nodes and find their macadress. +```py +async def getNodeID(macAdress): + id = (macAdress,) + #the db login is on a different page. + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) + data = cursor.fetchall() + + #again, all tuples in data, all items for all tuples, nodeID + for tuples in data: + for item in tuples: + nodeID = item + + return nodeID +``` +See if the node is existing, if not push it to the database. +```py +async def newNode(mac, type): + id = (mac, type) + #Same thing as before. + mydb = dbLogin() + + cursor = mydb.cursor() + cursor.execute("INSERT INTO `Node` (MAC, Type) VALUES (%s, %s)", id) + print("new node assigned") + mydb.commit() + +asyncio.run(main()) +``` diff --git a/server/web-data-connection/generalDatabaseFile.md b/server/web-data-connection/generalDatabaseFile.md new file mode 100644 index 0000000..e69de29 From 276ec2ed120c5657bd8ba41e41fd35bcac77aeb7 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Tue, 2 Apr 2024 13:32:35 +0200 Subject: [PATCH 172/215] Add UML diagram and classes for infrastructure V2 --- docs/brainstorm/UML-infrastrucuteV2.md | 72 ++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 docs/brainstorm/UML-infrastrucuteV2.md diff --git a/docs/brainstorm/UML-infrastrucuteV2.md b/docs/brainstorm/UML-infrastrucuteV2.md new file mode 100644 index 0000000..059a1e5 --- /dev/null +++ b/docs/brainstorm/UML-infrastrucuteV2.md @@ -0,0 +1,72 @@ +```mermaid +classDiagram + setup --> websocketSetup + loop --> screenButtonHandler + screenButtonHandler --> DisplayText + screenButtonHandler --> sendData + sendData --> Server + setup --> loop + python --> Server + Server --> website + + +namespace ESP32Questionbox { + class setup { + +int questionID + +char*[] Question + +char*[] Answer + +Adafruit_ST7796S_kbv tft + +DisplayText displayText + +void websocketSetup() + } + + class loop { + +void screenButtonHandler() + +void sendData(int question, String answer) + +void hexdump(const void* mem, uint32_t len, uint8_t cols) + } + + class websocketSetup { + +connectWifi() + +websocketConnect() + } + + class screenButtonHandler { + -bool redButton + -bool greenButton + -bool whiteButton + +displayText.writeText() + +sendData() + } + class DisplayText { + +void writeText(char* text, int size, int posX, int posY, int screenTime, bool center, bool bottom) + -int centerText(char* text) + -void printWordsFull(char* text, bool bottom) + } + class sendData{ + +webSocket.sendTXT + } +} +namespace server { + class python { + +databaseScript() + +websocketScript() + +flaskScript() + } + class Server { + +websocket() + +flask() + +mariaDB() + } +} + +namespace user { + class website { + + getLiveData() + + getHistoricalData() + + showData() + + } +} + +``` From 62206a6ce3db48bcb5539742e7339948e22f23d5 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Tue, 2 Apr 2024 13:47:04 +0200 Subject: [PATCH 173/215] Add fetch request to get node information and populate select dropdown --- web/newWebsite/graph-main.js | 40 +++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index cd9760a..6caadde 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -2,6 +2,7 @@ const data = []; processor = new DataProcessor(); let link; +nodeDataArray = {}; // Function to create checkbox with label function createCheckBox(id, label) { @@ -16,7 +17,41 @@ function createCheckBox(id, label) { return { checkbox, checkboxLabel }; } + fetch("http://145.92.8.114/getNodeInfo?macAdress=*") + .then(response => { + if (!response.ok) { + throw new Error('Network response was not ok'); + } + return response.json(); + }) + .then(data => { + handleData(data); + }) + +function handleData(JSONdata) { + select = document.getElementById('node-input'); + console.log(JSONdata); + for (var i = 0; i < JSONdata.length; i++) { + console.log(JSONdata[i]); + console.log(option) + var node = JSONdata[i].NodeID; + var name = JSONdata[i].Name; + var location = JSONdata[i].Location; + nodeDataArray[node] = { name: name, location: location }; + // Create new option element + var option = document.createElement('option'); + + // Set the value of the option + option.value = node; + + // Set the text of the option + option.text = name; + + // Add the option to the select + select.add(option); + } +} // Create HTML input elements for user input const container = document.createElement("div"); container.setAttribute("class", "container"); @@ -102,11 +137,10 @@ container.appendChild(dateFilter); const nodeFilter = document.createElement("div"); nodeFilter.setAttribute("class", "node-filter"); -const nodeInput = document.createElement("input"); -nodeInput.setAttribute("type", "text"); +const nodeInput = document.createElement("select"); +nodeInput.setAttribute("type", "select"); nodeInput.setAttribute("placeholder", "Enter Node Name (* for all)"); nodeInput.setAttribute("id", "node-input"); -nodeInput.setAttribute("class", "input-field"); nodeFilter.appendChild(nodeInput); container.appendChild(nodeFilter); From 8bb1a1c69fa64ef9145cc1881cbfdecb2c8ea541 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Tue, 2 Apr 2024 13:47:07 +0200 Subject: [PATCH 174/215] Add Questions link to navigation --- web/newWebsite/index.html | 3 +++ 1 file changed, 3 insertions(+) diff --git a/web/newWebsite/index.html b/web/newWebsite/index.html index 6346d81..e31a4ba 100644 --- a/web/newWebsite/index.html +++ b/web/newWebsite/index.html @@ -25,6 +25,9 @@ + From 5761e0a028abb17a0771296e3bcc2a6c0891bc2b Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 13:51:37 +0200 Subject: [PATCH 175/215] new documentations made. --- .../web-data-connection/enqueteClassFile.md | 40 +++++++++++++++++++ .../generalDatabaseFile.md | 33 +++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 server/web-data-connection/enqueteClassFile.md diff --git a/server/web-data-connection/enqueteClassFile.md b/server/web-data-connection/enqueteClassFile.md new file mode 100644 index 0000000..7c0f67c --- /dev/null +++ b/server/web-data-connection/enqueteClassFile.md @@ -0,0 +1,40 @@ +## Questionaire class +This file prmairly is dedicated to the class which gets its data form the questionare and pushes it to the database. + +```py +import mysql.connector +import json + +from classes_data import Node +from classes_data import dbLogin + +class EnqueteNode(Node): + query = "INSERT INTO `Reply` (Result, Node_NodeID, Question_QuestionID) VALUES (%s, %s, %s)" + + def __init__(self, macAdress, response, questionID): + super().__init__(macAdress) + self.response = response + self.questionID = questionID + + async def processEnqueteNodeData(data, nodeID): + try: + mydb = dbLogin() + cursor = mydb.cursor() + + processedData = json.loads(data) + + EnqueteNode.questionID = (processedData['QuestionID']) + EnqueteNode.response = (processedData['Response']) + + pushingDataArray = [(EnqueteNode.questionID, nodeID, EnqueteNode.response)] + + for i in pushingDataArray: + print(EnqueteNode.query, i) + cursor.execute(EnqueteNode.query, i) + mydb.commit() + except mysql.connector.Error as err: + print("MySQL Error:", err) + finally: + cursor.close() + mydb.close() +``` \ No newline at end of file diff --git a/server/web-data-connection/generalDatabaseFile.md b/server/web-data-connection/generalDatabaseFile.md index e69de29..81e7c49 100644 --- a/server/web-data-connection/generalDatabaseFile.md +++ b/server/web-data-connection/generalDatabaseFile.md @@ -0,0 +1,33 @@ +## General node file. +The general node file includes the database connecting and a node connection class. +This is done so the files don't go back and forth with the db connection, this otherwise would have caused problems. +```py +#importing a database library to connect to the database. +import mysql.connector + +def dbLogin(): + mydb = mysql.connector.connect( + host="localhost", + user="root", + password="**********", + database="NodeData" + ) + return mydb +# A general class which acts as a database connector and a node identifyer +class Node(): + + def __init__(self, macAdress): + self.macAdress = macAdress + self.id = None + + def getNodeId(self): + id = (self.macAdress,) + mydb = dbLogin() + cursor = mydb.cursor() + cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) + data = cursor.fetchall() + #again go along all tuple items. and asign them to the ID + for tuples in data: + for item in tuples: + self.id = item +``` \ No newline at end of file From 87246917161ab8f0dbca24ff5f16e67dcf728aeb Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Tue, 2 Apr 2024 14:15:31 +0200 Subject: [PATCH 176/215] Update graph creation and styling --- web/newWebsite/graph-classes.js | 4 ++-- web/newWebsite/graphs.html | 2 ++ web/newWebsite/styles/graph-styles.css | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index 9700ab0..491ecae 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -12,7 +12,7 @@ class Graph { makeGraph(line, lineColor, name) { let div = document.createElement("div"); div.setAttribute("id", this.id); - document.body.appendChild(div); + document.graphBody.appendChild(div); let lineArray; switch (line) { case "temp": @@ -135,7 +135,7 @@ class DataProcessor { this.graph.makeGraph("temp", "red", "Temperature"); this.graph.makeGraph("humi", "blue", "Humidity"); this.graph.makeGraph("eco2", "green", "eCO2"); - this.graph.makeGraph("tvoc", "#F5G644", "TVOC"); + this.graph.makeGraph("tvoc", "black", "TVOC"); } updateGraph() { diff --git a/web/newWebsite/graphs.html b/web/newWebsite/graphs.html index d4b62cc..18f4f4e 100644 --- a/web/newWebsite/graphs.html +++ b/web/newWebsite/graphs.html @@ -31,5 +31,7 @@ + +
    \ No newline at end of file diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index 370617f..5d88644 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -111,6 +111,8 @@ body { align-self: center; width: 95%; height: 100%; + border-radius: 20px; + border: 2px solid #000; margin: 10px; } /* Additional styling as needed */ From b6c2bdb4a4f2b3c6fb2ed6160cc1a0d95062b267 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 15:32:45 +0200 Subject: [PATCH 177/215] More documentation about classes. --- .../web-data-connection/enqueteClassFile.md | 25 +++++++++++++------ .../web-data-connection/enqueteNodeClass.py | 7 +++--- 2 files changed, 21 insertions(+), 11 deletions(-) diff --git a/server/web-data-connection/enqueteClassFile.md b/server/web-data-connection/enqueteClassFile.md index 7c0f67c..7ab0c54 100644 --- a/server/web-data-connection/enqueteClassFile.md +++ b/server/web-data-connection/enqueteClassFile.md @@ -1,21 +1,27 @@ ## Questionaire class This file prmairly is dedicated to the class which gets its data form the questionare and pushes it to the database. - +This is done this way to make the code more visable and more clear. ```py +#Importing different librarys. import mysql.connector import json - +#importing different classes. from classes_data import Node from classes_data import dbLogin - +``` +Here a class is made to again provide more clear viewing and more reusability. +The +```py +#Node is between brackets to show that this class is a child class from the parent class "Node" class EnqueteNode(Node): - query = "INSERT INTO `Reply` (Result, Node_NodeID, Question_QuestionID) VALUES (%s, %s, %s)" - + #A private query to use later in a function. + __query = "INSERT INTO `Reply` (Result, Node_NodeID, Question_QuestionID) VALUES (%s, %s, %s)" + #use a super to get info from the parent class. def __init__(self, macAdress, response, questionID): super().__init__(macAdress) self.response = response self.questionID = questionID - + #making a database connection to then load in the processed data. async def processEnqueteNodeData(data, nodeID): try: mydb = dbLogin() @@ -26,12 +32,15 @@ class EnqueteNode(Node): EnqueteNode.questionID = (processedData['QuestionID']) EnqueteNode.response = (processedData['Response']) + #an array with the data to push. pushingDataArray = [(EnqueteNode.questionID, nodeID, EnqueteNode.response)] + #push the data according to the query to the database. for i in pushingDataArray: - print(EnqueteNode.query, i) - cursor.execute(EnqueteNode.query, i) + print(EnqueteNode.__query, i) + cursor.execute(EnqueteNode.__query, i) mydb.commit() + #print an error. except mysql.connector.Error as err: print("MySQL Error:", err) finally: diff --git a/server/web-data-connection/enqueteNodeClass.py b/server/web-data-connection/enqueteNodeClass.py index f1243bf..6abf7aa 100644 --- a/server/web-data-connection/enqueteNodeClass.py +++ b/server/web-data-connection/enqueteNodeClass.py @@ -5,7 +5,8 @@ from classes_data import Node from classes_data import dbLogin class EnqueteNode(Node): - query = "INSERT INTO `Reply` (Result, Node_NodeID, Question_QuestionID) VALUES (%s, %s, %s)" + __query = "INSERT INTO `Reply` (Result, Node_NodeID, Question_QuestionID) VALUES (%s, %s, %s)" + def __init__(self, macAdress, response, questionID): super().__init__(macAdress) @@ -25,8 +26,8 @@ class EnqueteNode(Node): pushingDataArray = [(EnqueteNode.questionID, nodeID, EnqueteNode.response)] for i in pushingDataArray: - print(EnqueteNode.query, i) - cursor.execute(EnqueteNode.query, i) + print(EnqueteNode.__query, i) + cursor.execute(EnqueteNode.__query, i) mydb.commit() except mysql.connector.Error as err: print("MySQL Error:", err) From adab457fd9d9cdbd5e6b4d9a1c087cc744be70b9 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 15:41:45 +0200 Subject: [PATCH 178/215] sensornode updated docs. --- .../sensorNodeClassFile.md | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 server/web-data-connection/sensorNodeClassFile.md diff --git a/server/web-data-connection/sensorNodeClassFile.md b/server/web-data-connection/sensorNodeClassFile.md new file mode 100644 index 0000000..f4d7fc9 --- /dev/null +++ b/server/web-data-connection/sensorNodeClassFile.md @@ -0,0 +1,51 @@ +## Sensor Node class +This class is made to get the info of the sensor-nodes and send this to the database. +This is done this way to make the code more clear and readable. + +```py +#Import library's +import mysql.connector +import json +#Import classes and functions from different files. +from classes_data import Node +from classes_data import dbLogin +#A class to send data to the database. child class of "Node" +class SensorNode(Node): + #A private query only to be used in this class. + __query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" + + #all variables to be used. + def __init__(self, macAdress, temp, humi, eCO2, TVOC): + super().__init__(macAdress) + self.temperature = temp + self.humidity = humi + self.eCO2 = eCO2 + self.TVOC = TVOC + + #a function to connect to the database, grab the info which is given, and push this to the database. + async def processSensorNodeData(data, nodeID): + try: + mydb = dbLogin() + cursor = mydb.cursor() + + processedData = json.loads(data) + #The variables to give to the database. + SensorNode.temperature = (processedData['Temp']) + SensorNode.humidity = (processedData['Humi']) + SensorNode.eCO2 = (processedData['eCO2']) + SensorNode.TVOC = (processedData['TVOC']) + + #A array of the info to be given to the database in the correct format. + pushingDataArray = [(nodeID, "Temp", SensorNode.temperature), (nodeID, "Humi", SensorNode.humidity), (nodeID, "eCO2", SensorNode.eCO2), (nodeID, "TVOC", SensorNode.TVOC)] + #Go along all files of the array, and push it out to the database following the query. + for i in pushingDataArray: + cursor.execute(SensorNode.__query, i) + mydb.commit() + + + except mysql.connector.Error as err: + print("MySQL Error:", err) + finally: + cursor.close() + mydb.close() +``` \ No newline at end of file From badea73c4d2cf0080dcd3b66226402b4b0e5c2c1 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 15:55:10 +0200 Subject: [PATCH 179/215] Uml added, documetnation added --- server/web-data-connection/sensorNodeClass.py | 4 ++-- server/web-data-connection/umlpython.png | Bin 0 -> 19133 bytes 2 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 server/web-data-connection/umlpython.png diff --git a/server/web-data-connection/sensorNodeClass.py b/server/web-data-connection/sensorNodeClass.py index c3cb90d..0e22bb9 100644 --- a/server/web-data-connection/sensorNodeClass.py +++ b/server/web-data-connection/sensorNodeClass.py @@ -5,7 +5,7 @@ from classes_data import Node from classes_data import dbLogin class SensorNode(Node): - query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" + __query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" def __init__(self, macAdress, temp, humi, eCO2, TVOC): super().__init__(macAdress) @@ -30,7 +30,7 @@ class SensorNode(Node): pushingDataArray = [(nodeID, "Temp", SensorNode.temperature), (nodeID, "Humi", SensorNode.humidity), (nodeID, "eCO2", SensorNode.eCO2), (nodeID, "TVOC", SensorNode.TVOC)] for i in pushingDataArray: - cursor.execute(SensorNode.query, i) + cursor.execute(SensorNode.__query, i) mydb.commit() diff --git a/server/web-data-connection/umlpython.png b/server/web-data-connection/umlpython.png new file mode 100644 index 0000000000000000000000000000000000000000..721adcad35be409052186741cd39acb06044b7e5 GIT binary patch literal 19133 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 literal 0 HcmV?d00001 From c61cdaad1f329737e283c2d137818d092c457736 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 16:07:53 +0200 Subject: [PATCH 180/215] Hoofdletters update --- server/web-data-connection/datatransfer.md | 20 +++++++++---------- .../web-data-connection/enqueteClassFile.md | 6 +++--- .../generalDatabaseFile.md | 6 +++--- .../sensorNodeClassFile.md | 4 ++-- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/server/web-data-connection/datatransfer.md b/server/web-data-connection/datatransfer.md index d1f9547..0304d65 100644 --- a/server/web-data-connection/datatransfer.md +++ b/server/web-data-connection/datatransfer.md @@ -43,7 +43,7 @@ async def receive_data(): await getNodeInfo('sensor') await getNodeInfo('enquete') - #get the node id and use it in functions seperate from this file. + #Get the node id and use it in functions seperate from this file. if macAdress in sensorNodeArray: nodeID = await getNodeID(macAdress) await SensorNode.processSensorNodeData(data, nodeID) @@ -52,23 +52,23 @@ async def receive_data(): await EnqueteNode.processEnqueteNodeData(data, nodeID) else: await newNode(macAdress, type) - # error message if smth went wrong + # Error message if smth went wrong except websockets.ConnectionClosedError as e: print("WebSocket connection closed:", e) -#wait for data to come in. +#Wait for data to come in. async def main(): await receive_data() ``` Here we have a case of python's scoping, it couldn't read the variables correctly and by making them global the variables were now available for all functions. ```py -#by python's scuffed we had to use global variables. +#By python's scuffed we had to use global variables. async def getNodeInfo(type): print("getNodeINfo") global sensorNodeArray global enqueteNodeArray - #new array which is needed. + #New array which is needed. nodeInfoArray = [] id = (type,) @@ -77,7 +77,7 @@ async def getNodeInfo(type): cursor.execute("""SELECT MAC FROM Node WHERE Type = %s""", id) nodeInfo = cursor.fetchall() - #go along each tuple in nodeinfo and each item in tuple, append(item) + #Go along each tuple in nodeinfo and each item in tuple, append(item) for tuples in nodeInfo: for item in tuples: nodeInfoArray.append(item) @@ -85,12 +85,12 @@ async def getNodeInfo(type): cursor.close() mydb.close() - #if the type is a sensor do this, + #If the type is a sensor do this, if type == 'sensor': sensorNodeArray = nodeInfoArray return sensorNodeArray - #else, this if statement + #Else, this if statement elif type == 'enquete': enqueteNodeArray = nodeInfoArray return enqueteNodeArray @@ -99,13 +99,13 @@ Here the database gets hinted to gain info of the existing nodes and find their ```py async def getNodeID(macAdress): id = (macAdress,) - #the db login is on a different page. + #The db login is on a different page. mydb = dbLogin() cursor = mydb.cursor() cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) data = cursor.fetchall() - #again, all tuples in data, all items for all tuples, nodeID + #Again, all tuples in data, all items for all tuples, nodeID for tuples in data: for item in tuples: nodeID = item diff --git a/server/web-data-connection/enqueteClassFile.md b/server/web-data-connection/enqueteClassFile.md index 7ab0c54..a89eb58 100644 --- a/server/web-data-connection/enqueteClassFile.md +++ b/server/web-data-connection/enqueteClassFile.md @@ -5,7 +5,7 @@ This is done this way to make the code more visable and more clear. #Importing different librarys. import mysql.connector import json -#importing different classes. +#Importing different classes. from classes_data import Node from classes_data import dbLogin ``` @@ -32,10 +32,10 @@ class EnqueteNode(Node): EnqueteNode.questionID = (processedData['QuestionID']) EnqueteNode.response = (processedData['Response']) - #an array with the data to push. + #An array with the data to push. pushingDataArray = [(EnqueteNode.questionID, nodeID, EnqueteNode.response)] - #push the data according to the query to the database. + #Push the data according to the query to the database. for i in pushingDataArray: print(EnqueteNode.__query, i) cursor.execute(EnqueteNode.__query, i) diff --git a/server/web-data-connection/generalDatabaseFile.md b/server/web-data-connection/generalDatabaseFile.md index 81e7c49..c82813d 100644 --- a/server/web-data-connection/generalDatabaseFile.md +++ b/server/web-data-connection/generalDatabaseFile.md @@ -2,7 +2,7 @@ The general node file includes the database connecting and a node connection class. This is done so the files don't go back and forth with the db connection, this otherwise would have caused problems. ```py -#importing a database library to connect to the database. +#Importing a database library to connect to the database. import mysql.connector def dbLogin(): @@ -15,7 +15,7 @@ def dbLogin(): return mydb # A general class which acts as a database connector and a node identifyer class Node(): - + def __init__(self, macAdress): self.macAdress = macAdress self.id = None @@ -26,7 +26,7 @@ class Node(): cursor = mydb.cursor() cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) data = cursor.fetchall() - #again go along all tuple items. and asign them to the ID + #Again go along all tuple items. and asign them to the ID for tuples in data: for item in tuples: self.id = item diff --git a/server/web-data-connection/sensorNodeClassFile.md b/server/web-data-connection/sensorNodeClassFile.md index f4d7fc9..db8f197 100644 --- a/server/web-data-connection/sensorNodeClassFile.md +++ b/server/web-data-connection/sensorNodeClassFile.md @@ -14,7 +14,7 @@ class SensorNode(Node): #A private query only to be used in this class. __query = "INSERT INTO `Measurement` (NodeID, Type, Value) VALUES (%s, %s, %s)" - #all variables to be used. + #All variables to be used. def __init__(self, macAdress, temp, humi, eCO2, TVOC): super().__init__(macAdress) self.temperature = temp @@ -22,7 +22,7 @@ class SensorNode(Node): self.eCO2 = eCO2 self.TVOC = TVOC - #a function to connect to the database, grab the info which is given, and push this to the database. + #A function to connect to the database, grab the info which is given, and push this to the database. async def processSensorNodeData(data, nodeID): try: mydb = dbLogin() From b69b0296281852e8a41e3b3841203706aeb612b0 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Tue, 2 Apr 2024 16:39:32 +0200 Subject: [PATCH 181/215] Add createDiv() method to Graph class and update graph-classes.js, graphs.html, and graph-styles.css --- web/newWebsite/graph-classes.js | 12 +++++++--- web/newWebsite/graphs.html | 2 -- web/newWebsite/styles/graph-styles.css | 24 +++++++++++++------ .../styles/questions-dashboard-styles.css | 1 + 4 files changed, 27 insertions(+), 12 deletions(-) diff --git a/web/newWebsite/graph-classes.js b/web/newWebsite/graph-classes.js index 491ecae..a432a36 100644 --- a/web/newWebsite/graph-classes.js +++ b/web/newWebsite/graph-classes.js @@ -8,11 +8,16 @@ class Graph { this.tvocArray = []; } + createDiv() { + let div = document.createElement("div"); + let graphDiv = document.createElement("div"); + div.setAttribute("class", "graphBody"); + graphDiv.setAttribute("id", this.id); + div.appendChild(graphDiv); + document.body.appendChild(div); + } // Function to create a graph makeGraph(line, lineColor, name) { - let div = document.createElement("div"); - div.setAttribute("id", this.id); - document.graphBody.appendChild(div); let lineArray; switch (line) { case "temp": @@ -132,6 +137,7 @@ class DataProcessor { makeGraph() { this.graph = new Graph(1); + this.graph.createDiv(); this.graph.makeGraph("temp", "red", "Temperature"); this.graph.makeGraph("humi", "blue", "Humidity"); this.graph.makeGraph("eco2", "green", "eCO2"); diff --git a/web/newWebsite/graphs.html b/web/newWebsite/graphs.html index 18f4f4e..d4b62cc 100644 --- a/web/newWebsite/graphs.html +++ b/web/newWebsite/graphs.html @@ -31,7 +31,5 @@ - -
    \ No newline at end of file diff --git a/web/newWebsite/styles/graph-styles.css b/web/newWebsite/styles/graph-styles.css index 5d88644..2d8a800 100644 --- a/web/newWebsite/styles/graph-styles.css +++ b/web/newWebsite/styles/graph-styles.css @@ -46,11 +46,12 @@ body { display: flex; flex-direction: row; align-items: center; - border: 2px solid #ccc; + align-self: center; + border: 3px solid #ccc; border-radius: 10px; margin: 20px; padding: 20px; - width: 90; + width: 95%; box-sizing: border-box; } @@ -108,11 +109,20 @@ body { } .js-plotly-plot { - align-self: center; - width: 95%; + width: 100%; height: 100%; - border-radius: 20px; - border: 2px solid #000; - margin: 10px; + align-self: center center; } /* Additional styling as needed */ + +.graphBody { + display: flex; + padding: 10px; + border: 3px solid #ccc; + border-radius: 10px; + justify-content: center; + width: 95%; + height: 100%; + align-content: center; + align-self: center; +} diff --git a/web/newWebsite/styles/questions-dashboard-styles.css b/web/newWebsite/styles/questions-dashboard-styles.css index b336bc0..0dcc484 100644 --- a/web/newWebsite/styles/questions-dashboard-styles.css +++ b/web/newWebsite/styles/questions-dashboard-styles.css @@ -65,6 +65,7 @@ border: 3px solid #000; border-radius: 30px; } + canvas { margin-bottom: 20px; } \ No newline at end of file From 24aaf29bce5180a0097237e415897bbea3c8643a Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 17:05:55 +0200 Subject: [PATCH 182/215] beginning with getting data --- web/newWebsite/questions-main.js | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index 06bf47e..8703471 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -1,5 +1,30 @@ //For now create dummy data to show on the website. -let dummydata1 = [40, 30, 20]; +let awa; + +data(); + + +async function data(){ +fetch("http://145.92.8.114/getQuestionData") +.then(response => { + if (!response.ok) { + throw new Error('Network response was not ok'); + } + return response.json(); +}) +.then(data => { + console.log(data); + let Q1Array = data.filter(item => item.Question_QuestionID == 1); + console.log(Q1Array); + let R1Array = Q1Array.filter(item => item.Result == 0); + awa = R1Array.length; + graph() +}) + +} +// for each(Result == 0) in +async function graph() { +let dummydata1 = [awa, 3, 5]; let questionOptionsDummy1 = ['disgusting','clean', 'fine']; let dummydata2 = [25, 35, 40]; @@ -52,3 +77,4 @@ const myChart4 = new Chart(ctx4, chartConfigArray[3].chartConfig); const ctx5 = document.getElementById('chart5').getContext('2d'); const myChart5 = new Chart(ctx5, chartConfigArray[4].chartConfig); +} \ No newline at end of file From 70c95e676ec47181227706d7d1e5ee6f4b88ee11 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Tue, 2 Apr 2024 17:10:26 +0200 Subject: [PATCH 183/215] for each loop for data graphs --- web/newWebsite/questions-main.js | 56 +++++++++++++++++++------------- 1 file changed, 34 insertions(+), 22 deletions(-) diff --git a/web/newWebsite/questions-main.js b/web/newWebsite/questions-main.js index 8703471..4326b92 100644 --- a/web/newWebsite/questions-main.js +++ b/web/newWebsite/questions-main.js @@ -4,39 +4,51 @@ let awa; data(); -async function data(){ -fetch("http://145.92.8.114/getQuestionData") -.then(response => { - if (!response.ok) { - throw new Error('Network response was not ok'); - } - return response.json(); -}) -.then(data => { - console.log(data); - let Q1Array = data.filter(item => item.Question_QuestionID == 1); - console.log(Q1Array); - let R1Array = Q1Array.filter(item => item.Result == 0); - awa = R1Array.length; - graph() -}) +async function data() { + fetch("http://145.92.8.114/getQuestionData") + .then(response => { + if (!response.ok) { + throw new Error('Network response was not ok'); + } + return response.json(); + }) + .then(data => { + console.log(data); -} + // Initialize an array to hold the counts for each question + let questionCounts = [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]; + + // Iterate over the data + for (let item of data) { + // Increment the count for the appropriate question and result + questionCounts[item.Question_QuestionID - 1][item.Result]++; + } + + // Log the counts for each question + for (let i = 0; i < questionCounts.length; i++) { + console.log(`Question ${i + 1} counts: ${questionCounts[i]}`); + } + + // Update the dummydata arrays + dummydata1 = questionCounts[0]; + dummydata2 = questionCounts[1]; + dummydata3 = questionCounts[2]; + dummydata4 = questionCounts[3]; + dummydata5 = questionCounts[4]; + + graph(); + }) +} // for each(Result == 0) in async function graph() { -let dummydata1 = [awa, 3, 5]; let questionOptionsDummy1 = ['disgusting','clean', 'fine']; -let dummydata2 = [25, 35, 40]; let questionOptionsDummy2 = ['disgusting', 'clean', 'normal']; -let dummydata3 = [30, 20, 20]; let questionOptionsDummy3 = ['cold', 'perfect', 'hot']; -let dummydata4 = [30, 20, 20]; let questionOptionsDummy4 = ['really crowded','not at all', 'its fine', ]; -let dummydata5 = [30, 20, 20]; let questionOptionsDummy5 = ['no','yes', 'decently']; //make arrays to store data. From 46f9ca12927276d0f59e3a14738759bcc20e07f2 Mon Sep 17 00:00:00 2001 From: Sam Hos Date: Tue, 2 Apr 2024 17:10:33 +0200 Subject: [PATCH 184/215] removed thingy --- docs/brainstorm/UML-infrastrucuteV2.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/brainstorm/UML-infrastrucuteV2.md b/docs/brainstorm/UML-infrastrucuteV2.md index 059a1e5..87ea245 100644 --- a/docs/brainstorm/UML-infrastrucuteV2.md +++ b/docs/brainstorm/UML-infrastrucuteV2.md @@ -15,7 +15,6 @@ namespace ESP32Questionbox { +int questionID +char*[] Question +char*[] Answer - +Adafruit_ST7796S_kbv tft +DisplayText displayText +void websocketSetup() } From 86193d35938f8e285bb336d34cc5faaf75255a65 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Tue, 2 Apr 2024 17:13:02 +0200 Subject: [PATCH 185/215] Update dashboard styles in CSS file --- web/newWebsite/styles/dashboard-styles.css | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 35fa91c..c0fbab1 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -46,9 +46,8 @@ body { justify-content: center; margin: 0; margin-top: 8vh; - background-color: #f0f0f0; flex-direction: column; - background-color: #afafaf; + background-color: #bfbfbf; align-items: center; } @@ -59,11 +58,11 @@ body { display: flex; flex-direction: column; /* Keep as column */ justify-content: flex-start; - background-color: #333; + background-color: #9f9f9f; color: #fff; padding: 10px; border-radius: 50px; - border: 2px solid #333; + border: 2px solid #CC2936; clear: both; margin-bottom: 10px; position: relative; @@ -99,7 +98,6 @@ body { text-align: center; position: relative; padding-top: 3vh; /* Increase bottom padding */ - } .gaugeContainer { @@ -119,7 +117,7 @@ body { .gaugeImage { width: 100%; height: auto; - max-height: 120%; + max-height: 140%; object-fit: contain; position: absolute; /* Make the image position absolute */ top: 0; @@ -187,7 +185,8 @@ body { } .navbar { - background-color: #333; + background-color: #bfbfbf; + border-bottom: 2px solid #CC2936; height: 60px; display: flex; align-items: center; From 5f426df0ed74726be37fb61b6089bed5b7038225 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 20:22:33 +0200 Subject: [PATCH 186/215] Main data file documentation done. --- server/web-data-connection/datatransfer.md | 41 ++++++++++++++++++---- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/server/web-data-connection/datatransfer.md b/server/web-data-connection/datatransfer.md index 0304d65..cb39ab2 100644 --- a/server/web-data-connection/datatransfer.md +++ b/server/web-data-connection/datatransfer.md @@ -1,5 +1,7 @@ ## The websocket -> database connection classes. I have made several classes to make the database connection more clear and easyer to overlook. +This here is the main file where the data for each function is collected and ready to be sent to the database. + In the file : "data.py" the primary connections are made to the websocket and the data recieved is split off to see which type of node came back. These types can be the "sensorNode"(the nodes that are located around the school) and the "enqueteNode"(a questionaire node which also collects data.). @@ -17,9 +19,17 @@ from classes_data import dbLogin sensorNodeArray = [] enqueteNodeArray = [] ``` -These variables need to be global to serve for several locations in the code. +These array's need to be global because of the several uses later in the code. These cannot be bound to a singular function. -Here the code makes connection with the websocket. +The following function is meant to connect to the websocket and after this, process the gained Json data from the socket. + +Once this is done get the info if the data comming from the websocket is from a "sensor-node" or a "questionairre-node". + +once this information is gained, decide if this new node is a not yet existing connection with the database or if it was already inserted. + +In the case that the node didn't connect to the database, a new node is made with this new MAC address. + +These functions are put in different classes for a better overview of the whole project and a better understanding of what function is supposed to do what. ```py #Connection making with the websocket async def receive_data(): @@ -60,7 +70,18 @@ async def receive_data(): async def main(): await receive_data() ``` -Here we have a case of python's scoping, it couldn't read the variables correctly and by making them global the variables were now available for all functions. +The following function is made to set the different node types appart, this is done by putting down these global variables. +These variables are doen this way because the python-scope could not reach inside some parts of the files. + +A bit further a array is made to holde the node info. this is so the information of the node can be sepperated and held. + +After the array, a type tuple is made. (A tuple is a type of info which acts in a way like a array. For more info visit https://www.w3schools.com/python/python_tuples.asp) + +Then another connection to the database is made to gather all existing mac-addresses. + +Then a for-loop is made to see if the incomming MAC is existing, if this isn't the case, add it to the array. + +After, if the given type from the previous function is a sensor-, or questionaire-node ```py #By python's scuffed we had to use global variables. async def getNodeInfo(type): @@ -71,10 +92,12 @@ async def getNodeInfo(type): #New array which is needed. nodeInfoArray = [] + # make a connection to the databasse, then gather all MAC-adresses from it. id = (type,) mydb = dbLogin() cursor = mydb.cursor() cursor.execute("""SELECT MAC FROM Node WHERE Type = %s""", id) + #Fetch all info(get all info) nodeInfo = cursor.fetchall() #Go along each tuple in nodeinfo and each item in tuple, append(item) @@ -95,11 +118,12 @@ async def getNodeInfo(type): enqueteNodeArray = nodeInfoArray return enqueteNodeArray ``` -Here the database gets hinted to gain info of the existing nodes and find their macadress. +The next function acts as a node ID fetcher, it searches the database for information regarding the nodeID's. + +Like the previous function, It adds the new ID id this is not yet existent. ```py async def getNodeID(macAdress): id = (macAdress,) - #The db login is on a different page. mydb = dbLogin() cursor = mydb.cursor() cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) @@ -112,15 +136,18 @@ async def getNodeID(macAdress): return nodeID ``` -See if the node is existing, if not push it to the database. +The following function will take the previous information and process it and push it to the database. + +First the connection, then the query, then insert the data into the query and send it off. ```py async def newNode(mac, type): id = (mac, type) - #Same thing as before. mydb = dbLogin() cursor = mydb.cursor() + #Insert will insert it into the given location in the database. cursor.execute("INSERT INTO `Node` (MAC, Type) VALUES (%s, %s)", id) + #A simple print to show that the process has been executed succesfully. print("new node assigned") mydb.commit() From 5d8bec404b5be6642c309fda3ed6b77858c0ca41 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 21:13:27 +0200 Subject: [PATCH 187/215] enquete class documentation + a bit of the others --- .../web-data-connection/enqueteClassFile.md | 47 +++++++++++++++---- .../generalDatabaseFile.md | 5 ++ .../sensorNodeClassFile.md | 5 ++ 3 files changed, 48 insertions(+), 9 deletions(-) diff --git a/server/web-data-connection/enqueteClassFile.md b/server/web-data-connection/enqueteClassFile.md index a89eb58..21821d3 100644 --- a/server/web-data-connection/enqueteClassFile.md +++ b/server/web-data-connection/enqueteClassFile.md @@ -1,6 +1,14 @@ ## Questionaire class -This file prmairly is dedicated to the class which gets its data form the questionare and pushes it to the database. -This is done this way to make the code more visable and more clear. +This File and class are dedicated to storing/using data that is related to the questionaire. This class is primairly used as a gateway for pushing data and loading data. + +By doing this a lot of space is saved on the main file and the readability wil increase. + +By doing this, it also solves the issues with the very precise naming and the often similar types of names. +This way it ensures no confusion on what the purpous of each segement is. + +First up this page imports different types of information, like the library's and the needed files and/or Node. + + ```py #Importing different librarys. import mysql.connector @@ -9,8 +17,19 @@ import json from classes_data import Node from classes_data import dbLogin ``` -Here a class is made to again provide more clear viewing and more reusability. -The +Here a Class is made as a child-class of the parent-class: "Node". + +This clas first makes a private variable, this being: "__query". +This is done so no other outside sources can interfere with this query and potentially cause problems down the line. + +After this the "__init__"function is called. +(In javascript this is known as the "constructor". +For further information visit https://www.w3schools.com/python/gloss_python_class_init.asp) + +Because this class is a child class, we want to use some functionality from the parent class. That is where the "super" comes in. This makes it so the class uses the values and propperties of the parent class. (for more information visit https://www.w3schools.com/python/python_inheritance.asp) + +The rest of the class contains a function in which the gatherd data +gets put into the database using the query and the gatherd data. ```py #Node is between brackets to show that this class is a child class from the parent class "Node" class EnqueteNode(Node): @@ -21,14 +40,25 @@ class EnqueteNode(Node): super().__init__(macAdress) self.response = response self.questionID = questionID +``` +The following function is meant to make a database connection, get the data from the websocket (this data will only be from the questionaire-node) +and send the gotten data to the database. + +The function starts with the database connection and calls uppon the websocket data. +It then creates variables with the data to put it in an array. + +This array then gets sorted and pushed thogether with the query to correctly sort it and push it to the database. + +In case of an error, it also asks for errors and prints it. +```py #making a database connection to then load in the processed data. async def processEnqueteNodeData(data, nodeID): try: mydb = dbLogin() cursor = mydb.cursor() - + #Getting the websocket data. processedData = json.loads(data) - + #Making variables of the different types of data. EnqueteNode.questionID = (processedData['QuestionID']) EnqueteNode.response = (processedData['Response']) @@ -37,13 +67,12 @@ class EnqueteNode(Node): #Push the data according to the query to the database. for i in pushingDataArray: - print(EnqueteNode.__query, i) cursor.execute(EnqueteNode.__query, i) mydb.commit() - #print an error. + #print an error. except mysql.connector.Error as err: print("MySQL Error:", err) finally: cursor.close() mydb.close() -``` \ No newline at end of file +``` diff --git a/server/web-data-connection/generalDatabaseFile.md b/server/web-data-connection/generalDatabaseFile.md index c82813d..d733fce 100644 --- a/server/web-data-connection/generalDatabaseFile.md +++ b/server/web-data-connection/generalDatabaseFile.md @@ -13,6 +13,11 @@ def dbLogin(): database="NodeData" ) return mydb +``` +The "__init__"function is called. +(In javascript this is known as the "constructor". +For further information visit https://www.w3schools.com/python/gloss_python_class_init.asp) +```py # A general class which acts as a database connector and a node identifyer class Node(): diff --git a/server/web-data-connection/sensorNodeClassFile.md b/server/web-data-connection/sensorNodeClassFile.md index db8f197..4c7413c 100644 --- a/server/web-data-connection/sensorNodeClassFile.md +++ b/server/web-data-connection/sensorNodeClassFile.md @@ -9,6 +9,11 @@ import json #Import classes and functions from different files. from classes_data import Node from classes_data import dbLogin +``` +After this the "__init__"function is called. +(In javascript this is known as the "constructor". +For further information visit https://www.w3schools.com/python/gloss_python_class_init.asp) +```py #A class to send data to the database. child class of "Node" class SensorNode(Node): #A private query only to be used in this class. From 355a2b4f75a8632c806c26b4f9c39f6fa0e09dc5 Mon Sep 17 00:00:00 2001 From: Bram Barbieri Date: Tue, 2 Apr 2024 22:50:28 +0200 Subject: [PATCH 188/215] documentation general data. --- .../generalDatabaseFile.md | 40 ++++++++++++++++--- 1 file changed, 35 insertions(+), 5 deletions(-) diff --git a/server/web-data-connection/generalDatabaseFile.md b/server/web-data-connection/generalDatabaseFile.md index d733fce..5d1b24a 100644 --- a/server/web-data-connection/generalDatabaseFile.md +++ b/server/web-data-connection/generalDatabaseFile.md @@ -1,11 +1,20 @@ ## General node file. -The general node file includes the database connecting and a node connection class. -This is done so the files don't go back and forth with the db connection, this otherwise would have caused problems. +This File includes several main (verry important) components: +The Node parent class and the database log- function. + +The database funcion is used in almost every class and almost every function, so I put it here in a centeral location. + +The reason it isn't in the main file is because the main file imports all classes and this function, but once the classes are called, this function can't be called up. So it needed to be in a file where all other files take information from and not put information in. + +The file begings with importing a library that handles the database connection. ```py #Importing a database library to connect to the database. import mysql.connector - +``` +Here the database log-in function is made, this allows functions to call for it and make a connection. +```py def dbLogin(): + #This variable is used as a latch point to connect to the database with the correct log-in. mydb = mysql.connector.connect( host="localhost", user="root", @@ -14,9 +23,19 @@ def dbLogin(): ) return mydb ``` -The "__init__"function is called. +After the function, a central class is made to act as a parent class for every other class that has something to do with the nodes and the data. + +The class has some interchangable variables and primairly asks the incomming data for its mac adress and looks for any similarities. + +It primairly gives the main MAC-address over to the child-classes so these can be used. + +This class might seem small, but is not to be underestimated. + +At the start of every class the "__init__" function is called. (In javascript this is known as the "constructor". For further information visit https://www.w3schools.com/python/gloss_python_class_init.asp) + +The parent node is able to be further evolved, but for now is able do always provide the node ID to all child-classes. ```py # A general class which acts as a database connector and a node identifyer class Node(): @@ -24,14 +43,25 @@ class Node(): def __init__(self, macAdress): self.macAdress = macAdress self.id = None +``` +The function below uses the infromation from the database to find the corresponding node ID from the gotten MAc-address. +It searches inside of the database and finds a match with the given MAC-address. + +It frist makes a connection with the database by calling the previous function, then it executes the given querry, and searches for the node ID corresponding with the inserted MAC-address. + +After this search, it inserts that given id into the ID variable. +```py def getNodeId(self): id = (self.macAdress,) + #loging in mydb = dbLogin() + #make a cursor. cursor = mydb.cursor() cursor.execute("""SELECT nodeID FROM Node WHERE MAC = %s""", id) + #get all the data data = cursor.fetchall() - #Again go along all tuple items. and asign them to the ID + #make a for-loop to go along all the tuples in the data, and then all items in the tupe and those items get put into the ID for tuples in data: for item in tuples: self.id = item From 50906649c25fa73a57bb6c17d3678ffba0df30a7 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 3 Apr 2024 10:12:25 +0200 Subject: [PATCH 189/215] Website changes --- web/newWebsite/index.html | 9 ++++++ web/newWebsite/styles/dashboard-styles.css | 15 ++++++++-- web/newWebsite/text.html | 2 -- web/newWebsite/text.js | 33 +++++++++++++--------- 4 files changed, 40 insertions(+), 19 deletions(-) diff --git a/web/newWebsite/index.html b/web/newWebsite/index.html index 6346d81..8a5c2f7 100644 --- a/web/newWebsite/index.html +++ b/web/newWebsite/index.html @@ -29,6 +29,15 @@ +
    +

    Status updating

    + + + + +
    + + diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 35fa91c..e406f83 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -12,6 +12,14 @@ justify-content: left; } */ +.nav-button { + background-color: #333; + color: #fff; + border: none; + cursor: pointer; + font-size: 17px; +} + #editNode{ display: flex; justify-content: center; @@ -21,13 +29,14 @@ /* border: 20px solid orange; */ } - /* #editNode { + #editNode { + margin-top: 1%; width: 98vw; height: 20vh; display: flex; justify-content: center; /* flex-direction: column; Keep as column - /* justify-content: ; + /* justify-content: ; */ align-items: center; background-color: #333; @@ -39,7 +48,7 @@ margin-bottom: 10px; position: relative; float: top; -} */ +} body { display: flex; diff --git a/web/newWebsite/text.html b/web/newWebsite/text.html index e3d1ae5..1783df8 100644 --- a/web/newWebsite/text.html +++ b/web/newWebsite/text.html @@ -8,8 +8,6 @@ - -
    diff --git a/web/newWebsite/text.js b/web/newWebsite/text.js index 63e3853..45856bd 100644 --- a/web/newWebsite/text.js +++ b/web/newWebsite/text.js @@ -17,26 +17,30 @@ function settings() { updateNode.style.display = "block"; locationInput.value = ""; nameInput.value = ""; - - fetch(apiGetAllNode) - .then(response => { - if (!response.ok) { - document.getElementById('text').innerHTML = "Error: Network response was not ok"; - throw new Error('Network response was not ok'); - } - document.getElementById('text').innerHTML = "Fetching data"; - return response.json(); - }) - .then(data => { - document.getElementById('text').innerHTML = "Data fetched"; - handleData(data); - }) + getNodeInfo(); } else { updateNode.style.display = "none"; } } + +function getNodeInfo() { + fetch(apiGetAllNode) + .then(response => { + if (!response.ok) { + document.getElementById('text').innerHTML = "Error: Network response was not ok"; + throw new Error('Network response was not ok'); + } + document.getElementById('text').innerHTML = "Fetching data"; + return response.json(); + }) + .then(data => { + document.getElementById('text').innerHTML = "Data fetched"; + handleData(data); + }) +} + function handleData(JSONdata) { var i, L = select.options.length - 1; for (i = L; i >= 0; i--) { @@ -71,6 +75,7 @@ function changeText() { var text = document.getElementById('text'); text.innerHTML = "Changes made" + getNodeInfo(); } function updateNodeInfo(node, newNodeName, newNodeLocation) { From e67764ee427df56d72a8217e8f72c3cc5db63805 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Wed, 3 Apr 2024 10:42:40 +0200 Subject: [PATCH 190/215] Fix variable name capitalization in main.js and clean up CSS styles in dashboard-styles.css --- web/newWebsite/main.js | 2 +- web/newWebsite/styles/dashboard-styles.css | 323 +++++++-------------- 2 files changed, 104 insertions(+), 221 deletions(-) diff --git a/web/newWebsite/main.js b/web/newWebsite/main.js index c5e1486..020df7b 100644 --- a/web/newWebsite/main.js +++ b/web/newWebsite/main.js @@ -54,7 +54,7 @@ async function handleIncomingData(data) { await nodeAdressHandler(data.node, Object.keys(data).filter(key => key !== 'node')); - let nodeName = nodeDict[data.node].name; + let nodeName = nodeDict[data.node].Name; let temperature = data.Temp; let humidity = data.Humi; let CO2 = data.eCO2; diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 571fc94..709025e 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -1,201 +1,18 @@ * { box-sizing: border-box; font-family: "Roboto", sans-serif; - - -} - -/* -.editNodeInformation{ - margin-bottom: 60%; - display: flex; - justify-content: left; -} */ - -.nav-button { - background-color: #333; - color: #fff; - border: none; - cursor: pointer; - font-size: 17px; -} - -#editNode{ - display: flex; - justify-content: center; - /* align-items: center; */ - /* flex-direction: column; */ - /* border-radius: 5%; */ - /* border: 20px solid orange; */ } - - #editNode { - margin-top: 1%; - width: 98vw; - height: 20vh; + + body { + padding-top: 5vw; display: flex; - justify-content: center; - /* flex-direction: column; Keep as column - /* justify-content: ; */ - align-items: center; - - background-color: #333; - color: #fff; - padding: 10px; - border-radius: 50px; - border: 2px solid #333; - clear: both; - margin-bottom: 10px; - position: relative; - float: top; -} - -body { - display: flex; - justify-content: center; + flex-direction: column; + background-color: #afafaf; margin: 0; - margin-top: 8vh; - flex-direction: column; - background-color: #bfbfbf; - align-items: center; - -} - -.gaugeGroup { - width: 98vw; - height: auto; - display: flex; - flex-direction: column; /* Keep as column */ - justify-content: flex-start; - background-color: #9f9f9f; - color: #fff; - padding: 10px; - border-radius: 50px; - border: 2px solid #CC2936; - clear: both; - margin-bottom: 10px; - position: relative; -} - -.groupTitle { - width: 100%; - text-align: center; - font-size: 24px; -} - -.Node { - display: flex; - justify-content: space-around; - align-items: center; - width: 100%; - height: 100%; -} - -.Sensorvalues { - display: flex; - flex-direction: column; - align-items: center; - justify-content: space-around; - flex-wrap: wrap; - width: 15%; - height: 110%; - background-color: #ddd; - color: #333; - padding: 10px; - margin: 10px; - border-radius: 10px; - text-align: center; - position: relative; - padding-top: 3vh; /* Increase bottom padding */ -} - -.gaugeContainer { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - width: 100%; - height: 80%; /* Increase the height from 70% to 80% */ - position: relative; - overflow: visible; - height: 5vh; - margin-bottom: 1vh; - -} - -.gaugeImage { - width: 100%; - height: auto; - max-height: 140%; - object-fit: contain; - position: absolute; /* Make the image position absolute */ - top: 0; - left: 0; - z-index: 1; /* Make the image display below the needle */ - bottom: 0; -} - -.gaugeValue, .gaugeText { - width: 100%; - text-align: center; - font-size: 24px; - z-index: 2; -} - -.gaugeText { - width: 100%; - text-align: center; - font-size: 1.4vw; - z-index: 2; - position: absolute; - top: -1.4vw; /* Adjust this value to move the text further down */ - -} - -.arrowimg { - width: 3vh; - height: auto; - max-height: 100%; - object-fit: contain; - position: absolute; - top: 0.5vw; - right: 1.2vw; - z-index: 2; -} - -.valueContainer { - display: flex; - justify-content: center; - margin-top: 10px; -} - -#valueText { - font-size: 20px; -} - -.needle { - position: absolute; - bottom: -10%; /* Lower the needle to the bottom */ - left: 50%; - width: 2px; - height: 100%; - background-color: black; - transform-origin: bottom; - z-index: 3; /* Make the needle display above the image */ - transition: transform 0.1s ease-out; - -} - -.contentContainer { - display: flex; - flex-direction: row; /* Layout children side by side */ - width: 100%; - height: 100%; -} - -.navbar { - background-color: #bfbfbf; - border-bottom: 2px solid #CC2936; + } + + .navbar { + background-color: #333; height: 60px; display: flex; align-items: center; @@ -204,43 +21,109 @@ body { top: 0; /* Position it at the very top */ width: 100%; /* Make it span the full width of the page */ z-index: 1000; /* Make sure it's above all other elements */ -} - -.navbar-nav { + } + + .navbar-nav { list-style: none; display: flex; align-items: center; justify-content: center; /* Center the links horizontally */ height: 100%; width: 100%; /* Make it span the full width of the navbar */ -} - -.nav-item { + } + + .nav-item { margin-right: 20px; -} - -.nav-link { + } + + .nav-link { color: #fff; text-decoration: none; font-size: 18px; -} - -.plotly-container { - width: 100%; - float: bottom; - padding: 1vw; - align-items: center; - justify-content: center; + } + + .container { display: flex; -} - -.js-plotly-plot { - width: 90%; + flex-direction: row; + align-items: center; + align-self: center; + border: 3px solid #ccc; + border-radius: 10px; + margin: 20px; + padding: 20px; + width: 95%; + box-sizing: border-box; + } + + .data-types { + flex: 1; + display: flex; + flex-direction: column; + align-items: flex-start; + margin-right: 60px; + margin-bottom: 10px; + font-size: 0.8em; + padding: 8px; + border-radius: 5px; + background-color: #f0f0f0; + } + + .filters { + display: flex; + justify-content: space-between; + align-items: center; + width: 100%; + margin-bottom: 10px; + } + + .date-filter { + flex: 1; + text-align: center; + margin-right: 60px; + font-size: 1.2em; /* Increase font size for a bigger appearance */ + padding: 8px; + border-radius: 5px; /* Add border radius for a rounded look */ + background-color: #f0f0f0; /* Light background color for contrast */ + } + + .node-filter { + flex: 1; + margin: auto; + text-align: center; + margin-right: 60px; + align-content: center; + font-size: 1.2em; /* Increase font size for a bigger appearance */ + padding: 8px; + border-radius: 5px; /* Add border radius for a rounded look */ + background-color: #f0f0f0; /* Light background color for contrast */ + } + + .filter-button { + width: 10%; + background-color: #007bff; + color: white; + padding: 10px; + border: none; + border-radius: 5px; + cursor: pointer; + } + + .js-plotly-plot { + width: 100%; height: 100%; -} - -.disabled { - opacity: 0; - height: 0; - -} \ No newline at end of file + align-self: center center; + } + /* Additional styling as needed */ + + .graphBody { + display: flex; + padding: 10px; + border: 3px solid #ccc; + border-radius: 10px; + justify-content: center; + width: 95%; + height: 100%; + align-content: center; + align-self: center; + } + \ No newline at end of file From a2e77e6f3d019f68b77d9f14bb436647cee41ab4 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Wed, 3 Apr 2024 10:43:32 +0200 Subject: [PATCH 191/215] Fix variable name in main.js --- web/newWebsite/main.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/newWebsite/main.js b/web/newWebsite/main.js index 020df7b..c5e1486 100644 --- a/web/newWebsite/main.js +++ b/web/newWebsite/main.js @@ -54,7 +54,7 @@ async function handleIncomingData(data) { await nodeAdressHandler(data.node, Object.keys(data).filter(key => key !== 'node')); - let nodeName = nodeDict[data.node].Name; + let nodeName = nodeDict[data.node].name; let temperature = data.Temp; let humidity = data.Humi; let CO2 = data.eCO2; From 24ec686fa069fec8af776c953f931196950cb45d Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 3 Apr 2024 10:59:57 +0200 Subject: [PATCH 192/215] Update navigation and dashboard styles --- web/newWebsite/index.html | 3 +++ web/newWebsite/styles/dashboard-styles.css | 11 ++++++----- web/newWebsite/text.js | 8 ++++---- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/web/newWebsite/index.html b/web/newWebsite/index.html index aad6b66..f2b5b42 100644 --- a/web/newWebsite/index.html +++ b/web/newWebsite/index.html @@ -28,6 +28,9 @@ + diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 571fc94..cec98f5 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -55,8 +55,9 @@ body { justify-content: center; margin: 0; margin-top: 8vh; + background-color: #f0f0f0; flex-direction: column; - background-color: #bfbfbf; + background-color: #afafaf; align-items: center; } @@ -67,13 +68,13 @@ body { display: flex; flex-direction: column; /* Keep as column */ justify-content: flex-start; - background-color: #9f9f9f; + background-color: #333; color: #fff; padding: 10px; border-radius: 50px; - border: 2px solid #CC2936; + border: 2px solid #333; clear: both; - margin-bottom: 10px; + margin-top: 20px; position: relative; } @@ -194,7 +195,7 @@ body { } .navbar { - background-color: #bfbfbf; + background-color: #333; border-bottom: 2px solid #CC2936; height: 60px; display: flex; diff --git a/web/newWebsite/text.js b/web/newWebsite/text.js index 45856bd..24a1f81 100644 --- a/web/newWebsite/text.js +++ b/web/newWebsite/text.js @@ -1,4 +1,4 @@ -apiGetAllNode = "http://145.92.8.114/getNodeInfo?macAdress=*" +apiGetAllNode = "http://145.92.8.114/getInfoNode?macAdress=*" nodeDataArray = {}; @@ -17,7 +17,7 @@ function settings() { updateNode.style.display = "block"; locationInput.value = ""; nameInput.value = ""; - getNodeInfo(); + getInfoNode(); } else { updateNode.style.display = "none"; @@ -25,7 +25,7 @@ function settings() { } -function getNodeInfo() { +function getInfoNode() { fetch(apiGetAllNode) .then(response => { if (!response.ok) { @@ -75,7 +75,7 @@ function changeText() { var text = document.getElementById('text'); text.innerHTML = "Changes made" - getNodeInfo(); + getInfoNode(); } function updateNodeInfo(node, newNodeName, newNodeLocation) { From 50dff897619338777568100507e18b7b5526d083 Mon Sep 17 00:00:00 2001 From: Dano van den Bosch Date: Wed, 3 Apr 2024 11:04:17 +0200 Subject: [PATCH 193/215] Revert "Merge branch 'main' of..." This reverts commit 045fbb50d9295492b42041702cc81cb87ec7923b --- web/newWebsite/styles/dashboard-styles.css | 120 +++++---------------- 1 file changed, 27 insertions(+), 93 deletions(-) diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index ad12db7..cec98f5 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -205,109 +205,43 @@ body { top: 0; /* Position it at the very top */ width: 100%; /* Make it span the full width of the page */ z-index: 1000; /* Make sure it's above all other elements */ - } - - .navbar-nav { +} + +.navbar-nav { list-style: none; display: flex; align-items: center; justify-content: center; /* Center the links horizontally */ height: 100%; width: 100%; /* Make it span the full width of the navbar */ - } - - .nav-item { +} + +.nav-item { margin-right: 20px; - } - - .nav-link { +} + +.nav-link { color: #fff; text-decoration: none; font-size: 18px; - } - - .container { - display: flex; - flex-direction: row; - align-items: center; - align-self: center; - border: 3px solid #ccc; - border-radius: 10px; - margin: 20px; - padding: 20px; - width: 95%; - box-sizing: border-box; - } - - .data-types { - flex: 1; - display: flex; - flex-direction: column; - align-items: flex-start; - margin-right: 60px; - margin-bottom: 10px; - font-size: 0.8em; - padding: 8px; - border-radius: 5px; - background-color: #f0f0f0; - } - - .filters { - display: flex; - justify-content: space-between; - align-items: center; +} + +.plotly-container { width: 100%; - margin-bottom: 10px; - } - - .date-filter { - flex: 1; - text-align: center; - margin-right: 60px; - font-size: 1.2em; /* Increase font size for a bigger appearance */ - padding: 8px; - border-radius: 5px; /* Add border radius for a rounded look */ - background-color: #f0f0f0; /* Light background color for contrast */ - } - - .node-filter { - flex: 1; - margin: auto; - text-align: center; - margin-right: 60px; - align-content: center; - font-size: 1.2em; /* Increase font size for a bigger appearance */ - padding: 8px; - border-radius: 5px; /* Add border radius for a rounded look */ - background-color: #f0f0f0; /* Light background color for contrast */ - } - - .filter-button { - width: 10%; - background-color: #007bff; - color: white; - padding: 10px; - border: none; - border-radius: 5px; - cursor: pointer; - } - - .js-plotly-plot { - width: 100%; - height: 100%; - align-self: center center; - } - /* Additional styling as needed */ - - .graphBody { - display: flex; - padding: 10px; - border: 3px solid #ccc; - border-radius: 10px; + float: bottom; + padding: 1vw; + align-items: center; justify-content: center; - width: 95%; + display: flex; +} + +.js-plotly-plot { + width: 90%; height: 100%; - align-content: center; - align-self: center; - } - \ No newline at end of file +} + +.disabled { + opacity: 0; + height: 0; + +} \ No newline at end of file From c44c9c82b37abcf45e55c7e38eb9e571ba954909 Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Wed, 3 Apr 2024 11:09:21 +0200 Subject: [PATCH 194/215] Update dashboard styles and API endpoint --- web/newWebsite/styles/dashboard-styles.css | 73 ---------------------- web/newWebsite/text.js | 2 +- 2 files changed, 1 insertion(+), 74 deletions(-) diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index ad12db7..954bdf6 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -196,7 +196,6 @@ body { .navbar { background-color: #333; - border-bottom: 2px solid #CC2936; height: 60px; display: flex; align-items: center; @@ -238,76 +237,4 @@ body { width: 95%; box-sizing: border-box; } - - .data-types { - flex: 1; - display: flex; - flex-direction: column; - align-items: flex-start; - margin-right: 60px; - margin-bottom: 10px; - font-size: 0.8em; - padding: 8px; - border-radius: 5px; - background-color: #f0f0f0; - } - - .filters { - display: flex; - justify-content: space-between; - align-items: center; - width: 100%; - margin-bottom: 10px; - } - - .date-filter { - flex: 1; - text-align: center; - margin-right: 60px; - font-size: 1.2em; /* Increase font size for a bigger appearance */ - padding: 8px; - border-radius: 5px; /* Add border radius for a rounded look */ - background-color: #f0f0f0; /* Light background color for contrast */ - } - - .node-filter { - flex: 1; - margin: auto; - text-align: center; - margin-right: 60px; - align-content: center; - font-size: 1.2em; /* Increase font size for a bigger appearance */ - padding: 8px; - border-radius: 5px; /* Add border radius for a rounded look */ - background-color: #f0f0f0; /* Light background color for contrast */ - } - - .filter-button { - width: 10%; - background-color: #007bff; - color: white; - padding: 10px; - border: none; - border-radius: 5px; - cursor: pointer; - } - - .js-plotly-plot { - width: 100%; - height: 100%; - align-self: center center; - } - /* Additional styling as needed */ - - .graphBody { - display: flex; - padding: 10px; - border: 3px solid #ccc; - border-radius: 10px; - justify-content: center; - width: 95%; - height: 100%; - align-content: center; - align-self: center; - } \ No newline at end of file diff --git a/web/newWebsite/text.js b/web/newWebsite/text.js index 24a1f81..214feac 100644 --- a/web/newWebsite/text.js +++ b/web/newWebsite/text.js @@ -1,4 +1,4 @@ -apiGetAllNode = "http://145.92.8.114/getInfoNode?macAdress=*" +apiGetAllNode = "http://145.92.8.114/getNodeInfo?macAdress=*" nodeDataArray = {}; From 6f5f9d4b47ded8cda8be825ecda86bb9ba7e95ee Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Wed, 3 Apr 2024 11:19:01 +0200 Subject: [PATCH 195/215] WORKING --- web/newWebsite/main.js | 2 +- web/newWebsite/styles/dashboard-styles.css | 30 +++++++++++++--------- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/web/newWebsite/main.js b/web/newWebsite/main.js index c5e1486..72d3a01 100644 --- a/web/newWebsite/main.js +++ b/web/newWebsite/main.js @@ -141,4 +141,4 @@ function toggleGraph(nodeId) { } else { console.error('No element found with id: liveGraph' + nodeId); } -} \ No newline at end of file +} diff --git a/web/newWebsite/styles/dashboard-styles.css b/web/newWebsite/styles/dashboard-styles.css index 34efb9b..eeab2b1 100644 --- a/web/newWebsite/styles/dashboard-styles.css +++ b/web/newWebsite/styles/dashboard-styles.css @@ -57,7 +57,7 @@ body { margin-top: 8vh; background-color: #f0f0f0; flex-direction: column; - background-color: #afafaf; + background-color: #afafaf; align-items: center; } @@ -74,7 +74,7 @@ body { border-radius: 50px; border: 2px solid #333; clear: both; - margin-top: 20px; + margin-bottom: 10px; position: relative; } @@ -108,6 +108,7 @@ body { text-align: center; position: relative; padding-top: 3vh; /* Increase bottom padding */ + } .gaugeContainer { @@ -127,7 +128,7 @@ body { .gaugeImage { width: 100%; height: auto; - max-height: 140%; + max-height: 120%; object-fit: contain; position: absolute; /* Make the image position absolute */ top: 0; @@ -230,12 +231,17 @@ body { float: bottom; padding: 1vw; align-items: center; - align-self: center; - border: 3px solid #ccc; - border-radius: 10px; - margin: 20px; - padding: 20px; - width: 95%; - box-sizing: border-box; - } - \ No newline at end of file + justify-content: center; + display: flex; +} + +.js-plotly-plot { + width: 90%; + height: 100%; +} + +.disabled { + opacity: 0; + height: 0; + +} From 8c9ccda61ae8b0e4c9b7563b8beb46c4167a741d Mon Sep 17 00:00:00 2001 From: Sietse Jonker Date: Wed, 3 Apr 2024 11:28:37 +0200 Subject: [PATCH 196/215] Refactor navigation links in HTML files --- web/newWebsite/graph-main.js | 4 +- web/newWebsite/graphs.html | 6 +- web/newWebsite/index.html | 3 - web/newWebsite/questions-dashboard.html | 3 - web/newWebsite/settings.html | 35 --- web/newWebsite/styles/dashboard-styles.css | 322 ++++++++++----------- 6 files changed, 158 insertions(+), 215 deletions(-) delete mode 100644 web/newWebsite/settings.html diff --git a/web/newWebsite/graph-main.js b/web/newWebsite/graph-main.js index 6caadde..5ed8f02 100644 --- a/web/newWebsite/graph-main.js +++ b/web/newWebsite/graph-main.js @@ -25,10 +25,10 @@ function createCheckBox(id, label) { return response.json(); }) .then(data => { - handleData(data); + nodeInputs(data); }) -function handleData(JSONdata) { +function nodeInputs(JSONdata) { select = document.getElementById('node-input'); console.log(JSONdata); diff --git a/web/newWebsite/graphs.html b/web/newWebsite/graphs.html index d4b62cc..6396326 100644 --- a/web/newWebsite/graphs.html +++ b/web/newWebsite/graphs.html @@ -2,6 +2,7 @@ + @@ -20,16 +21,15 @@ - + \ No newline at end of file diff --git a/web/newWebsite/index.html b/web/newWebsite/index.html index f2b5b42..88846a2 100644 --- a/web/newWebsite/index.html +++ b/web/newWebsite/index.html @@ -22,9 +22,6 @@ - diff --git a/web/newWebsite/questions-dashboard.html b/web/newWebsite/questions-dashboard.html index 5ce5f66..418f4e3 100644 --- a/web/newWebsite/questions-dashboard.html +++ b/web/newWebsite/questions-dashboard.html @@ -20,9 +20,6 @@ -

    f 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 z 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%0DR!Jb#A8H(P5T4(>>LnM%tt9uW1@#Ry> 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 (mZvno^zC69 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 xuZ%Kwqr;4=LJSHy76@{ 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