|
from flask import Flask, render_template, send_from_directory
|
|
from flask_socketio import SocketIO, emit
|
|
|
|
import os
|
|
import json
|
|
app = Flask(__name__)
|
|
app.config['SECRET_KEY'] = 'yigit007'
|
|
socketio = SocketIO(app)
|
|
|
|
src_path , file_list = "../server_side/api/modules/databases/",["denunciations","complaints","crashes"]
|
|
changed = {}
|
|
for file in file_list:
|
|
changed[file] = os.stat(os.path.join(src_path,file+".json"))
|
|
|
|
def file_check(file):
|
|
src = os.path.join(src_path,file+".json")
|
|
if changed[file] != os.stat(src):
|
|
print("[INFO]: Changed " + file)
|
|
changed[file] = os.stat(src)
|
|
with open(src,"r") as f:
|
|
json_data = json.loads(f.read())
|
|
return True,json.dumps(json_data)
|
|
return False,""
|
|
|
|
@socketio.on("check",namespace="/denunciations_socket")
|
|
def denunciation_handle(msg):
|
|
|
|
change,data = file_check("denunciations")
|
|
if change:
|
|
emit("new", data, namespace="/denunciations_socket")
|
|
|
|
|
|
@socketio.on('connect', namespace='/denunciations_socket')
|
|
def handle_my_custom_namespace_event():
|
|
print("[INFO]: Received socket connection!")
|
|
|
|
src = os.path.join(src_path,"denunciations.json")
|
|
with open(src,"r") as f:
|
|
json_data = json.loads(f.read())
|
|
|
|
emit("new", json.dumps(json_data), namespace="/denunciations_socket")
|
|
|
|
|
|
@socketio.on("check",namespace="/complaints_socket")
|
|
def compaint_handle(msg):
|
|
|
|
change,data = file_check("complaints")
|
|
if change:
|
|
emit("new", data, namespace="/complaints_socket")
|
|
|
|
|
|
@socketio.on('connect', namespace='/complaints_socket')
|
|
def handle_my_custom_namespace_event():
|
|
print("[INFO]: Received socket connection!")
|
|
|
|
src = os.path.join(src_path,"complaints.json")
|
|
with open(src,"r") as f:
|
|
json_data = json.loads(f.read())
|
|
|
|
emit("new", json.dumps(json_data), namespace="/complaints_socket")
|
|
|
|
@socketio.on('check', namespace='/crashes_socket')
|
|
def crash_handle(msg):
|
|
change, data = file_check("crashes")
|
|
if change:
|
|
emit("new", data, namespace='/crashes_socket')
|
|
|
|
@socketio.on('connect', namespace='/crashes_socket')
|
|
def handle_crash():
|
|
print("[INFO]: Received socket connection!")
|
|
|
|
src = os.path.join(src_path, 'crashes.json')
|
|
with open(src, 'r') as f:
|
|
json_data = json.loads(f.read())
|
|
|
|
emit("new", json.dumps(json_data), namespace="/crashes_socket")
|
|
|
|
@app.route('/gui/<path:path>')
|
|
def send_img(path):
|
|
return send_from_directory('interface/UserData', path)
|
|
|
|
if __name__ == '__main__':
|
|
socketio.run(app,host="0.0.0.0",port=4000,debug=True)
|