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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Mon Jul 26 17:31:48 2021
@author: sekhmet
"""
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import flask
import data_textes as data
#from data_textes import tabletextes, tablecomplete, extraire_textes_par_cat
import gere_grille as g
import gere_erreurs as e
from config import DEFAUT, CONFIG
def initialise_mode_beta():
global beta
hote = flask.request.host
if hote[:4] == "beta":
print("** Mode bêta !**")
return True
else:
return False
app = flask.Flask(__name__)
@app.route('/', methods=["GET", "POST"])
def index():
liste_err = e.initialise_erreurs()
tablecomplete = data.lire_fichier_csv_simple(data.fichier_bingo)
conf = DEFAUT.copy()
idg = flask.request.args.get("grille", "") # Id de grille passée en param (ou pas)
if idg != "": # Si on a mis un url de grille
confimport = g.decode_grille(idg, liste_err)
if confimport == {}: # Erreur à la génération
#tabletextes = data.extraire_qr(tablecomplete, categ) # Toutes les remarques
bingo = g.genere_grille(DEFAUT, tablecomplete, liste_err)
e.erreur("L'url de la grille n'est pas valide...", liste_err)
else:
conf.update(confimport)
bingo=conf["grille"]
else:
# On récupère les données post (et ça sera défaut si y'a rien)
if flask.request.method == "POST":
e.debug("avant utilisation post : "+str(conf), liste_err)
conf.update(g.gere_donnees_custom(flask.request.form, liste_err))
e.debug("après utilisation post : "+str(conf), liste_err)
#tabletextes = data.extraire_qr(tablecomplete, conf["categories"])
bingo = g.genere_grille(conf, tablecomplete, liste_err) # aléatoire avec la config donnée
chainecode = g.encode_grille(conf, bingo, liste_err)
return flask.render_template("index.html", bingo=bingo, chainecode=chainecode, conf=conf, e=liste_err[0]+liste_err[1]+liste_err[2])
@app.route('/custom')
def custom():
tablecomplete = data.lire_fichier_csv_simple(data.fichier_bingo)
categ, tableqr = data.extraire_textes_par_cat(tablecomplete)
liste_err = e.initialise_erreurs()
nombre_categ = [len(elt) for elt in tableqr]
print(nombre_categ)
return flask.render_template("custom.html", DEFAUT=DEFAUT,CONFIG=CONFIG, nbdata=len(tablecomplete), categ=categ, nbparcat = nombre_categ, e=liste_err[0]+liste_err[1]+liste_err[2])
@app.route('/apropos')
def apropos():
#liste_err = e.initialise_erreurs()
table_version = data.lire_fichier_csv_simple(data.fichier_changelog)
return flask.render_template("apropos.html", version = table_version)
if __name__ == "__main__":
# print("Mode debug maison : "+str(niveau_debug))
app.run(host='0.0.0.0',debug=True)
|