From a22bac4a552f11f3b4fac53ead61527b342376f8 Mon Sep 17 00:00:00 2001 From: cherif Date: Wed, 3 Apr 2024 21:57:12 +0200 Subject: [PATCH] 03/04/24 - 21h30 --- .idea/workspace.xml | 25 +- GlobalVariable.py | 13 +- Log/log_file.log | 705 ++++++++++++++++++++++++++++++++++++++++++ formulaire_mgt.py | 735 ++++++++++++++++++++++++++++++++++++++++++++ main.py | 96 ++++++ 5 files changed, 1562 insertions(+), 12 deletions(-) create mode 100644 formulaire_mgt.py diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 71f11be..c647fbb 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -1,9 +1,12 @@ - + + + + @@ -458,7 +461,6 @@ - @@ -483,6 +485,7 @@ - \ No newline at end of file diff --git a/GlobalVariable.py b/GlobalVariable.py index 97273e0..a138b36 100644 --- a/GlobalVariable.py +++ b/GlobalVariable.py @@ -672,4 +672,15 @@ EMARGEMENT_OPTION = ["0", "1", "2"] """ Taille maximale des nom de fichier """ -FILE_NAME_MAX_SIZE = 250 \ No newline at end of file +FILE_NAME_MAX_SIZE = 250 + + + +""" +Formulaire : Type de question : +- qcm, +- text, +- note +- entier +""" +FORM_QUESTION_TYPE = ['qcm', 'text', 'note', 'entier'] \ No newline at end of file diff --git a/Log/log_file.log b/Log/log_file.log index 3248452..c94ad14 100644 --- a/Log/log_file.log +++ b/Log/log_file.log @@ -2200945,3 +2200945,708 @@ INFO:root:2024-04-02 20:30:00.024545 : Security check : IP adresse '127.0.0.1' INFO:root:2024-04-02 20:30:00.027589 : Security check : IP adresse '127.0.0.1' connected INFO:werkzeug:127.0.0.1 - - [02/Apr/2024 20:30:00] "POST /myclass/api/get_Agenda_Event_List_Stagiaire/ HTTP/1.1" 200 - INFO:werkzeug:127.0.0.1 - - [02/Apr/2024 20:30:00] "POST /myclass/api/Get_Default_Debut_Fin_journee_Modele_Journee/ HTTP/1.1" 200 - +INFO:root:2024-04-03 17:33:59.476628 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 17:33:59.477624 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 17:33:59.478626 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 17:33:59.478626 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 17:33:59.478626 : ++ LMS_BAS_URL mysy-training.com/ ++ +INFO:werkzeug:WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. + * Running on http://localhost:5001 +INFO:werkzeug:Press CTRL+C to quit +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 17:34:19.617494 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 17:34:19.617494 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 17:34:19.617494 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 17:34:19.618500 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 17:34:19.618500 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:02:11.352228 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:02:11.352228 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:02:11.352228 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:02:11.353226 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:02:11.353226 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:05:52.203290 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:05:52.203290 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:05:52.203290 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:05:52.203290 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:05:52.203290 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:10:35.493833 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:10:35.493833 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:10:35.500877 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:10:35.500877 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:10:35.500877 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:11:30.865387 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:11:30.865387 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:11:30.866431 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:11:30.866431 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:11:30.866431 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:11:55.890437 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:11:55.890437 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:11:55.890437 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:11:55.890437 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:11:55.890437 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:15:55.450666 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:15:55.450666 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:15:55.450666 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:15:55.450666 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:15:55.450666 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:16:28.684114 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:16:28.684114 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:16:28.684114 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:16:28.684114 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:16:28.684114 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\GlobalVariable.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:17:42.864037 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:17:42.864037 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:17:42.865102 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:17:42.865102 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:17:42.865102 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:18:29.087619 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:18:29.087619 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:18:29.087619 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:18:29.088622 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:18:29.088622 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:20:04.094942 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:20:04.094942 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:20:04.094942 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:20:04.094942 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:20:04.095987 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:24:29.761368 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:24:29.761368 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:24:29.761368 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:24:29.761368 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:24:29.761368 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:25:37.287062 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:25:37.287062 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:25:37.287062 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:25:37.287062 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:25:37.287062 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:29:04.902992 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:29:04.902992 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:29:04.902992 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:29:04.904535 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:29:04.904535 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:30:33.067515 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:30:33.067515 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:30:33.067515 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:30:33.067515 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:30:33.067515 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:33:15.948647 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:33:15.948647 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:33:15.948647 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:33:15.948647 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:33:15.948647 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:35:58.697386 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:35:58.697386 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:35:58.697386 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:35:58.697386 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:35:58.697386 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 18:36:38.428956 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 18:36:38.428956 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 18:36:38.428956 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 18:36:38.428956 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 18:36:38.429961 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 19:31:27.399219 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 19:31:27.399219 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 19:31:27.399219 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 19:31:27.399219 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 19:31:27.399219 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 19:33:50.794980 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 19:33:50.795983 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 19:33:50.795983 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 19:33:50.795983 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 19:33:50.795983 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:02:29.561071 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:02:29.561071 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:02:29.561071 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:02:29.561071 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:02:29.561071 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:03:50.698426 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:03:50.698426 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:03:50.698426 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:03:50.698426 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:03:50.698426 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:04:28.721058 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:04:28.722060 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:04:28.722060 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:04:28.722060 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:04:28.722060 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:05:56.278553 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:05:56.278553 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:05:56.278553 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:05:56.278553 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:05:56.278553 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:08:47.016380 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:08:47.016380 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:08:47.017383 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:08:47.017383 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:08:47.017383 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:09:53.399849 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:09:53.399849 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:09:53.399849 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:09:53.399849 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:09:53.399849 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:10:39.497739 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:10:39.497739 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:10:39.497739 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:10:39.497739 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:10:39.497739 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:11:01.311276 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:11:01.311276 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:11:01.311276 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:11:01.311276 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:11:01.312278 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:11:53.829345 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:11:53.830336 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:11:53.830336 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:11:53.830336 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:11:53.830336 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:13:22.635301 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:13:22.636098 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:13:22.636098 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:13:22.636098 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:13:22.636098 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\main.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:14:22.420405 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:14:22.420405 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:14:22.421395 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:14:22.421395 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:14:22.427408 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\main.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:18:13.397663 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:18:13.397663 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:18:13.397663 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:18:13.397663 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:18:13.397663 : ++ LMS_BAS_URL mysy-training.com/ ++ +INFO:werkzeug:WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. + * Running on http://localhost:5001 +INFO:werkzeug:Press CTRL+C to quit +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:18:24.684888 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:18:24.684888 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:18:24.684888 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:18:24.684888 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:18:24.684888 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:19:40.072254 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:19:40] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:19:40.084002 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:19:40.109661 : L'identifiant du formulaire est invalide +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:19:40] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:20:47.440407 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:20:47.440407 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:20:47.440407 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:20:47.440407 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:20:47.440407 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:21:09.591942 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:21:09] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:21:09.601975 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:21:09.641445 : Pour ce type de question, une note maximale doit être un nombre entier +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:21:09] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:21:47.766561 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:21:47.766561 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:21:47.767565 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:21:47.767565 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:21:47.767565 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:21:47.807666 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:21:47] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:21:47.814737 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:21:48.436388 : Add_Update_Question_Formulaire Impossible d'ajouter la question (2) +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:21:48] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:22:38.182838 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:22:38.182838 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:22:38.182838 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:22:38.182838 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:22:38.182838 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:22:38.228590 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:22:38] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:22:38.234717 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:22:38.897405 : Add_Update_Question_Formulaire Impossible d'ajouter la question (2) +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:22:38] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:23:07.244694 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:23:07.245697 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:23:07.245697 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:23:07.245697 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:23:07.245697 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:24:08.362513 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:24:08.363554 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:24:08.363554 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:24:08.363554 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:24:08.363554 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:24:08.405839 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:24:08] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:24:08.414085 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:24:09.049873 : Add_Update_Question_Formulaire Impossible d'ajouter la question (2) +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:24:09] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:24:39.838706 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:24:39.838706 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:24:39.838706 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:24:39.838706 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:24:39.838706 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:25:33.485067 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:25:33.486066 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:25:33.486066 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:25:33.486066 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:25:33.486066 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:25:33.544007 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:25:33] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:25:33.552491 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:25:34.394064 : Add_Update_Question_Formulaire Impossible d'ajouter la question (2) +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:25:34] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:26:32.039549 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:26:32.039549 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:26:32.039549 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:26:32.039549 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:26:32.039549 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:26:32.089439 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:26:32] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:26:32.097850 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:26:32] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:root:2024-04-03 20:27:48.451738 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:27:48] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:27:48.487707 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:27:48.507702 : L'identifiant de la question est invalide +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:27:48] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:28:31.362570 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:28:31.362570 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:28:31.363570 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:28:31.363570 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:28:31.363570 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:28:46.809057 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:28:46.809057 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:28:46.809057 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:28:46.809057 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:28:46.809057 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:28:56.311196 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:28:56] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:28:56.320937 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:28:57.156989 : Add_Update_Question_Formulaire -The path 'list_competence' must exist in the document in order to apply array updates., full error: {'index': 0, 'code': 2, 'errmsg': "The path 'list_competence' must exist in the document in order to apply array updates."} - Line : 263 +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:28:57] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:29:30.096883 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:29:30.096883 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:29:30.096883 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:29:30.096883 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:29:30.096883 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:29:30.142420 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:29:30] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:29:30.150392 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:29:30] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:30:47.453470 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:30:47.453470 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:30:47.453470 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:30:47.453470 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:30:47.453470 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:30:47.501770 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:30:47] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:30:47.509032 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:30:47.527136 : L'identifiant de la question est invalide +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:30:47] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:31:10.204827 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:31:10.205834 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:31:10.205834 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:31:10.205834 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:31:10.205834 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:33:01.703175 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:33:01.704175 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:33:01.704175 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:33:01.704175 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:33:01.704175 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:33:01.750943 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:33:01] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:33:01.756439 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:33:01] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:root:2024-04-03 20:33:24.682134 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:33:24] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:33:24.690149 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:33:24] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:root:2024-04-03 20:36:36.788197 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:36:36] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:36:36.799230 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:36:37.652743 : Add_Update_Question_Formulaire Le champ '' n'est pas autorisé +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:36:37] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:root:2024-04-03 20:37:10.598792 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:37:10] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:37:10.622293 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:37:10] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:39:14.849728 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:39:14.850728 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:39:14.850728 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:39:14.850728 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:39:14.850728 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:39:14.960542 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:39:14] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:39:14.966708 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:39:14] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:39:53.191661 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:39:53.191661 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:39:53.191661 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:39:53.191661 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:39:53.191661 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:40:48.337409 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:40:48] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:40:48.349207 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:40:48] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:43:09.817547 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:43:09.817547 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:43:09.817547 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:43:09.817547 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:43:09.817547 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:43:09.861064 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:43:09] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:43:09.868761 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 20:43:10.595863 : Add_Update_Question_Formulaire -'list_choix' - Line : 264 +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:43:10] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:43:45.651733 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:43:45.651733 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:43:45.651733 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:43:45.651733 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:43:45.651733 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:43:45.699964 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:43:45] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:43:45.707958 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:43:45] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 20:44:56.992763 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 20:44:56.992763 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 20:44:56.992763 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 20:44:56.992763 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 20:44:56.992763 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 20:45:16.443287 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:45:16] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 20:45:16.450654 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 20:45:16] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:17:36.771122 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:17:36.772123 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:17:36.772123 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:17:36.772123 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:17:36.772123 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 21:17:36.814467 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 21:17:36] "POST /myclass/api/Add_Update_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 21:17:36.821147 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 21:17:36] "POST /myclass/api/Add_Update_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:19:07.163969 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:19:07.163969 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:19:07.164971 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:19:07.164971 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:19:07.164971 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:20:22.119004 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:20:22.119997 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:20:22.119997 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:20:22.119997 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:20:22.119997 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:28:31.399703 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:28:31.399703 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:28:31.399703 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:28:31.399703 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:28:31.400706 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:29:00.673615 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:29:00.673615 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:29:00.673615 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:29:00.673615 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:29:00.673615 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:33:28.606570 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:33:28.607569 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:33:28.607569 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:33:28.607569 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:33:28.607569 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-04-03 21:33:49.048670 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 21:33:49] "POST /myclass/api/Delete_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 21:33:49.058657 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 21:33:49] "POST /myclass/api/Delete_Question_Formulaire/ HTTP/1.1" 200 - +INFO:root:2024-04-03 21:34:09.272154 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 21:34:09] "POST /myclass/api/Delete_Question_Formulaire HTTP/1.1" 308 - +INFO:root:2024-04-03 21:34:09.281398 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-04-03 21:34:09.298179 : L'identifiant de la question est invalide +INFO:werkzeug:127.0.0.1 - - [03/Apr/2024 21:34:09] "POST /myclass/api/Delete_Question_Formulaire/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:41:15.857713 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:41:15.857713 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:41:15.857713 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:41:15.858711 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:41:15.858711 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:41:52.634324 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:41:52.634324 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:41:52.634324 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:41:52.634324 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:41:52.634324 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:42:49.927719 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:42:49.927719 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:42:49.927719 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:42:49.927719 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:42:49.927719 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:43:37.608076 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:43:37.608076 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:43:37.608076 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:43:37.608076 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:43:37.608076 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:49:22.124007 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:49:22.124007 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:49:22.124007 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:49:22.124007 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:49:22.124007 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:50:28.593780 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:50:28.593780 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:50:28.593780 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:50:28.593780 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:50:28.593780 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\formulaire_mgt.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:50:48.519414 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:50:48.519414 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:50:48.519414 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:50:48.519414 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:50:48.519414 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\main.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-04-03 21:56:35.237967 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-04-03 21:56:35.237967 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-04-03 21:56:35.237967 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-04-03 21:56:35.237967 : ++ FLASK PORT 5001 ++ +INFO:root:2024-04-03 21:56:35.237967 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 diff --git a/formulaire_mgt.py b/formulaire_mgt.py new file mode 100644 index 0000000..ddd6412 --- /dev/null +++ b/formulaire_mgt.py @@ -0,0 +1,735 @@ +""" +Ce fichier permet de gerer les formulaire d'un utilisateur : + +par exemple la mis en place d'un formulaire de satisfaction. + + +Un formulaire est stocké comme suit : +La clé d'un formulaire est le 'code' en minuscule +Formaulaire : + => Nom from + => List_Questions + | + => phrase Question + => Type question (texte, boolean, note, Qcm, entier) + => Liste_Choix (si type = QCM) + => Max_note (si type = note) +""" +import ast + +import bson +import pymongo +from pymongo import MongoClient +import json +from bson import ObjectId +import re +from datetime import datetime +import prj_common as mycommon +import secrets +import inspect +import sys, os +import csv +import pandas as pd +from pymongo import ReturnDocument +import GlobalVariable as MYSY_GV +from math import isnan +import GlobalVariable as MYSY_GV +import ela_index_bdd_classes as eibdd +import email_mgt as email +import jinja2 +from flask import send_file +from xhtml2pdf import pisa +from email.message import EmailMessage +from email.mime.text import MIMEText +from email import encoders +import smtplib +from email.mime.multipart import MIMEMultipart +from email.mime.text import MIMEText +from email.mime.base import MIMEBase +from email import encoders + +def Add_Formulaire(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'code', 'nom', 'description', 'commentaire', ] + + incom_keys = diction.keys() + for val in incom_keys: + if val not in field_list and val.startswith('my_') is False: + mycommon.myprint(str( + inspect.stack()[0][3]) + " Le champ '" + val + "' n'est pas autorisé") + return False, " Les informations fournies sont incorrectes" + + """ + Verification des champs obligatoires + """ + field_list_obligatoire = ['token', 'code', 'nom', 'description', ] + + for val in field_list_obligatoire: + if val not in diction: + mycommon.myprint( + str(inspect.stack()[0][3]) + " - La valeur '" + val + "' n'est pas presente dans liste ") + return False, " Les informations fournies sont incorrectes" + + """ + Verification de l'identité et autorisation de l'entité qui + appelle cette API + """ + token = "" + if ("token" in diction.keys()): + if diction['token']: + token = diction['token'] + + local_status, my_partner = mycommon.Check_Connexion_And_Return_Partner_Data(diction) + if (local_status is not True): + return local_status, my_partner + + mydata = {} + + mydata = diction + del mydata['token'] + + # Initialisation des champs non envoyés à vide + for val in field_list: + if val not in diction.keys(): + mydata[str(val)] = "" + + + """ + Verifier que le formulaire n'existe pas (code en minuscule) + """ + is_form_exist = MYSY_GV.dbname['formulaire'].count_documents({'partner_owner_recid':str(my_partner['recid']), + 'valide':'1', 'code':str(diction['code'])}) + + if(is_form_exist > 0 ): + mycommon.myprint(" Un formulaire avec le même code existe déjà ") + return False, " Un formulaire avec le même code existe déjà " + + mydata['date_update'] = str(datetime.now()) + mydata['update_by'] = str(my_partner['_id']) + mydata['partner_owner_recid'] = str(my_partner['recid']) + mydata['valide'] = "1" + mydata['locked'] = "0" + + inserted_id = MYSY_GV.dbname['formulaire'].insert_one(mydata).inserted_id + + if (not inserted_id): + mycommon.myprint(" Impossible de créer le formulaire (2) ") + return False, " Impossible de créer le formulaire (2) " + + return True, " Le formulaire a été correctement ajoutée " + + + except Exception as e: + exc_type, exc_obj, exc_tb = sys.exc_info() + mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - Line : " + str(exc_tb.tb_lineno)) + return False, " Impossible de créer le formulaire " + + +""" +Fonction ajoute ou modifie une question à un formulaire +""" + +def Add_Update_Question_Formulaire(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'form_id', 'question_id', 'question', 'type', 'commentaire', 'list_choix', 'max_note' ] + + incom_keys = diction.keys() + for val in incom_keys: + if val not in field_list and val.startswith('my_') is False: + mycommon.myprint(str( + inspect.stack()[0][3]) + " Le champ '" + val + "' n'est pas autorisé") + return False, " Les informations fournies sont incorrectes" + + """ + Verification des champs obligatoires + """ + field_list_obligatoire = ['token', 'form_id', 'question', 'type' ] + + for val in field_list_obligatoire: + if val not in diction: + mycommon.myprint( + str(inspect.stack()[0][3]) + " - La valeur '" + val + "' n'est pas presente dans liste ") + return False, " Les informations fournies sont incorrectes" + + """ + Verification de l'identité et autorisation de l'entité qui + appelle cette API + """ + token = "" + if ("token" in diction.keys()): + if diction['token']: + token = diction['token'] + + local_status, my_partner = mycommon.Check_Connexion_And_Return_Partner_Data(diction) + if (local_status is not True): + return local_status, my_partner + + + """ + Verifier que le formulaire existe et est valide + """ + is_form_exist = MYSY_GV.dbname['formulaire'].count_documents({'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked':'0', + '_id': ObjectId(str(diction['form_id']))}) + + if (is_form_exist <= 0): + mycommon.myprint(" L'identifiant du formulaire est invalide ") + return False, " L'identifiant du formulaire est invalide " + + + """ + Verifier que le type de question est valide + """ + + if( str(diction['type']).strip().lower() not in MYSY_GV.FORM_QUESTION_TYPE): + mycommon.myprint(" Le type des question est invalide. Les valeurs autorisées "+ MYSY_GV.FORM_QUESTION_TYPE) + return False, " Le type des question est invalide. Les valeurs autorisées "+ MYSY_GV.FORM_QUESTION_TYPE + + + + """ + Verifier que la note maximale est un entier + """ + if( str(diction['type']) == "note"): + if( "max_note" not in diction.keys() ): + mycommon.myprint(" Pour ce type de question, une note maximale doit être fournie ") + return False, "Pour ce type de question, une note maximale doit être fournie " + + local_status, local_note_max = mycommon.IsInt(str(diction['max_note']).strip()) + if(local_status is False ): + mycommon.myprint(" Pour ce type de question, une note maximale doit être un nombre entier ") + return False, " Pour ce type de question, une note maximale doit être un nombre entier " + + + + # si 'question_id', verifier qu'il est valide + if( "question_id" in diction.keys() ): + is_question_exist = MYSY_GV.dbname['formulaire'].count_documents( + {'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked': '0', + '_id': ObjectId(str(diction['form_id'])), + 'list_questions._id':str(diction['question_id'])}) + + if (is_question_exist <= 0): + mycommon.myprint(" L'identifiant de la question est invalide ") + return False, " L'identifiant de la question est invalide " + + # On doit faire un update + + new_data = {} + new_data['date_update'] = str(datetime.now()) + new_data['valide'] = "1" + new_data['update_by'] = str(my_partner['_id']) + new_data['locked'] = "0" + new_data['question'] = str(diction['question']) + new_data['type'] = str(diction['type']) + new_data['_id'] = str(diction['question_id']) + + if ("commentaire" in diction.keys()): + new_data['commentaire'] = str(diction['commentaire']) + else: + new_data['commentaire'] = "" + + if ("max_note" in diction.keys()): + new_data['max_note'] = str(diction['max_note']) + else: + new_data['max_note'] = "" + + new_data['list_choix'] = [] + + if ("list_choix" in diction.keys()): + local_JSON = ast.literal_eval(diction['list_choix']) + + for local_val in local_JSON: + reponse_qcm = {} + if ("reponse" in local_val): + reponse_qcm['reponse_qcm'] = local_val['reponse'] + else: + reponse_qcm['reponse_qcm'] = "" + + if ("value" in local_val): + reponse_qcm['value'] = local_val['value'] + else: + reponse_qcm['value'] = "" + + new_data['list_choix'].append(reponse_qcm) + + update = MYSY_GV.dbname['formulaire'].update_one({'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked': '0', + '_id': ObjectId(str(diction['form_id']))}, + + { + '$set': { + 'list_questions.$[xxx]': new_data, + + } + }, + upsert=False, + array_filters=[ + {"xxx._id": str(diction['question_id'])} + ] + + ) + + if (update.modified_count <= 0): + mycommon.myprint( + str(inspect.stack()[0][ + 3]) + " Impossible de mettre à jour la question (3) ") + return False, " Impossible de mettre à jour la question (3) " + + return True, " La question a été correctement mise à jour" + + else: + # Il s'agit de la creation d'une nouvelle question + # field_list = ['token', 'form_id', 'question_id', 'question', 'type', 'commentaire', 'list_choix', 'max_note' ] + + new_data = {} + new_data['date_update'] = str(datetime.now()) + new_data['valide'] = "1" + new_data['update_by'] = str(my_partner['_id']) + new_data['locked'] = "0" + new_data['question'] = str(diction['question']) + new_data['type'] = str(diction['type']) + new_question_id = secrets.token_hex(5) + new_data['_id'] = new_question_id + + if("commentaire" in diction.keys() ): + new_data['commentaire'] = str(diction['commentaire']) + else: + new_data['commentaire'] = "" + + if ("max_note" in diction.keys()): + new_data['max_note'] = str(diction['max_note']) + else: + new_data['max_note'] = "" + + new_data['list_choix'] = [] + if ("list_choix" in diction.keys()): + for local_val in diction['list_choix'] : + reponse_qcm = {} + if( "reponse" in local_val): + reponse_qcm['reponse_qcm'] = local_val['reponse'] + else: + reponse_qcm['reponse_qcm'] = "" + + if ("value" in local_val): + reponse_qcm['value'] = local_val['value'] + else: + reponse_qcm['value'] = "" + + new_data['list_choix'].append(reponse_qcm) + + update = MYSY_GV.dbname['formulaire'].update_one({'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked': '0', + '_id': ObjectId(str(diction['form_id']))}, + + { + '$push': { + "list_questions": { + '$each': [new_data] + } + } + }, + + ) + + print(update) + if (update.modified_count <= 0): + mycommon.myprint( + str(inspect.stack()[0][ + 3]) + " Impossible d'ajouter la question (2) ") + return False, " Impossible d'ajouter la question (2) " + + + return True, " La question a été correctement ajoutée au formulaire" + + + except Exception as e: + exc_type, exc_obj, exc_tb = sys.exc_info() + mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - Line : " + str(exc_tb.tb_lineno)) + return False, " Impossible d'ajouter ou mettre à jour la question " + + +""" +Fonction pour supprimer une question d'un formulaire +""" + +def Delete_Question_Formulaire(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'form_id', 'question_id'] + + incom_keys = diction.keys() + for val in incom_keys: + if val not in field_list and val.startswith('my_') is False: + mycommon.myprint(str( + inspect.stack()[0][3]) + " Le champ '" + val + "' n'est pas autorisé") + return False, " Les informations fournies sont incorrectes" + + """ + Verification des champs obligatoires + """ + field_list_obligatoire = ['token', 'form_id', 'question_id'] + + for val in field_list_obligatoire: + if val not in diction: + mycommon.myprint( + str(inspect.stack()[0][3]) + " - La valeur '" + val + "' n'est pas presente dans liste ") + return False, " Les informations fournies sont incorrectes" + + """ + Verification de l'identité et autorisation de l'entité qui + appelle cette API + """ + token = "" + if ("token" in diction.keys()): + if diction['token']: + token = diction['token'] + + local_status, my_partner = mycommon.Check_Connexion_And_Return_Partner_Data(diction) + if (local_status is not True): + return local_status, my_partner + + """ + Verifier que le formulaire existe et est valide + """ + is_form_exist = MYSY_GV.dbname['formulaire'].count_documents({'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked': '0', + '_id': ObjectId(str(diction['form_id']))}) + + if (is_form_exist <= 0): + mycommon.myprint(" L'identifiant du formulaire est invalide ") + return False, " L'identifiant du formulaire est invalide " + + + # si 'question_id', verifier qu'il est valide + if ("question_id" in diction.keys()): + is_question_exist = MYSY_GV.dbname['formulaire'].count_documents( + {'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked': '0', + '_id': ObjectId(str(diction['form_id'])), + 'list_questions._id': str(diction['question_id'])}) + + if (is_question_exist <= 0): + mycommon.myprint(" L'identifiant de la question est invalide ") + return False, " L'identifiant de la question est invalide " + + + update = MYSY_GV.dbname['formulaire'].update_one({'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked': '0', + '_id': ObjectId(str(diction['form_id']))}, + + {'$pull': {"list_questions": {"_id": str(diction['question_id'])}}} + + ) + + if (update.modified_count <= 0): + mycommon.myprint( + str(inspect.stack()[0][ + 3]) + " Impossible de supprimer la question (2) ") + return False, " Impossible de supprimer la question (2) " + + return True, " La question a été correctement supprimée" + + + except Exception as e: + exc_type, exc_obj, exc_tb = sys.exc_info() + mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - Line : " + str(exc_tb.tb_lineno)) + return False, " Impossible de supprimer la question " + + +""" +Fonction pour supprimer un formulaire +""" +def Delete_Formulaire(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'form_id',] + + incom_keys = diction.keys() + for val in incom_keys: + if val not in field_list and val.startswith('my_') is False: + mycommon.myprint(str( + inspect.stack()[0][3]) + " Le champ '" + val + "' n'est pas autorisé") + return False, " Les informations fournies sont incorrectes" + + """ + Verification des champs obligatoires + """ + field_list_obligatoire = ['token', 'form_id',] + + for val in field_list_obligatoire: + if val not in diction: + mycommon.myprint( + str(inspect.stack()[0][3]) + " - La valeur '" + val + "' n'est pas presente dans liste ") + return False, " Les informations fournies sont incorrectes" + + """ + Verification de l'identité et autorisation de l'entité qui + appelle cette API + """ + token = "" + if ("token" in diction.keys()): + if diction['token']: + token = diction['token'] + + local_status, my_partner = mycommon.Check_Connexion_And_Return_Partner_Data(diction) + if (local_status is not True): + return local_status, my_partner + + """ + Verifier que le formulaire existe et est valide + """ + is_form_exist = MYSY_GV.dbname['formulaire'].count_documents({'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked': '0', + '_id': ObjectId(str(diction['form_id']))}) + + if (is_form_exist <= 0): + mycommon.myprint(" L'identifiant du formulaire est invalide ") + return False, " L'identifiant du formulaire est invalide " + + qry = {'partner_owner_recid': str(my_partner['recid']),'valide': '1', 'locked': '0', '_id': ObjectId(str(diction['form_id']))} + + delete_formulaire = MYSY_GV.dbname['formulaire'].delete_many(qry) + + return True, " Le formulaire a été correctement supprimé" + + + except Exception as e: + exc_type, exc_obj, exc_tb = sys.exc_info() + mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - Line : " + str(exc_tb.tb_lineno)) + return False, " Impossible de supprimer le questionnaire " + + +""" +Recuperer la listes des formulaire d'un partenaire +""" +def Get_List_Formulaire(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', ] + + incom_keys = diction.keys() + for val in incom_keys: + if val not in field_list and val.startswith('my_') is False: + mycommon.myprint(str( + inspect.stack()[0][3]) + " Le champ '" + val + "' n'est pas autorisé") + return False, " Les informations fournies sont incorrectes" + + """ + Verification des champs obligatoires + """ + field_list_obligatoire = ['token',] + + for val in field_list_obligatoire: + if val not in diction: + mycommon.myprint( + str(inspect.stack()[0][3]) + " - La valeur '" + val + "' n'est pas presente dans liste ") + return False, " Les informations fournies sont incorrectes" + + """ + Verification de l'identité et autorisation de l'entité qui + appelle cette API + """ + token = "" + if ("token" in diction.keys()): + if diction['token']: + token = diction['token'] + + local_status, my_partner = mycommon.Check_Connexion_And_Return_Partner_Data(diction) + if (local_status is not True): + return local_status, my_partner + + RetObject = [] + val_tmp = 0 + + qry = {"partner_owner_recid": str(my_partner['recid']), 'valide': '1', 'locked': '0'} + for New_retVal in MYSY_GV.dbname['formulaire'].find(qry).sort([("_id", pymongo.DESCENDING), ]): + user = New_retVal + user['id'] = str(val_tmp) + val_tmp = val_tmp + 1 + + RetObject.append(mycommon.JSONEncoder().encode(user)) + + return True, RetObject + + + except Exception as e: + exc_type, exc_obj, exc_tb = sys.exc_info() + mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - Line : " + str(exc_tb.tb_lineno)) + return False, " Impossible de récupérer la liste des formulaires " + + +""" +Fonction pour recuperer les données d'un formulaire données +""" +def Get_Given_Formulaire(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'form_id' ] + + incom_keys = diction.keys() + for val in incom_keys: + if val not in field_list and val.startswith('my_') is False: + mycommon.myprint(str( + inspect.stack()[0][3]) + " Le champ '" + val + "' n'est pas autorisé") + return False, " Les informations fournies sont incorrectes" + + """ + Verification des champs obligatoires + """ + field_list_obligatoire = ['token', 'form_id'] + + for val in field_list_obligatoire: + if val not in diction: + mycommon.myprint( + str(inspect.stack()[0][3]) + " - La valeur '" + val + "' n'est pas presente dans liste ") + return False, " Les informations fournies sont incorrectes" + + """ + Verification de l'identité et autorisation de l'entité qui + appelle cette API + """ + token = "" + if ("token" in diction.keys()): + if diction['token']: + token = diction['token'] + + local_status, my_partner = mycommon.Check_Connexion_And_Return_Partner_Data(diction) + if (local_status is not True): + return local_status, my_partner + + RetObject = [] + val_tmp = 0 + + qry = {"partner_owner_recid": str(my_partner['recid']), 'valide': '1', 'locked': '0', '_id':ObjectId(str(diction['form_id']))} + for New_retVal in MYSY_GV.dbname['formulaire'].find(qry).sort([("_id", pymongo.DESCENDING), ]): + user = New_retVal + user['id'] = str(val_tmp) + val_tmp = val_tmp + 1 + + RetObject.append(mycommon.JSONEncoder().encode(user)) + + return True, RetObject + + + except Exception as e: + exc_type, exc_obj, exc_tb = sys.exc_info() + mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - Line : " + str(exc_tb.tb_lineno)) + return False, " Impossible de récupérer la liste des formulaires " + + +""" +Fonction pour mettre à jour les données +d'un formulaire +""" + +def Update_Formulaire(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'code', 'nom', 'description', 'commentaire', 'form_id'] + + incom_keys = diction.keys() + for val in incom_keys: + if val not in field_list and val.startswith('my_') is False: + mycommon.myprint(str( + inspect.stack()[0][3]) + " Le champ '" + val + "' n'est pas autorisé") + return False, " Les informations fournies sont incorrectes" + + """ + Verification des champs obligatoires + """ + field_list_obligatoire = ['token', 'code', 'nom', 'description', 'form_id' ] + + for val in field_list_obligatoire: + if val not in diction: + mycommon.myprint( + str(inspect.stack()[0][3]) + " - La valeur '" + val + "' n'est pas presente dans liste ") + return False, " Les informations fournies sont incorrectes" + + """ + Verification de l'identité et autorisation de l'entité qui + appelle cette API + """ + token = "" + if ("token" in diction.keys()): + if diction['token']: + token = diction['token'] + + local_status, my_partner = mycommon.Check_Connexion_And_Return_Partner_Data(diction) + if (local_status is not True): + return local_status, my_partner + + """ + Verifier que le formulaire existe et est valide + """ + is_form_exist = MYSY_GV.dbname['formulaire'].count_documents({'partner_owner_recid': str(my_partner['recid']), + 'valide': '1', 'locked': '0', + '_id': ObjectId(str(diction['form_id']))}) + + if (is_form_exist <= 0): + mycommon.myprint(" L'identifiant du formulaire est invalide ") + return False, " L'identifiant du formulaire est invalide " + + mydata = {} + + mydata = diction + del mydata['token'] + + + mydata['date_update'] = str(datetime.now()) + mydata['update_by'] = str(my_partner['_id']) + + data_cle = {'partner_owner_recid': str(my_partner['recid']), 'valide': '1', 'locked': '0', '_id': ObjectId(str(diction['form_id']))} + + inserted_id = "" + result = MYSY_GV.dbname['formulaire'].find_one_and_update( + data_cle, + {"$set": mydata}, + upsert=False, + return_document=ReturnDocument.AFTER + ) + if (result is None or "_id" not in result.keys()): + mycommon.myprint( + " Impossible de mettre à jour le formulaire (2) ") + return False, " Impossible de mettre à jour le formulaire (2) " + + + return True, " Le formulaire a été correctement mis à jour " + + + except Exception as e: + exc_type, exc_obj, exc_tb = sys.exc_info() + mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - Line : " + str(exc_tb.tb_lineno)) + return False, " Impossible de mettre à jour le formulaire " + diff --git a/main.py b/main.py index 5bd1741..d2b42a2 100644 --- a/main.py +++ b/main.py @@ -79,6 +79,7 @@ import site_formation as site_formation import paiement_condition as paiement_condition import E_Sign_Document as E_Sign_Document import competence as competence +import formulaire_mgt as formulaire_mgt app = Flask(__name__) @@ -8175,6 +8176,101 @@ def Delete_Given_Competence(): return jsonify(status=status, message=retval) +""" +API pour ajouter un formulaire +""" +@app.route('/myclass/api/Add_Formulaire/', methods=['POST','GET']) +@crossdomain(origin='*') +def Add_Formulaire(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Add_Formulaire payload = ",payload) + status, retval = formulaire_mgt.Add_Formulaire(payload) + return jsonify(status=status, message=retval) + + +""" +API pour ajouter une question a un formulaire +""" +@app.route('/myclass/api/Add_Update_Question_Formulaire/', methods=['POST','GET']) +@crossdomain(origin='*') +def Add_Update_Question_Formulaire(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Add_Update_Question_Formulaire payload = ",payload) + status, retval = formulaire_mgt.Add_Update_Question_Formulaire(payload) + return jsonify(status=status, message=retval) + + +""" +API pour supprimer une question d'un formulaire +""" +@app.route('/myclass/api/Delete_Question_Formulaire/', methods=['POST','GET']) +@crossdomain(origin='*') +def Delete_Question_Formulaire(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Delete_Question_Formulaire payload = ",payload) + status, retval = formulaire_mgt.Delete_Question_Formulaire(payload) + return jsonify(status=status, message=retval) + + +""" +API pour supprimer un formulaire +""" +@app.route('/myclass/api/Delete_Formulaire/', methods=['POST','GET']) +@crossdomain(origin='*') +def Delete_Formulaire(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Delete_Formulaire payload = ",payload) + status, retval = formulaire_mgt.Delete_Formulaire(payload) + return jsonify(status=status, message=retval) + + + +""" +API pour recuperer la listes des formulaire d'un partenaire +""" +@app.route('/myclass/api/Get_List_Formulaire/', methods=['POST','GET']) +@crossdomain(origin='*') +def Get_List_Formulaire(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Get_List_Formulaire payload = ",payload) + status, retval = formulaire_mgt.Get_List_Formulaire(payload) + return jsonify(status=status, message=retval) + + + +""" +API pour recuperer les données d'un formulaire données +""" +@app.route('/myclass/api/Get_Given_Formulaire/', methods=['POST','GET']) +@crossdomain(origin='*') +def Get_Given_Formulaire(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Get_Given_Formulaire payload = ",payload) + status, retval = formulaire_mgt.Get_Given_Formulaire(payload) + return jsonify(status=status, message=retval) + + +""" +API pour mettre à jour les données +d'un formulaire +""" +@app.route('/myclass/api/Update_Formulaire/', methods=['POST','GET']) +@crossdomain(origin='*') +def Update_Formulaire(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Update_Formulaire payload = ",payload) + status, retval = formulaire_mgt.Update_Formulaire(payload) + return jsonify(status=status, message=retval) + + + if __name__ == '__main__': print(" debut api") context = SSL.Context(SSL.SSLv23_METHOD)