forked from Cantina-Org/Server-Manager
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.py
executable file
·52 lines (38 loc) · 1.32 KB
/
app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
from flask import Flask
from os import getcwd, path
from json import load
from cantinaUtils.Database import DataBase
from flask_sock import Sock
from Cogs.login import login_cogs
from Cogs.home import home_cogs
from Cogs.show_server import show_server_cogs
from Cogs.create_server import create_server_cogs
dir_path = path.abspath(getcwd()) + '/server/'
app = Flask(__name__)
sock = Sock(app)
with open(path.abspath(getcwd()) + "/config.json") as conf_file:
config_data = load(conf_file)
database = DataBase(user=config_data['database'][0]['database_username'],
password=config_data['database'][0]['database_password'], host="localhost", port=3306)
database.connection()
@app.route('/')
def home():
return home_cogs(database)
@app.route('/login', methods=['POST', 'GET'])
def login():
return login_cogs(database)
@app.route('/server/<server_id>')
@app.route('/server/')
@app.route('/server')
def server(server_id=None):
return show_server_cogs(database, server_id)
@sock.route('/server/ws')
def run_server(socket):
while True:
data = socket.receive()
socket.send(data)
@app.route('/server/create', methods=['POST', 'GET'])
def create_server(alert=False):
return create_server_cogs(database, alert, dir_path)
if __name__ == '__main__':
app.run(port=config_data["port"])