mirror of
https://github.com/lucaspalomodevelop/Party.git
synced 2026-03-13 08:09:37 +00:00
227 lines
5.9 KiB
Python
227 lines
5.9 KiB
Python
from flask import Flask, render_template, jsonify, request, session, redirect
|
|
import sqlite3
|
|
import os
|
|
import time
|
|
import qrcode
|
|
import shutil
|
|
|
|
if not os.path.exists("./static/img/qr.png"):
|
|
img = qrcode.make('127.0.0.1:5000')
|
|
type(img)
|
|
img.save("qr.png")
|
|
ort = "./static/img"
|
|
shutil.move("qr.png", ort)
|
|
|
|
|
|
|
|
app = Flask(__name__, template_folder='templates/')
|
|
date = time.strftime("%d-%m-%Y %H:%M:%S", time.localtime(time.time()))
|
|
log = date
|
|
app.config['SECRET_KEY'] = 'party'
|
|
|
|
#log system
|
|
def log_server(log):
|
|
log = date + log
|
|
datei = open('server.log', 'a')
|
|
datei.write('\n' + " " + log)
|
|
log = date
|
|
datei.close()
|
|
|
|
def error_log(error):
|
|
error = date + "[ERROR]"+ error
|
|
datei = open('server.log', 'a')
|
|
datei.write('\n' + " " + error)
|
|
log = date
|
|
datei.close()
|
|
|
|
def problem_log(problem):
|
|
problem = date + "[PROBLEM]"+ problem
|
|
datei = open('server.log', 'a')
|
|
datei.write('\n' + " " + problem)
|
|
log = date
|
|
datei.close()
|
|
|
|
#Hauptseite
|
|
@app.route("/")
|
|
def index():
|
|
log_server("called /")
|
|
return render_template("index.html")
|
|
|
|
#Chat
|
|
@app.route("/chat")
|
|
def chat():
|
|
log_server("called /chat")
|
|
return render_template("chat.html")
|
|
#Neue Nachrichten
|
|
@app.route("/get_chat", methods=['POST'])
|
|
def get_chat():
|
|
log_server("called /get_chat")
|
|
con = sqlite3.connect("party.db")
|
|
cur = con.cursor()
|
|
log_server("called /get_creat_session with POST")
|
|
|
|
userID = request.form['userid']
|
|
sessionID = request.form['sessionid']
|
|
message = request.form['message']
|
|
zeit = date
|
|
l = f"INSERT INTO session VALUES( \'{sessionID}\', \'{userID}\',\'{message}\', \'{zeit}\');"
|
|
log_server("neue Nachricht")
|
|
cur.execute(l)
|
|
account = cur.fetchone()
|
|
return render_template("chat.html")
|
|
|
|
@app.route("/get_new_message")
|
|
def get_new_message():
|
|
log_server("called /get_new_message")
|
|
return render_template("chat.html")
|
|
|
|
#planer
|
|
@app.route("/planer")
|
|
def planer():
|
|
log_server("called /planer")
|
|
return render_template("planer.html")
|
|
|
|
@app.route("/get_planer", methods=['POST'])
|
|
def get_planer():
|
|
log_server("called /get_planer")
|
|
con = sqlite3.connect("party.db")
|
|
cur = con.cursor()
|
|
log_server("called /get_planer with POST")
|
|
|
|
event = request.form['event']
|
|
sessionID = request.form['sessionid']
|
|
zeit = request.form['zeit']
|
|
l = f"INSERT INTO session VALUES( \'{event}\', \'{zeit}\',\'{sessionID}\');"
|
|
log_server("neues Event")
|
|
cur.execute(l)
|
|
account = cur.fetchone()
|
|
return render_template("chat.html")
|
|
|
|
@app.route("/session")
|
|
def session():
|
|
log_server("called /session")
|
|
return render_template("session.html")
|
|
|
|
@app.route("/logout")
|
|
def logout():
|
|
log_server("called /logout")
|
|
return render_template("logout.html")
|
|
|
|
@app.route("/signin")
|
|
def signin():
|
|
log_server("called /signin")
|
|
return render_template("signin.html")
|
|
|
|
@app.route("/password")
|
|
def password():
|
|
log_server("called /password")
|
|
return render_template("passwort_ver.html")
|
|
|
|
@app.route("/create_session")
|
|
def create_session():
|
|
log_server("called /create_session")
|
|
return render_template("createSession.html")
|
|
|
|
@app.route("/get_creat_session", methods=['POST'])
|
|
def get_creat_session():
|
|
con = sqlite3.connect("party.db")
|
|
cur = con.cursor()
|
|
log_server("called /get_creat_session with POST")
|
|
|
|
sessionname = request.form['sessionname']
|
|
sessionID = request.form['sessionid']
|
|
l = f"INSERT INTO session VALUES( \'{sessionID}\', \'{sessionname}\');"
|
|
log_server("neue Session")
|
|
cur.execute(l)
|
|
account = cur.fetchone()
|
|
return redirect('/session')
|
|
|
|
|
|
@app.route("/login")
|
|
def login():
|
|
log_server("called /login")
|
|
return render_template("login.html")
|
|
|
|
@app.route("/stopuhr", methods=['POST'])
|
|
def stopuhr():
|
|
con = sqlite3.connect("party.db")
|
|
cur = con.cursor()
|
|
log_server("called /stopuhr")
|
|
spielName = request.form['spielname']
|
|
zeit = request.form['zeit']
|
|
userId = request.form['userid']
|
|
sessionId = request.form['sessionid']
|
|
l = f"INSERT INTO game VALUES( \'{sessionID}\', \'{userId}\',\'{spielName}\', \'{zeit}\');"
|
|
cur.execute(l)
|
|
return render_template("login.html")
|
|
|
|
@app.route("/get_event", methods=['POST'])
|
|
def get_event():
|
|
con = sqlite3.connect("party.db")
|
|
cur = con.cursor()
|
|
log_server("called /get_event")
|
|
event = request.form['event']
|
|
zeit = request.form['zeit']
|
|
sessionId = request.form['sessionid']
|
|
l = f"INSERT INTO game VALUES( \'{event}\', \'{zeit}\', \'{sessionId}\');"
|
|
return render_template("login.html")
|
|
|
|
@app.route("/controll")
|
|
def controll():
|
|
log_server("called /login")
|
|
return render_template("controll.html")
|
|
|
|
@app.route("/game")
|
|
def game():
|
|
log_server("called /game")
|
|
return render_template("game.html")
|
|
|
|
@app.route("/willkommen")
|
|
def willkommen():
|
|
log_server("called /willkommen")
|
|
return render_template("willkommen.html")
|
|
|
|
@app.route("/seession")
|
|
def seession():
|
|
log_server("called /session")
|
|
return render_template("seesion.html")
|
|
|
|
@app.route("/rgb")
|
|
def rgb():
|
|
log_server("called /rgb")
|
|
return render_template("404.html")
|
|
|
|
|
|
@app.route("/get_login", methods=['POST'])
|
|
def get_login():
|
|
con = sqlite3.connect("login.db")
|
|
cur = con.cursor()
|
|
log_server("called /get_login with POST")
|
|
|
|
username = request.form['uname']
|
|
sessionId = request.form['id']
|
|
l = f"select * from user where username = \'{username}\' and id=\'{sessionId}\';"
|
|
|
|
cur.execute(l)
|
|
account = cur.fetchone()
|
|
|
|
if account:
|
|
session['loggedin'] = True
|
|
# session['username'] = account['username']
|
|
return redirect('/session')
|
|
else:
|
|
return "{ \"message\": \"Login failed\"'}"
|
|
con.close()
|
|
|
|
@app.errorhandler(404)
|
|
def page_not_found(e):
|
|
error_log("called non-existing page")
|
|
# note that we set the 404 status explicitly
|
|
return render_template('404.html'), 404
|
|
|
|
|
|
def create_app(config_filename):
|
|
app.register_error_handler(404, page_not_found)
|
|
log_server("created app")
|
|
return app
|