From 36142417a6adc959fe42f3b48af7d54b19358fa0 Mon Sep 17 00:00:00 2001 From: cherif Date: Sun, 4 Feb 2024 19:52:58 +0100 Subject: [PATCH] 04/02/2024 - 21h --- .idea/workspace.xml | 32 +- Log/log_file.log | 1868 ++++++++++++++++++++++++++++++++++++++ Session_Formation.py | 561 ++++++++++++ attestation_formation.py | 661 ++++++++++++++ main.py | 80 +- prj_common.py | 1 - 6 files changed, 3182 insertions(+), 21 deletions(-) create mode 100644 attestation_formation.py diff --git a/.idea/workspace.xml b/.idea/workspace.xml index b28c2f1..765273c 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -1,19 +1,13 @@ - + + - - - - - - - - + @@ -441,7 +435,6 @@ - @@ -466,6 +459,7 @@ - \ No newline at end of file diff --git a/Log/log_file.log b/Log/log_file.log index eb89f91..b593d40 100644 --- a/Log/log_file.log +++ b/Log/log_file.log @@ -2076875,3 +2076875,1871 @@ INFO:root:2024-02-03 20:48:36.053545 : ++ FLASK PORT 5001 ++ INFO:root:2024-02-03 20:48:36.053545 : ++ LMS_BAS_URL mysy-training.com/ ++ WARNING:werkzeug: * Debugger is active! INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-03 20:51:09.449648 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-03 20:51:09.452903 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-03 20:51:09.454917 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-03 20:51:09.458911 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-03 20:51:09.462194 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [03/Feb/2024 20:51:09] "POST /myclass/api/Get_List_Profil_Ressource_Humaine/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [03/Feb/2024 20:51:09] "POST /myclass/api/Get_List_Manager_Ressource_Humaine/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [03/Feb/2024 20:51:09] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [03/Feb/2024 20:51:09] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [03/Feb/2024 20:51:09] "POST /myclass/api/Get_Related_Target_Collection_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 12:56:04.546896 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 12:56:04.548240 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 12:56:04.548240 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 12:56:04.548240 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 12:56:04.548240 : ++ 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-02-04 12:56:17.454828 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 12:56:17.454828 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 12:56:17.454828 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 12:56:17.454828 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 12:56:17.454828 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 13:02:50.146781 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:50.148153 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:50.151189 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:50] "POST /myclass/api/get_List_domaine_formation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:50] "POST /myclass/api/Get_Suggested_Fr_Cities/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:50] "POST /myclass/api/Get_Suggested_Word/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:50.689139 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:50.692130 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:50] "POST /myclass/api/get_all_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.154876 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:51.158619 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:51.162975 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:51.163985 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.170204 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.177141 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.180546 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.192606 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.200978 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:51.207138 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.218421 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.221699 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:51.229204 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.235566 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.243852 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:51.245174 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.250181 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.259765 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.266793 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.273783 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.282192 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.290193 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:51.297196 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.308368 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.311370 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:51.314454 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.329869 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.339674 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.346674 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:51.353577 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:51] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:58.671015 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:58] "POST /myclass/api/partner_login/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:58.915150 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:58.922275 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:58.926345 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:58.930784 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:58] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:58] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:58.950443 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:58] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:59.048625 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:02:59.051899 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:02:59] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:02:59.978405 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:root:2024-02-04 13:02:59.979411 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:00] "POST /myclass/api/find_partner_class_like/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:00] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:05.061461 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:05.068463 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:05.072458 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:05] "POST /myclass/api/get_List_domaine_formation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:05] "POST /myclass/api/Get_Suggested_Fr_Cities/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:05] "POST /myclass/api/Get_Suggested_Word/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:06.675129 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:06.677653 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:06] "POST /myclass/api/get_all_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.008589 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.015100 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.020145 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.027092 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.035597 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.045937 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.050328 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.057543 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.066832 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.080960 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.087147 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.101144 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.110436 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.115230 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.129121 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.138241 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.145243 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.149078 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.154385 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.170872 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.181398 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.194494 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.195576 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.207131 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.216154 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.222180 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.231072 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.237080 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:07.249711 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:07.253382 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:07] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:15.073883 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:15.078252 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:15.084242 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:15.090205 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:15] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:15.106727 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:15] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:15.118024 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:03:15.127360 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:15] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:15] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:15] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:03:15.146139 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:15] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:03:15] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:06:17.779843 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:06:17] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:21:46.318868 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:21:46] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:23:13.523266 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:13] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:23:44.565690 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:23:44.587917 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:44] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:23:44.604842 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:23:44.608019 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:23:44.618749 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:23:44.626796 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:44] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:44] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:23:44.636979 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:44] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:23:44.653408 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:44] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:44] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:44] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:23:55.747969 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:23:55] "POST /myclass/api/Get_List_Convocations_Stagiaire_With_Filter/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 13:27:09.875299 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 13:27:09.875299 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 13:27:09.876299 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 13:27:09.876299 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 13:27:09.876299 : ++ 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\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 13:28:10.246198 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 13:28:10.247197 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 13:28:10.247197 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 13:28:10.247197 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 13:28:10.247197 : ++ 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\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 13:28:36.553091 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 13:28:36.553091 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 13:28:36.553091 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 13:28:36.553091 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 13:28:36.553091 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 13:33:02.665799 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:33:02] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:33:02.672193 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:33:02] "POST /myclass/api/Get_List_Partner_Document_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:34:01.920518 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:34:01.925005 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:34:01] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:34:01] "POST /myclass/api/Get_List_object_owner_collection_Stored_Files/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:34:15.182319 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:34:15] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:35:20.001854 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:35:20] "POST /myclass/api/Update_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:35:23.158523 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:35:23] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:35:35.320800 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:35:35.325854 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:35:35] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:35:35] "POST /myclass/api/Get_List_object_owner_collection_Stored_Files/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:35:43.294745 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:35:43] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:36:30.719101 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:36:30] "POST /myclass/api/Update_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:36:33.481269 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:36:33] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +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-02-04 13:41:17.309746 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 13:41:17.310758 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 13:41:17.310758 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 13:41:17.310758 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 13:41:17.310758 : ++ 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-02-04 13:41:28.030896 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 13:41:28.030896 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 13:41:28.030896 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 13:41:28.030896 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 13:41:28.030896 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 13:41:37.409675 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:41:37.415747 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:41:37.416749 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:41:37.422623 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:41:37.426445 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:41:37] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:41:37.436366 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:41:37] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:41:37] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:41:37.451015 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:41:37] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:41:37] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:41:37] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:41:38.568208 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:41:38] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:42:12.657686 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:42:12] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 13:44:34.165971 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 13:44:34.165971 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 13:44:34.165971 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 13:44:34.165971 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 13:44:34.166973 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 13:44:59.546366 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:44:59] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:45:10.736358 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:45:10.744352 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:45:10.749904 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:45:10.754900 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:45:10.760993 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:45:10] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:45:10.768389 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:45:10] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:45:10] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:45:10.780138 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:45:10] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:45:10] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:45:10] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:45:11.471763 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:45:11] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:45:31.156630 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:45:31] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:53:40.203796 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:53:40] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:54:25.458593 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:54:25.463592 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:54:25.475592 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:25] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:54:25.492592 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:54:25.501584 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:54:25.505836 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:25] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:25] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:25] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:54:25.514963 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:25] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:54:25.525123 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:25] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:25] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:54:34.793682 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:34] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:54:46.483092 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 13:54:46.498733 : Init_Attestation_Formation_With_Template -'' is not a valid ObjectId, it must be a 12-byte input or a 24-character hex string - Line : 103 +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:54:46] "POST /myclass/api/Init_Attestation_Formation_With_Template/ HTTP/1.1" 200 - +INFO:root:2024-02-04 13:55:33.183820 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 13:55:33] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 13:59:22.629424 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 13:59:22.629424 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 13:59:22.630422 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 13:59:22.630422 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 13:59:22.630422 : ++ 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\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 14:00:13.460545 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:00:13.461527 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:00:13.461527 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:00:13.461527 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:00:13.461527 : ++ 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-02-04 14:01:30.157472 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:01:30.158475 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:01:30.158475 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:01:30.158475 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:01:30.158475 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 14:04:12.711791 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:04:12] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:04:24.461803 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:04:24] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:04:28.208967 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:04:28.863029 : Init_Attestation_Formation_With_Template_For_All_Inscription -"{'_id': ObjectId('65b9103c812ebc1b22d74c90'), 'email': 'mysy1000formation+03@gmail.com', 'session_id': '65b378562f89e592bf0e4b78', 'adresse': '', 'apprenant_id': '65b9045422842c74efcaa46d', 'civilite': 'Mme', 'class_internal_url': 'praticien-en-aromatherapie-integrative-d51_dup', 'code_postal': '', 'date_au': '19/03/2024', 'date_du': '15/03/2024', 'date_naissance': '30/01/1984', 'date_update': '2024-01-31 12:10:07.184559', 'employeur': '', 'inscription_validation_date': '31/01/2024 12:10:04', 'locked': '0', 'nom': 'nom', 'opco': '', 'partner_owner_recid': 'dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a', 'pays': '', 'prenom': 'prenom01', 'price': '458', 'status': '1', 'telephone': '0123456789', 'tuteur1_adresse': '', 'tuteur1_cp': '', 'tuteur1_email': '', 'tuteur1_include_com': '', 'tuteur1_nom': '', 'tuteur1_pays': '', 'tuteur1_prenom': '', 'tuteur1_telephone': '', 'tuteur1_ville': '', 'tuteur2_adresse': '', 'tuteur2_cp': '', 'tuteur2_email': '', 'tuteur2_include_com': '', 'tuteur2_nom': '', 'tuteur2_pays': '', 'tuteur2_prenom': '', 'tuteur2_telephone': '', 'tuteur2_ville': '', 'type_apprenant': '0', 'update_by': '64ad69a9676a466fea8a8c02', 'valide': '1', 'ville': '', 'client_rattachement_id': '', 'comment': '', 'modefinancement': ''}" is not a valid ObjectId, it must be a 12-byte input or a 24-character hex string - Line : 236 +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:04:28] "POST /myclass/api/Init_Attestation_Formation_With_Template_For_All_Inscription/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 14:07:27.942837 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:07:27.943839 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:07:27.943839 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:07:27.943839 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:07:27.943839 : ++ 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-02-04 14:07:39.264641 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:07:39.264641 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:07:39.265641 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:07:39.265641 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:07:39.265641 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 14:07:42.562182 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:07:42] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:07:47.945169 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:07:48.612811 : Init_Attestation_Formation_With_Template_For_All_Inscription -"{'_id': ObjectId('65b9103c812ebc1b22d74c90'), 'email': 'mysy1000formation+03@gmail.com', 'session_id': '65b378562f89e592bf0e4b78', 'adresse': '', 'apprenant_id': '65b9045422842c74efcaa46d', 'civilite': 'Mme', 'class_internal_url': 'praticien-en-aromatherapie-integrative-d51_dup', 'code_postal': '', 'date_au': '19/03/2024', 'date_du': '15/03/2024', 'date_naissance': '30/01/1984', 'date_update': '2024-01-31 12:10:07.184559', 'employeur': '', 'inscription_validation_date': '31/01/2024 12:10:04', 'locked': '0', 'nom': 'nom', 'opco': '', 'partner_owner_recid': 'dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a', 'pays': '', 'prenom': 'prenom01', 'price': '458', 'status': '1', 'telephone': '0123456789', 'tuteur1_adresse': '', 'tuteur1_cp': '', 'tuteur1_email': '', 'tuteur1_include_com': '', 'tuteur1_nom': '', 'tuteur1_pays': '', 'tuteur1_prenom': '', 'tuteur1_telephone': '', 'tuteur1_ville': '', 'tuteur2_adresse': '', 'tuteur2_cp': '', 'tuteur2_email': '', 'tuteur2_include_com': '', 'tuteur2_nom': '', 'tuteur2_pays': '', 'tuteur2_prenom': '', 'tuteur2_telephone': '', 'tuteur2_ville': '', 'type_apprenant': '0', 'update_by': '64ad69a9676a466fea8a8c02', 'valide': '1', 'ville': '', 'client_rattachement_id': '', 'comment': '', 'modefinancement': ''}" is not a valid ObjectId, it must be a 12-byte input or a 24-character hex string - Line : 258 +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:07:48] "POST /myclass/api/Init_Attestation_Formation_With_Template_For_All_Inscription/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 14:09:24.330970 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:09:24.330970 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:09:24.331967 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:09:24.331967 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:09:24.331967 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 14:09:30.554864 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:09:30] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:09:34.164651 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:09:34] "POST /myclass/api/Init_Attestation_Formation_With_Template_For_All_Inscription/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:09:34.896588 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:09:34] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:10:41.633817 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:10:41] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 14:14:34.033197 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:14:34.034286 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:14:34.034286 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:14:34.034286 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:14:34.034286 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 14:14:38.870321 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:14:38.875148 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:14:38.890182 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:14:38.898137 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:14:38.908395 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:14:38.915118 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:14:38] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:14:38] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:14:38.927619 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:14:38] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:14:38] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:14:38] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:14:39] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:14:39.635801 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:14:39] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:15:08.736890 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:15:08] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:15:12.569979 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:15:12] "POST /myclass/api/Init_Attestation_Formation_With_Template_For_All_Inscription/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:15:13.576222 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:15:13] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 14:21:28.571353 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:21:28.571353 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:21:28.571353 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:21:28.571353 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:21:28.571353 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 14:21:28.627210 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:21:28.632247 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:21:28.635810 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:21:28.643312 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:21:28.650305 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:21:28] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:21:28.661602 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:21:28.671684 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:21:28] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:21:28] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:21:28] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:21:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:21:28] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:21:29.390494 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:21:29] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 14:22:07.108870 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:22:07.109863 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:22:07.109863 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:22:07.109863 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:22:07.109863 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 14:22:36.373202 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:22:36] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:22:45.151028 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:22:45.155061 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:22:45.165549 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:22:45.178087 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 14:22:45.186912 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:22:45] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:22:45.191346 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:22:45] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:22:45] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:22:45.199087 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:22:45] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:22:45] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:22:45] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:root:2024-02-04 14:22:45.840038 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:22:45] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 14:23:46.904895 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 14:23:46.904895 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 14:23:46.904895 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 14:23:46.905912 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 14:23:46.905912 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 14:24:24.407223 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 14:24:24] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:45:31.075899 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 15:45:31.076894 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 15:45:31.076894 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 15:45:31.076894 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 15:45:31.076894 : ++ 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-02-04 15:45:41.616416 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 15:45:41.616416 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 15:45:41.616926 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 15:45:41.616926 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 15:45:41.616926 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 15:46:43.198295 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:43.199293 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:43.200295 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:43] "POST /myclass/api/get_List_domaine_formation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:43] "POST /myclass/api/Get_Suggested_Fr_Cities/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:43] "POST /myclass/api/Get_Suggested_Word/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:43.635947 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:43.637960 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:43] "POST /myclass/api/get_all_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.162968 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.167156 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.170389 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.175275 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.177799 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.183832 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.194634 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.203862 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.212321 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.220957 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.227318 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.233786 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.242974 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.249491 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.255575 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.258962 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.264128 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.272223 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.278782 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.283267 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.292845 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.298045 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.300116 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.305928 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.311598 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.317081 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.323959 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.328868 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:44.335718 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:44.340191 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:44] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:49.165100 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:49] "POST /myclass/api/partner_login/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:49.379637 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:49.383276 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:49.386927 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:49.392701 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:49] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:49.417699 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:49] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:49] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:49.496923 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:49.499368 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:49] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:50.354138 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:root:2024-02-04 15:46:50.354138 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:50] "POST /myclass/api/find_partner_class_like/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:50] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:53.600786 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:53.604104 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:53.608355 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:53.612373 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:53.622189 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:53.625534 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:53.631800 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:53.636820 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:53.647414 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:53.668260 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:53] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:46:58.743781 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:58.746843 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:58.751223 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:58.754744 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 15:46:58.760208 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:58] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:58] "POST /myclass/api/Get_Session_Sequence_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:58] "POST /myclass/api/GetSessionFormation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:58] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:46:58] "POST /myclass/api/GetTableauEmargement/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:47:14.322877 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:47:14] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:47:14.472794 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:47:14] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:47:32.023566 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:47:32] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:47:35.696097 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:47:35] "POST /myclass/api/Init_Attestation_Formation_With_Template_For_All_Inscription/ HTTP/1.1" 200 - +INFO:root:2024-02-04 15:47:36.187766 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 15:47:36] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 15:48:13.141396 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 15:48:13.142394 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 15:48:13.142394 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 15:48:13.142394 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 15:48:13.142394 : ++ 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\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 15:50:28.741190 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 15:50:28.741190 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 15:50:28.742190 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 15:50:28.742190 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 15:50:28.742190 : ++ 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-02-04 15:50:39.288464 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 15:50:39.289461 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 15:50:39.289461 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 15:50:39.289461 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 15:50:39.289461 : ++ 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\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 15:52:02.625263 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 15:52:02.625263 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 15:52:02.625263 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 15:52:02.625263 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 15:52:02.625263 : ++ 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\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 15:54:15.727630 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 15:54:15.727630 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 15:54:15.727630 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 15:54:15.727630 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 15:54:15.727630 : ++ 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-02-04 15:54:25.814284 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 15:54:25.815309 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 15:54:25.815309 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 15:54:25.815309 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 15:54:25.815309 : ++ 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\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:04:02.853732 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:04:02.853732 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:04:02.853732 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:04:02.853732 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:04:02.854724 : ++ 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\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:04:55.721202 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:04:55.721202 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:04:55.721202 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:04:55.722216 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:04:55.722216 : ++ 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\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:06:13.147791 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:06:13.147791 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:06:13.147791 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:06:13.148835 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:06:13.148835 : ++ 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\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:17:29.525713 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:17:29.526811 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:17:29.526811 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:17:29.526811 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:17:29.526811 : ++ 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-02-04 16:17:40.838692 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:17:40.838692 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:17:40.838692 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:17:40.838692 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:17:40.838692 : ++ 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-02-04 16:20:46.186090 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:20:46.186090 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:20:46.186090 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:20:46.187091 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:20:46.187091 : ++ 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\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:22:24.710376 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:22:24.710376 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:22:24.710376 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:22:24.710376 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:22:24.710376 : ++ 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\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:26:38.529531 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:26:38.529531 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:26:38.529531 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:26:38.529531 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:26:38.529531 : ++ 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-02-04 16:26:48.536531 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:26:48.536531 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:26:48.536531 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:26:48.537531 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:26:48.537531 : ++ 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\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:27:36.567224 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:27:36.568236 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:27:36.568236 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:27:36.568236 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:27:36.568236 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 16:32:53.999320 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:32:54] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:15.259879 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.262886 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.265884 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:15.280816 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:15.510789 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.512855 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.515060 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/get_List_domaine_formation/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:15.558779 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.565784 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.570779 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.577192 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/Get_Suggested_Fr_Cities/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:15.626365 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.634743 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:15.683989 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/Get_Suggested_Word/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:15.741156 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:15.750643 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:15] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.176545 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.178986 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/get_all_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.654130 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.658308 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.664713 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.668941 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.678764 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.684503 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.697933 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.703708 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.715575 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.725023 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.734340 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.739278 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.747763 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.752062 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.758733 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.795214 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.799227 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.802043 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.815189 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.825198 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.841743 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.852796 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.873327 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.882931 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.890646 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.897005 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.907182 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:16.910685 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.936310 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:16.949896 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:16] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:17.634516 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:17] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:22.345576 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:22.352254 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:22.361017 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:22.373021 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:22.384641 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:22.398213 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:22] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:22] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:22] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:22] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:22.417024 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:22] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:22] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:22.431377 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:22] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:25.781225 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:25.785776 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:25.789780 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:25.795021 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:25.800020 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:25] "POST /myclass/api/Get_Session_Sequence_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:25] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:25] "POST /myclass/api/GetSessionFormation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:25] "POST /myclass/api/GetTableauEmargement/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:33:25] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:33:59.062003 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:33:59.479349 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:00] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:00] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:34:46.445826 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:46] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:34:47.413622 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:47] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:34:56.853953 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:34:56.857707 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:34:56.864814 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:34:56.872085 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:34:56.885404 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:56] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:34:56.897414 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:56] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:34:56.903730 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:56] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:56] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:56] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:56] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:34:56.923361 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:34:56] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:16.439790 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:16] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:16.539710 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:16] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:28.062290 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:37:28.067283 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:37:28.075485 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:37:28.085903 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:37:28.092671 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:28] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:28.100810 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:28] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:28] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:28.109942 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:28] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:28.124949 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:28] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:28] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:37:52.721497 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:37:52.721497 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:37:52.721497 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:37:52.722498 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:37:52.722498 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 16:37:58.401930 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:37:58.406369 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:37:58.411247 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:37:58.418250 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:37:58.426339 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:58] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:58.434744 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:58] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:58.444393 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:58] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:58] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:58] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:58] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:37:59.141450 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:37:59] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:38:21.614870 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:38:21] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:38:22.404751 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:38:22] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:38:54.259963 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:38:54] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:38:55.387604 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:38:55] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:39:05.668881 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:39:05.673591 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:05] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:05] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:39:22.896800 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:39:22.903577 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:22] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:39:22.910574 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:39:22.926719 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:22] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:22] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:39:23.167126 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:39:23.174364 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:39:23.182593 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:39:23.189841 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:39:23.200843 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:39:23.212776 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:39:23.216780 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:39:23.238225 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:39:23.267307 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:39:23.298474 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:39:23] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:44:52.449741 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:44:52.449741 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:44:52.449741 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:44:52.449741 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:44:52.449741 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 16:45:35.482632 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:45:35] "GET /myclass/api/Init_And_Update_courrier_template_tracking HTTP/1.1" 308 - +INFO:root:2024-02-04 16:45:35.490629 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:45:35.508632 : La session de connexion n'est pas valide +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:45:35] "GET /myclass/api/Init_And_Update_courrier_template_tracking/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:45:49.272594 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:45:49] "GET /myclass/api/Init_And_Update_courrier_template_tracking HTTP/1.1" 308 - +INFO:root:2024-02-04 16:45:49.281630 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:45:49.285985 : La session de connexion n'est pas valide +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:45:49] "GET /myclass/api/Init_And_Update_courrier_template_tracking/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:02.369298 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:02.565485 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:02.582474 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:02.608472 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:02.831818 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:02.836544 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:02.851598 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:02.859751 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:02.870410 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:02.879145 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:02.888453 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:02.908668 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:02.941208 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:02] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:03] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:04.176239 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:04] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:10.825768 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:10] "GET /myclass/api/Init_And_Update_courrier_template_tracking HTTP/1.1" 308 - +INFO:root:2024-02-04 16:46:10.832509 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:10] "GET /myclass/api/Init_And_Update_courrier_template_tracking/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.002584 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.007552 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.011914 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.025413 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.235550 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.241427 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.244920 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.251189 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.258215 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.266698 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.286877 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.301965 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.325416 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.332447 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.350135 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.357778 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.384590 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.389439 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.395577 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.399794 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:28.411183 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:28.494218 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:28] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:37.767982 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:37.771985 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:37.777296 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:37.785103 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:37.791101 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:37] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:37] "POST /myclass/api/Get_Session_Sequence_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:37] "POST /myclass/api/GetTableauEmargement/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:37] "POST /myclass/api/GetSessionFormation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:37] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:52.732336 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:46:52.735149 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:52] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:52] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:57.263459 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:57] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:46:57.419637 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:46:57] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:47:12.928945 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:47:12.978656 : Sent_Attestation_Stagiaire_By_Email L'identifiant du modèle de courrier est invalide +INFO:root:2024-02-04 16:47:12.978656 : WARNING impossible d'envoyer l'attestation de formation a l'apprenant : 65bb5abec34356e61740315e +INFO:root:2024-02-04 16:47:12.980656 : Prepare_and_Send_Attestation_From_Session_By_Email -'courrier_template_id' - Line : 6371 +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:47:12] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:48:02.649836 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:48:02.650835 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:48:02.650835 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:48:02.650835 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:48:02.650835 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 16:48:02.726862 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:48:03.639718 : Sent_Attestation_Stagiaire_By_Email L'identifiant du modèle de courrier est invalide +INFO:root:2024-02-04 16:48:03.640716 : WARNING impossible d'envoyer l'attestation de formation a l'apprenant : 65bb5abec34356e61740315e +INFO:root:2024-02-04 16:48:03.673713 : Sent_Attestation_Stagiaire_By_Email L'identifiant du modèle de courrier est invalide +INFO:root:2024-02-04 16:48:03.673713 : WARNING impossible d'envoyer l'attestation de formation a l'apprenant : 65bb6566c34356e617404cb8 +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:48:03] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:48:04.466184 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:48:04] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:50:39.814669 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:50:39.815669 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:50:39.815669 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:50:39.815669 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:50:39.815669 : ++ 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\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 16:51:21.635528 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 16:51:21.635528 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 16:51:21.635528 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 16:51:21.635528 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 16:51:21.635528 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 16:52:04.053380 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 16:52:04.057118 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:52:04] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:52:04] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:57:34.355811 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:57:34] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:59:09.494687 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:59:11] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:59:11.572668 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:59:11] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:59:26.269180 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:59:26] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:59:28.578726 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:59:28] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 16:59:28.728162 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 16:59:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:00:12.401442 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:00:12.406827 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:00:12] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:00:12] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:00:23.196358 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:00:23] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:00:23.430065 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:00:23] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 17:01:28.419953 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 17:01:28.419953 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 17:01:28.419953 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 17:01:28.420953 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 17:01:28.420953 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 17:02:28.553967 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:02:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:02:28.634610 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:02:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:02:42.726706 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:02:44] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:02:44.653715 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:02:44] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\Session_Formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 17:03:37.993707 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 17:03:37.993707 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 17:03:37.993707 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 17:03:37.993707 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 17:03:37.993707 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 17:04:18.541541 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:04:18] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:04:19.550199 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:04:19] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:04:24.389760 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:04:24] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:04:40.946287 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:04:43] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:04:43.950942 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:04:43] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:04:56.950373 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:04:56] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:05:01.617111 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:05:01] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:05:01.763811 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:05:01] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:54.877184 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:54.882558 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:54.886842 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:54] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:54] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:54.915955 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:54] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:55.088492 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:55.092485 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:55.096641 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:55.102633 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:55.106934 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:55] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:55.115916 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:55] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:55.128964 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:55.136428 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:55] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:55] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:55.155095 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:55] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:55] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:55] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:55] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:56.171209 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:56.177216 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:56.182234 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:56.187390 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:06:56.193877 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:56] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:56.214639 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:56] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:56] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:56] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:56.225814 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:56] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:56] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:06:56.833077 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:root:2024-02-04 17:06:56.833077 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:56] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:06:56] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:07:28.249184 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:28.255020 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:28.259536 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:28.267153 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:28.272835 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:28.277345 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:28] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:28] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:07:28.292884 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:28] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:28] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:07:28.307225 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:28] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:28] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:07:33.673070 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:33.677569 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:33.680584 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:33.683783 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:07:33.693813 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:33] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:33] "POST /myclass/api/Get_Session_Sequence_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:33] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:33] "POST /myclass/api/GetTableauEmargement/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:33] "POST /myclass/api/GetSessionFormation/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:07:55.923705 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:55] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:07:56.205216 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:07:56] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:09:01.980962 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:09:02] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:09:03.020234 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:09:03] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:09:13.579307 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:09:13] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:09:58.226377 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:09:58] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:09:59.218497 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:09:59] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:28.059734 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:28.907719 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:28] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:41.148812 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:41.153416 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:41.159904 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:41.168151 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:41.370815 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:41.377615 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:41.384878 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:41.393985 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:41.401430 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:41.411289 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:41.423434 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:41.435321 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:41.443863 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:41.465237 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:41.915715 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:41] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:48.028533 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:48.031536 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:48.036940 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:48.046413 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:12:48.050008 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:48] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:48.064551 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:48] "POST /myclass/api/Get_Personnalisable_Collection_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:48.075111 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:48] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:48] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:48] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:48] "POST /myclass/api/get_list_specific_field_partner_by_object/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:48.099610 : get_Agenda_Event_List - La valeur 'related_collection' n'est pas presente dans liste +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:48] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:12:54.993451 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:12:55] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:13:04.732756 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:13:04] "POST /myclass/api/Init_Attestation_Formation_With_Template_For_All_Inscription/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:13:05.536273 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:13:05] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:13:43.781829 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:13:43] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:13:53.653686 : Security check : IP adresse '127.0.0.1' connected +DEBUG:xhtml2pdf:pisaDocument options: + src = '

 

\n

\n
\n
\n
\n

A l\'attention  Neutre   qsdsqdqssqds qsdsqdqs  

Situé :        

\n
\n
\n
\n
\n
 
\n
L\'Organisme de formation  MySy Dev Compte   ci-après nommé l\'Organisme de formation
Situé : place du test  
Déclation d\'activité :  mysy_NDA 1234  Représenté par : [PDG]
Signataire dûment habilité aux fins des présentes : Sekou Cheif BALDE 
Contact :  cbalde@mysy-training.com 
Téléphone : 0123456789 
\n

\n
à le plaisir de vous convier à la formation ci-dessous :


Formation :   PRATICIEN EN AROMATHERAPIE INTEGRATIVE_dup
Durée :  12.0 jour (s)
Lieu de formation :   Paris 5
Dates de formation :  15/03/2024 19/03/2024
Nom formateur :  emp_test01 prenom01
\n

Vous êtes invités à vous présenter 20 minutes avant l\'horaire prévu.
\n
 
\n
Les séquences de formartion  :
\n
 
\n
Au plaisir de vous retrouver prochainement,
\n
Paris , 04/02/2024
\n

 

\n

 MySy Dev Compte 
Téléphone : 01234562 
Email :  mysytraining+dev@gmail.com 
Site :  www.mysy-test.com 

\n

 

\n
' + dest = <_io.BufferedRandom name='./temp_direct/Convocation_dbdd3_61978.pdf'> + path = None + link_callback = None + xhtml = False + context_meta = None +DEBUG:xhtml2pdf:pisaDocument options: + src = '

 

\n

\n
\n
\n
\n

A l\'attention  Mme   sekou04 balde04  

Situé :        

\n
\n
\n
\n
\n
 
\n
L\'Organisme de formation  MySy Dev Compte   ci-après nommé l\'Organisme de formation
Situé : place du test  
Déclation d\'activité :  mysy_NDA 1234  Représenté par : [PDG]
Signataire dûment habilité aux fins des présentes : Sekou Cheif BALDE 
Contact :  cbalde@mysy-training.com 
Téléphone : 0123456789 
\n

\n
à le plaisir de vous convier à la formation ci-dessous :


Formation :   PRATICIEN EN AROMATHERAPIE INTEGRATIVE_dup
Durée :  12.0 jour (s)
Lieu de formation :   Paris 5
Dates de formation :  15/03/2024 19/03/2024
Nom formateur :  emp_test01 prenom01
\n

Vous êtes invités à vous présenter 20 minutes avant l\'horaire prévu.
\n
 
\n
Les séquences de formartion  :
\n
 
\n
Au plaisir de vous retrouver prochainement,
\n
Paris , 04/02/2024
\n

 

\n

 MySy Dev Compte 
Téléphone : 01234562 
Email :  mysytraining+dev@gmail.com 
Site :  www.mysy-test.com 

\n

 

\n
' + dest = <_io.BufferedRandom name='./temp_direct/Convocation_dbdd3_60484.pdf'> + path = None + link_callback = None + xhtml = False + context_meta = None +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:13:55] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:13:55.510643 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:13:55] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:15:00.185573 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:15:00] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:15:37.999880 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:15:38] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:16:36.024065 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:16:36] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:18:35.157685 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:35.165450 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:35.171447 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:18:35.179644 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:18:35.292227 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:35.297830 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:35.305330 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:35.311597 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:35.323160 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:18:35.333165 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:35.345092 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:35.356751 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:18:35.373071 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:18:35.389598 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:35] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:18:42.336768 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:42.341128 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:42.348400 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:42.355920 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:18:42.362155 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:42] "POST /myclass/api/Get_Session_Sequence_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:42] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:42] "POST /myclass/api/GetSessionFormation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:42] "POST /myclass/api/GetTableauEmargement/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:18:42] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:21:07.743570 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:21:07.746606 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:21:07] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:21:07] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:21:12.805620 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:21:12] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:21:12.948093 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:21:12] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:21:23.164115 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:21:23] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:26.196860 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:26] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:27.075349 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:27] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:29.221341 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:29] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:43.350928 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:43.354338 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:43.358649 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:43.367605 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:43.493076 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:43.497636 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:43.502073 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:43.505352 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:43.514998 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:43.516015 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:43.534440 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:43.541442 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:43.554968 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:43.577135 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:43] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:22:50.586303 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:50.590440 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:50.596452 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:50.599836 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:22:50.605419 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:50] "POST /myclass/api/Get_Session_Sequence_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:50] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:50] "POST /myclass/api/GetTableauEmargement/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:50] "POST /myclass/api/GetSessionFormation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:22:50] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:23:04.630310 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:04] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:23:04.770299 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:04] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:23:13.671321 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:13] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:23:17.602195 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:17] "POST /myclass/api/Init_Attestation_Formation_With_Template_For_All_Inscription/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:23:18.137123 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:18] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:23:30.537601 : Security check : IP adresse '127.0.0.1' connected +DEBUG:xhtml2pdf:pisaDocument options: + src = '

 

\n

\n
\n
\n
\n

A l\'attention  Mme   penom part4_client  

Situé :        

\n
\n
\n
\n
\n
 
\n
L\'Organisme de formation  MySy Dev Compte   ci-après nommé l\'Organisme de formation
Situé : place du test  
Déclation d\'activité :  mysy_NDA 1234  Représenté par : [PDG]
Signataire dûment habilité aux fins des présentes : Sekou Cheif BALDE 
Contact :  cbalde@mysy-training.com 
Téléphone : 0123456789 
\n

\n
à le plaisir de vous convier à la formation ci-dessous :


Formation :   Introduction à la gestion des bases de données - SQL
Durée :  5.0 jour (s)
Lieu de formation :   Roissy
Dates de formation :  18/02/2024 23/02/2024
Nom formateur :  balde_em sekou_empl
\n

Vous êtes invités à vous présenter 20 minutes avant l\'horaire prévu.
\n
 
\n
Les séquences de formartion  :
\n
 
\n
Au plaisir de vous retrouver prochainement,
\n
Paris , 04/02/2024
\n

 

\n

 MySy Dev Compte 
Téléphone : 01234562 
Email :  mysytraining+dev@gmail.com 
Site :  www.mysy-test.com 

\n

 

\n
' + dest = <_io.BufferedRandom name='./temp_direct/Convocation_dbdd3_88399.pdf'> + path = None + link_callback = None + xhtml = False + context_meta = None +DEBUG:xhtml2pdf:pisaDocument options: + src = '

 

\n

\n
\n
\n
\n

A l\'attention  Mme   prenom 05 part 05 client  

Situé :        

\n
\n
\n
\n
\n
 
\n
L\'Organisme de formation  MySy Dev Compte   ci-après nommé l\'Organisme de formation
Situé : place du test  
Déclation d\'activité :  mysy_NDA 1234  Représenté par : [PDG]
Signataire dûment habilité aux fins des présentes : Sekou Cheif BALDE 
Contact :  cbalde@mysy-training.com 
Téléphone : 0123456789 
\n

\n
à le plaisir de vous convier à la formation ci-dessous :


Formation :   Introduction à la gestion des bases de données - SQL
Durée :  5.0 jour (s)
Lieu de formation :   Roissy
Dates de formation :  18/02/2024 23/02/2024
Nom formateur :  balde_em sekou_empl
\n

Vous êtes invités à vous présenter 20 minutes avant l\'horaire prévu.
\n
 
\n
Les séquences de formartion  :
\n
 
\n
Au plaisir de vous retrouver prochainement,
\n
Paris , 04/02/2024
\n

 

\n

 MySy Dev Compte 
Téléphone : 01234562 
Email :  mysytraining+dev@gmail.com 
Site :  www.mysy-test.com 

\n

 

\n
' + dest = <_io.BufferedRandom name='./temp_direct/Convocation_dbdd3_25844.pdf'> + path = None + link_callback = None + xhtml = False + context_meta = None +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:31] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:23:32.375872 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:33] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:23:36.744838 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:23:36.749087 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:36] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:23:36] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:26:59.844865 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:26:59.855984 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:26:59.866392 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:26:59.872193 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:26:59] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:26:59] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:26:59] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:26:59] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:27:21.010698 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:27:21.014688 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:27:21.021696 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:27:21.029517 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:27:21.135886 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:27:21.139872 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:27:21.144191 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:27:21.151201 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:27:21.158197 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:27:21.165766 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:27:21.173660 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/Get_List_Ressource_Materielle_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:27:21.181072 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:27:21.189883 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/Get_List_Partner_Or_Default_session_step/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/GetPartnerAttestation_Certificat/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/Get_Partner_List_Partner_Client/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/Get_List_Ressource_Humaine_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:27:21.209435 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:27:21] "POST /myclass/api/GetAllValideSessionPartner_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:28:28.118353 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:28:28.122369 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:28:28.126523 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:28:28.130025 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:28:28.137536 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:28:28] "POST /myclass/api/Get_Session_Sequence_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:28:28] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:28:28] "POST /myclass/api/GetSessionFormation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:28:28] "POST /myclass/api/GetAllClassStagiaire/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:28:28] "POST /myclass/api/GetTableauEmargement/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:29:07.989521 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:29:07] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:29:08.241674 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:29:08] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:29:12.284822 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:29:12.290271 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:29:12] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:29:12] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:31:24.933407 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:31:24.938569 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:31:24.955701 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:31:24.961693 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:31:24] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:31:24] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:31:24] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:31:25] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:32:07.487811 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:32:07.492885 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:32:07.507227 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:32:07.512579 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:32:07] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:32:07] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:32:07] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:32:07] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:33:44.268508 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:33:44.274773 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:33:44] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:33:44] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 17:33:44.319114 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 17:33:44.324306 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:33:44] "POST /myclass/api/Get_Given_SessionFormation_From_Id/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 17:33:44] "POST /myclass/api/Get_Editable_Document_By_Partner_By_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:39:11.271452 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:39:11] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:39:11.650124 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:39:11] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:39:49.920072 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:39:49] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:40:13.062795 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:40:13] "POST /myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:43:54.702075 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 18:43:54.711707 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 18:43:54.721489 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 18:43:54.730494 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:43:54] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:43:54.754657 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:43:54] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:43:54] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:43:54.772746 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:43:54] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:43:55.014624 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 18:43:55.023253 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:43:55] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:43:55.064565 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:43:55] "POST /myclass/api/find_partner_class_like/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:44:02.004561 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:44:02] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:44:02.014049 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:44:02] "POST /myclass/api/Get_List_Partner_Document_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:44:04.787135 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 18:44:04.793707 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:44:04] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:44:04] "POST /myclass/api/Get_List_object_owner_collection_Stored_Files/ HTTP/1.1" 200 - +INFO:root:2024-02-04 18:44:19.000609 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 18:44:19] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 19:05:21.846520 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 19:05:21.846520 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 19:05:21.846520 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 19:05:21.846520 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 19:05:21.846520 : ++ 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\\attestation_formation.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 19:06:04.373938 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 19:06:04.373938 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 19:06:04.373938 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 19:06:04.373938 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 19:06:04.373938 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 19:20:51.352069 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:20:51] "POST /myclass/api/Update_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:20:54.623178 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:20:54] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\prj_common.py', reloading +INFO:werkzeug: * Restarting with stat +INFO:root:2024-02-04 19:23:15.945720 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++ +INFO:root:2024-02-04 19:23:15.946728 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++ +INFO:root:2024-02-04 19:23:15.946728 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++ +INFO:root:2024-02-04 19:23:15.946728 : ++ FLASK PORT 5001 ++ +INFO:root:2024-02-04 19:23:15.946728 : ++ LMS_BAS_URL mysy-training.com/ ++ +WARNING:werkzeug: * Debugger is active! +INFO:werkzeug: * Debugger PIN: 877-541-979 +INFO:root:2024-02-04 19:26:27.423478 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:27.425480 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:27.427472 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:27] "POST /myclass/api/get_List_domaine_formation/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:27] "POST /myclass/api/Get_Suggested_Fr_Cities/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:27] "POST /myclass/api/Get_Suggested_Word/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:27.839941 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:27.840992 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:27] "POST /myclass/api/get_all_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.648608 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.652802 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.659334 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.664017 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.669400 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.679298 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.688897 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.696644 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.703650 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.716036 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.720473 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.732492 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.741981 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.753678 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.760244 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.768456 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.775328 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.783812 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.789056 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.798249 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.806642 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.818340 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.821349 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.829344 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.832343 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.839238 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.850826 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:28.860377 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.864787 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:28.869150 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:28] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:29.266115 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:29.272115 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:29.275115 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:29] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:29.284115 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:29.295115 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:29] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:29] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:29.406752 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:29.409751 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:29] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:29.987326 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:root:2024-02-04 19:26:29.988372 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:30] "POST /myclass/api/find_partner_class_like/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:30] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:35.166039 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:35.170044 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:35] "POST /myclass/api/Get_Personnalisable_Collection/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:35] "POST /myclass/api/Get_List_Partner_Document_no_filter/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:40.102713 : Security check : IP adresse '127.0.0.1' connected +INFO:root:2024-02-04 19:26:40.107552 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:40] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:40] "POST /myclass/api/Get_List_object_owner_collection_Stored_Files/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:53.698168 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:53] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:26:57.298568 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:26:57] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:27:07.000785 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:27:07] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:27:51.952358 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:27:51] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:28:29.032739 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:28:29] "POST /myclass/api/Update_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:28:32.040809 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:28:32] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:28:44.608435 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:28:44] "POST /myclass/api/GetListEvaluation_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:29:01.047486 : Security check : IP adresse '127.0.0.1' connected +DEBUG:xhtml2pdf:pisaDocument options: + src = '

 

\n

\n

 

\n

\n
\n
\n
\n

A l\'attention  Mme   prenom1 paert1_nom_client  

Situé :adrss 1    CP 1   Ville 1    France

\n
\n
\n
\n
\n
 
\n
Par la presente, L\'Organisme de formation  MySy Dev Compte   ci-après nommé l\'Organisme de formation
Situé : place du test  
Déclation d\'activité :  mysy_NDA 1234 ,
\n

\n
à le plaisir de vous convier à la formation ci-dessous Atteste que :
\n
 
\n
Mme   prenom1 paert1_nom_client  
\n
a suivi la formation


Formation :   Introduction à la gestion des bases de données - SQL
Durée :  5.0 jour (s)
Lieu de formation :   Roissy
Dates de formation :  18/02/2024 23/02/2024
Nom formateur :  balde_em sekou_empl
\n
Contenu de la formation  :  balde_em sekou_empl
\n
 
\n
 
\n
 
\n
 
\n
Au plaisir de vous retrouver prochainement,
\n
Paris , 04/02/2024
\n

 

\n

 MySy Dev Compte 
Téléphone : 01234562 
Email :  mysytraining+dev@gmail.com 
Site :  www.mysy-test.com 

\n

 

\n
' + dest = <_io.BufferedRandom name='./temp_direct/Convocation_dbdd3_52459.pdf'> + path = None + link_callback = None + xhtml = False + context_meta = None +DEBUG:xhtml2pdf:FileObject 'data:image/png;base64,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', Basepath: 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\__dummy__' +DEBUG:xhtml2pdf:Parsing img tag, src: +DEBUG:xhtml2pdf:Attrs: {'src': , 'width': None, 'height': None, 'align': None, 'id': None} +DEBUG:xhtml2pdf:None +DEBUG:xhtml2pdf:Col widths: [None] +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:29:02] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:29:03.133600 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:29:03] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:30:06.756226 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:30:06] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:31:26.755414 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:31:26] "POST /myclass/api/Update_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:31:29.759565 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:31:29] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:31:52.880633 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:31:52] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:34:23.102560 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:34:23] "POST /myclass/api/Update_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:34:26.083141 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:34:26] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:34:42.845258 : Security check : IP adresse '127.0.0.1' connected +DEBUG:xhtml2pdf:pisaDocument options: + src = '

\n
\n
\n
\n
\n
 
\n
Par la presente, L\'Organisme de formation  MySy Dev Compte   ci-après nommé l\'Organisme de formation
Situé : place du test  
Déclation d\'activité :  mysy_NDA 1234 ,
\n
à le plaisir de vous convier à la formation ci-dessous Atteste que :
\n
 
\n
M.   prenom2 part2_nom client  
\n
a suivi la formation

Formation :   Introduction à la gestion des bases de données - SQL
Durée :  5.0 jour (s)
Lieu de formation :   Roissy
Dates de formation :  18/02/2024 23/02/2024
Nom formateur :  balde_em sekou_empl
\n
Contenu de la formation  :  balde_em sekou_empl
\n
 
\n
 
\n
Au plaisir de vous retrouver prochainement,
\n
Paris , 04/02/2024
\n

 

\n

Cachet Société

\n

 MySy Dev Compte 
Téléphone : 01234562 
Email :  mysytraining+dev@gmail.com 
Site :  www.mysy-test.com 

\n

 

\n
' + dest = <_io.BufferedRandom name='./temp_direct/Convocation_dbdd3_32495.pdf'> + path = None + link_callback = None + xhtml = False + context_meta = None +DEBUG:xhtml2pdf:FileObject 'data:image/png;base64,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', Basepath: 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\__dummy__' +DEBUG:xhtml2pdf:Parsing img tag, src: +DEBUG:xhtml2pdf:Attrs: {'src': , 'width': None, 'height': None, 'align': None, 'id': None} +DEBUG:xhtml2pdf:None +DEBUG:xhtml2pdf:Col widths: [None] +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:34:45] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:34:45.714336 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:34:45] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:35:59.872996 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:35:59] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:36:33.209918 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:36:33] "POST /myclass/api/Update_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:36:36.121202 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:36:36] "POST /myclass/api/Get_Given_Partner_Document/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:36:53.498303 : Security check : IP adresse '127.0.0.1' connected +DEBUG:xhtml2pdf:pisaDocument options: + src = '

\n
\n
\n
\n
\n
 
\n
Par la presente, L\'Organisme de formation  MySy Dev Compte   ci-après nommé l\'Organisme de formation
Situé : place du test  
Déclation d\'activité :  mysy_NDA 1234 ,
\n
à le plaisir de vous convier à la formation ci-dessous Atteste que :
\n
 
\n
Neutre   prenom3 part nom 3  
\n
a suivi la formation

Formation :   Introduction à la gestion des bases de données - SQL
Durée :  5.0 jour (s)
Lieu de formation :   Roissy
Dates de formation :  18/02/2024 23/02/2024
Nom formateur :  balde_em sekou_empl
\n
Contenu de la formation  :  balde_em sekou_empl
\n
 
\n
 
\n
Au plaisir de vous retrouver prochainement,
\n
Paris , 04/02/2024
\n

 

\n

\n

 MySy Dev Compte 
Téléphone : 01234562 
Email :  mysytraining+dev@gmail.com 
Site :  www.mysy-test.com 

\n

 

\n
' + dest = <_io.BufferedRandom name='./temp_direct/Convocation_dbdd3_65067.pdf'> + path = None + link_callback = None + xhtml = False + context_meta = None +DEBUG:xhtml2pdf:FileObject 'data:image/png;base64,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', Basepath: 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\__dummy__' +DEBUG:xhtml2pdf:Parsing img tag, src: +DEBUG:xhtml2pdf:Attrs: {'src': , 'width': None, 'height': None, 'align': None, 'id': None} +DEBUG:xhtml2pdf:None +DEBUG:xhtml2pdf:Col widths: [None] +DEBUG:xhtml2pdf:FileObject 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPoAAABGCAYAAADl5IkzAAAPzXpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjapZlblhs5rkX/YxR3CCT4ADAcPtfqGfTweyMk+5Zd/qnuTGdKKYUiSODgPMLP+fe/7vN/fBWr9tSm1r33xFf16jJ4YunzNd7fOdX39/t1x/e9/OvrT+3fN4SXCo/l86d9X88/Xs8/T/B5GDxrfzmRre8b89c3vH7Pb7+d6HuhEisSnuzvifx7oiKfN/L3BOO7he6mf93CPJ/H7+c/ZeDniV/yOTRW9VnFb39XpXq7cZ0ickouid+lyGcBJX7KUwZPKr+lUA4OyjzPpfO7Fv+uhIL8qU4/vzjuubHU+seDfunKz2e/davqt0a/d6vK95DyW5H7z8c/vv7k9ueuvKX/65Xt+0x+fX2OT92f9Fv14+febffdM7sYtVPq/t3Ujy2+zziOdtS4tD0srSflp3EKfb+dbwPVCyjstNLke2XPQrturnnnkW8+7+PKiyVWOY8oT0QWTYsXrai4rBL9q/Gdr2jxsovR1/W2vRb5uZb8XtbTet6rGVfemUMlc7LMR/7x9/NPP3BvjELOUUtanz/9FYlis4zoXPzmMDqS77eo7S3wj+/fv6KvhQ62qHKMiFPY+TnFbPn/maC8jS4c2Hj8zGDW/T0BC+LSjcUwDTXTtVxa7jmpiOZMIY0GDZYupcqkA7k12SxSaimd3pjEpfmI5vdQacLLD69DZnSiMV9Kb7wMmlVrAz9aDQyNVlptrfWmzZq30UuvvfXetQcpDi1aH23aVdXUdVhwZrNuamZuw8ULpNm8u7q5+xhcc3DmwacHB4wxZZZZZ3tmnzpt+hwL+Ky62upLly1fY8suG/7Yfeu27XucfIDSqaedfvTY8TMuULvlufW2269eu37Hz6592/q373/QtfztmrydigP1Z9d4VfXHKXLQSYue0TB5aqbjGi0A0BI9S5Zrlehc9Cw59FeasMgWPds5OkYH68nSbv7Ru0c+HY3O/U99e7T+0jf5bzv3ROv+Yef+3rc/dW2HDK23Y58pjKKmwvRxzBDjH1r189E5i1T28OxtMuyMisDl5raPtJ1dKpfXm/s5vi+nWXymbkdjYD1ddUtp3dhamm799KfsC526yB3D166zGh8oqFjL1JfDdp91z9L31KzwZNHRtdw1bCa6YCs3dvqsxoIHW+9j0rSlmWK0vCzG/OgVXm4sGp8ROryrjxQoWd4o1rE2qHS+60Eba1W53mMnSRdKuna32mRpqSDGnFKnW2VAEL7pJLDKQuNnXbpZd5HmzyjwRZE6zjCjAL2AR5v9rHJsrBWY655uXGq+RfteypM28Qm9C0KjT3Fer2ftnDN19Lvod6aMa87JSY43YNnXZAVt3kkhQU6h/j47nV7qLrr16dRj7Auhead9te2A8VXfzE6z22mj7UzzKBRvjpnfNbWxKWT4sm6bvT/1ais+8mDhBTwwAnX3xKp2jb7BkynqOU5pZ8vYvcbOdGaZoKYUv4fZ6c/uXHTcDgz6DujPM0anpnACQK/XWaDKipNG8dLfQfk+Pu+TBBrZekpHJpuGKqtC313z9Dwp88rjJICgnFAnl9xK2xZrSYca1FufuUtvu8m5Z92sCaBraRsOWjMXTpx5s5kvFpa3DpCLe53NdcttUtM6TCXTb9o4QWM/dqZIiopRGEkGh5YJA1AWhZRcDzOx6HpZ8MWFjrjwtjqHgobng3ua1A1Q2F6lQAaF5lymhZGWBh04OiHAPKaOIbur+Vj39nZ8NJG+2sP4MQZ3ptsY5PNylSyA6HaFeTg62RVA7Ku0tOE273hn2oFQz+wn6s0EPJu9O92ssqE4UD+TwUGywrw3GGneLawNQ8m49npgFLhrUdc5DIDOvusZ8qwBNa1gFSAI32GplB0NWAoTAxcSCtg+g8eFJoVjl9SnsxG963oNkCfdD74hjQvR86aa12uuK+NyVhnQM2WHE4LVMks/aUtdZ3Lh5O2my2SNOUGlPsE2fb5DsFbIALxerhQg2oaeHENbuk9NEvpIRyAjg1+sboUz/QDdPvzpfSf2mA5mh6VzVVFIkgbqEkY0w2rMzDs895zTZHrTTGsaPEozGrBtimPbfIBeNE2Ua94B9YAS/Dqeb+19yporVIYWM+hqoKaSkRhgxjhDUZuBixGBY+L8NF6oj1PFUUGIGq1m/BenZUKWjtZgZXq1WLHOsR1DNCrDe/d1/NGpMXWF6QQHkACYKVGYDAoGdheMHb+WqSWq0CEBnxOrWZNB1xdpIFe18cwjfVNWk5phfWpzvOOqrHU4j7pMagqjH6p8R4ei99zzjU4HCpLORK7azoMLZg+1aGOYheFaALfQ1cHHQ+sB+gDNrUHKVJl9gyBqCTgZLPhtznYgttX6GQhitT1r7jGQfAQftHHNFxSgnKpDvev101GnCXFA/8CfObgIX8YhKG7E86WQaD/gle5+BeY4SC31nhKk1GA7zpNmWRtKz1G6UyzmVY/DOufcZ2XGBf2DFUAemq2j9HzB6cDKOIQ8GKKL33cQ0MNi3Is1maUBjqmLI3A04fzXDLTeVuDCArNqY5YOYeOagpm18QsIqFXQlc4M14RaNxwQ9DbK9pVPKg8wRGmB78K2EDnQExyLwfWIm5e7d9SDNYYugvGsCHzHYmNwtMNFJQZUKrOG+dnOIJ5KBu3I+IKJzgwfsVaYC0IOGwWNOJMLa8AKsEkPihAQTFICqg/DDHhb3EOwtZ2UUadjY2rMy8lAfJU9ZoFRrQ/ahVXxsIq6UsM3JCQab0PXoBRoowxaCJx9QVIb5E3mhUsgbIIh4yRNEiPsiVeQkJiqV6BaJHwenx9P4rHh3tgExDR6vSQ2lopCjbMxmjZALO6MCyLo1ErnqRkbCNshrsSs2GntMOtiLMmgWBikCB0Q/C86Du90h8QG7UYcMENOwJvvRRSaOAhrLU+olhOtJyynGcqqjfUcjImy4VLDk/W4/2L4CNClWE+WLeVouCTgtfWorycwcqcjFhczxjinvdGVPnAye5GR8NMnzs8myuHsGFUk3qJpU0IvIP9E11aB2CuAaWWfyb/GSsEOP6OFRuPXFBQE9TKbyghgPmAzDdBD4ZDVyV4fsEXDcMwNhDGUFTqCehkg6cCcofyIYhox1AjZ6Hb2yahWxfPFzRjaefuDrYoDGg8A5m5nAvCjqIGnk0LedbzArrxfgNRmtie6U7atpOdAzY1xevBOaHt7WZkdnzBI4YBxgUgvnHZxVhk1QinQqAWUzN9cUrCigVpstcp8KN666FGaE7sMmuCxACPXZ7QnHgl5xENhsoCi7+01bx4Rqs1GCiZE7Zz0QHB4nmGx7puhOYeTFi2badOXnVYfrBeknwTDAOoW5rdegiPbYqpxcaf4wyGw623wLIM5FsXG9NeLy7EDFubAPuKvQWrDwUmsDAI8WAV8BJ6M1ULa9oAIIlVhxhjkhayHkb49QmTwPeCElkQMB7rBekiCZOz3NNpN4YzGpimOP4plzsAlyOOVAVrxZIwv05GKh0Ge744NY0WCNMrSME+TNm1SCDzNZuAjJG3ilB3HhXHsBKTd4/2zoYMBTxaJsICrwnlXd0TT4kiNWFX4KxDXnoADzDcwOZliZhRXGxAK5lYLhx7pB6SslcAJIOC4m84JRPaw1XAtzXmIHMaGM2aG2LMQ8q4HUiSEMzkNGcBYUCjex8AIkyMB/w7dlBLGjm2jqeUZ+Nn7miVBoYkjC6RlRxkAs4a0ErDzCYbAM7CgTcnCOSu+nXiSBvAiZj+k2DAzc4ZPrVEdEschr9Hze8TDeo/gMWJZBo0W7tUwPsiNN8CZcoQJIkSjrAcbRRpiP63NCCkZYdaK6hx0l7QI5VqEWSwSckKc1FD9tSY8UCNdYNhXh4zoNEwCWfYkuOMFnWYKBoEz6hLW4mbyNxnHDi42BiiMNkYMuGJyjj30jDdAGxYAh0s1jD7hbj52f7dWBZUi19wo9npVk1ewYH6YZR1xk8BI2UqeCU4jFzfFms+YMJ2EfAT0RgSLAT2MHOHAEIieyQ30BvCtQPdidLY/uUIDaH4I9twVaEzykfYTNyggk3DjjmmHiWH1m+xlBmzOLgdEhjXG3Rm2BuNCue9CMuIORtzFYVV4PEkQfgeEwBrvHfcfCDWF4WQPFe8oDb1EF6qx8geHTdU3HOUZL48VYDAaaY4hWTGBihtAhSONUfK+3ng24o759xG3AsAfssGISI9zkbiJEbNaqkRQZ9RDjBIOeAOphEbBoxDSWJl0QdLB7vIqdkD60xT/gMiwWHwFyUeZ+5I4J/0EvciSVb8MM759xORNdCK97LYmsQTawVOdh9hJZzZbJXTYwH3CHYANi8UqIH09+CKGqizyCkETa9Qr5AMrwXUFnA5IeD83T4nIaVSGj3AZ6ZHTZjCChdYTw29MFrm9mQCRhJ4upmPhXMLPI5CoSBAUhhbzNTPcGizHVlAuzCUfQnvZDcETJSFuISlauzFPHQO7sP/gL8TNASSH7nBhKXLdjRPudMiDJ+yQ2YhbaSR9iUqlwmVbjHBDiFEEwfo3w5w9oTLGNB5r2aDo+A8IzD0TTIzqbRG97psHDWdcQ2KFSQ07IIIxIfuzAdb9MAT04loa+pFr2DWcIBkZsSu9ronzOVKJ5GAoYLPjP2Pw//SEHJ0MVY2UXSEuFrA5iy8tmw2hlYgq4QY6jdueYZgwcR2O46LlTOaTiOkXW/I6PljrgU3wZFWBPkGbU0MPCU4uGjqlJJbZVoIecDmTGsScVBjwYB9hljEV41QLUbTAZbrJIpk6ciROhryQje7eCFf1xI2wQSc0bvOzdjZNSi9FJJgAcEYzHjZD6i6RxTL1udcmiT6iVNw0kH2SLRz2ZJAUa8ZUhgbH1CdMOfaducbGYyLAvSwYG5F/tR9eBcf0FOTtrQns4ueBjQ78cItQT+xG8UEu2WMqvF5xIzTVWBnHYDwWE4Qt1YZ5gFpqiAcUpTVuXRn2gBFmbcq490ijMY4OCbWTHwwtlgjiqd9TpXs41ZsWdwgYpxpkUmwPg4ac1WPxXylYH1w4EgRLon2KY7uyyN2hjAyuHov06rO899YmgXyiAR55GaJkJ8hPpfhqSYOg14QztfQH+kS5JnovlyM8DDgMw8n5DP4P/Ukgp56XZZFDYhu1JV4aJtdBN+ZXDOefxa47A+wM+Zg9VlZ4IGGwfQ+pZYHhmTF+GnEXj6YFGejoP0MHKrjoE/eOsPcL0+1xy0PjNsZ7H4iAesgnBJOGsDDOSeK+BLDtSBiAhyANacVtez/PIQWHVQ9LKAVahqmI4ZiXCGUkBo7kEMMv2n4d134Nc2NcQQaJtVaCXX6wqdXi1gKQzZEf0Q0uENmXXPTe68YlQTFx56QiJxEwglFxfcH+/r1d9/z9/t1/9/g/nAgvhL9//gN61+zK+uuP9gAAAYVpQ0NQSUNDIHByb2ZpbGUAAHicfZE9SMNAGIbfppWqVBysIOKQoTpZEBVxlCoWwUJpK7TqYHLpHzRpSFJcHAXXgoM/i1UHF2ddHVwFQfAHxNXFSdFFSvwuKbSI8Y7jHt773pe77wChUWGqGZgAVM0yUvGYmM2tisFXBDCIHpo+iZl6Ir2Ygef4uoeP73dRnuVd9+foU/ImA3wi8RzTDYt4g3hm09I57xOHWUlSiM+Jxw26IPEj12WX3zgXHRZ4ZtjIpOaJw8RisYPlDmYlQyWeJo4oqkb5QtZlhfMWZ7VSY6178heG8tpKmuu0RhDHEhJIQoSMGsqowEKUdo0UEyk6j3n4hx1/klwyucpg5FhAFSokxw/+B797axamJt2kUAzoerHtj1EguAs067b9fWzbzRPA/wxcaW1/tQHMfpJeb2uRI6B/G7i4bmvyHnC5Aww96ZIhOZKfllAoAO9n9E05YOAW6F1z+9Y6x+kDkKFeLd8AB4fAWJGy1z3e3d3Zt39rWv37AQAVcnm2x6ULAAANdmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgeG1sbnM6R0lNUD0iaHR0cDovL3d3dy5naW1wLm9yZy94bXAvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgIHhtcE1NOkRvY3VtZW50SUQ9ImdpbXA6ZG9jaWQ6Z2ltcDplNWY2M2Y4ZS0wMTNkLTQ0NzQtYjZjMS04YzZjNmVhMDkyZGQiCiAgIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NWE0NDIyZDEtZGNlMS00ZGYwLWIwYzMtNmMyOWU4NDBiODg1IgogICB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MzcwYTBiMDctNzc3Yy00MDYwLThjOTEtM2Q3ZjQzOGE5YWE0IgogICBkYzpGb3JtYXQ9ImltYWdlL3BuZyIKICAgR0lNUDpBUEk9IjIuMCIKICAgR0lNUDpQbGF0Zm9ybT0iV2luZG93cyIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODIwNjg2MTEwNzk0MjMiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMiIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiCiAgIHhtcDpNZXRhZGF0YURhdGU9IjIwMjM6MDQ6MjFUMTE6MTY6NDkrMDI6MDAiCiAgIHhtcDpNb2RpZnlEYXRlPSIyMDIzOjA0OjIxVDExOjE2OjQ5KzAyOjAwIj4KICAgPHhtcE1NOkhpc3Rvcnk+CiAgICA8cmRmOlNlcT4KICAgICA8cmRmOmxpCiAgICAgIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiCiAgICAgIHN0RXZ0OmNoYW5nZWQ9Ii8iCiAgICAgIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6NGQ4MWI0OWYtOGM2OS00ZGQ4LWJmNmItMzVkZTg2OTlkMGI5IgogICAgICBzdEV2dDpzb2Z0d2FyZUFnZW50PSJHaW1wIDIuMTAgKFdpbmRvd3MpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA0LTIxVDExOjE2OjUxIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PlkEm5sAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAAD2EAAA9hAag/p2kAAAAHdElNRQfnBBUJEDOvEcg/AAAgAElEQVR42u2deZRcV33nP2+p92pfe1Xv3dola8GyjHckbAy2sY2TgMPJBBjimHCSDDMZyDKThDknmePJTiAMDFsIm8A2YGxjbOMFb/IiW7L2VqvVe3dVdVfX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', Basepath: 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\__dummy__' +DEBUG:xhtml2pdf:Parsing img tag, src: +DEBUG:xhtml2pdf:Attrs: {'src': , 'width': None, 'height': None, 'align': None, 'id': None} +DEBUG:PIL.PngImagePlugin:STREAM b'IHDR' 16 13 +DEBUG:PIL.PngImagePlugin:STREAM b'zTXt' 41 4045 +DEBUG:PIL.PngImagePlugin:STREAM b'iCCP' 4098 389 +DEBUG:PIL.PngImagePlugin:iCCP profile name b'ICC profile' +DEBUG:PIL.PngImagePlugin:Compression method 0 +DEBUG:PIL.PngImagePlugin:STREAM b'iTXt' 4499 3446 +DEBUG:PIL.PngImagePlugin:STREAM b'bKGD' 7957 6 +DEBUG:PIL.PngImagePlugin:b'bKGD' 7957 6 (unknown) +DEBUG:PIL.PngImagePlugin:STREAM b'pHYs' 7975 9 +DEBUG:PIL.PngImagePlugin:STREAM b'tIME' 7996 7 +DEBUG:PIL.PngImagePlugin:b'tIME' 7996 7 (unknown) +DEBUG:PIL.PngImagePlugin:STREAM b'IDAT' 8015 8192 +WARNING:xhtml2pdf:getSize: Not a float '90%' +DEBUG:PIL.PngImagePlugin:STREAM b'IHDR' 16 13 +DEBUG:PIL.PngImagePlugin:STREAM b'zTXt' 41 4045 +DEBUG:PIL.PngImagePlugin:STREAM b'iCCP' 4098 389 +DEBUG:PIL.PngImagePlugin:iCCP profile name b'ICC profile' +DEBUG:PIL.PngImagePlugin:Compression method 0 +DEBUG:PIL.PngImagePlugin:STREAM b'iTXt' 4499 3446 +DEBUG:PIL.PngImagePlugin:STREAM b'bKGD' 7957 6 +DEBUG:PIL.PngImagePlugin:b'bKGD' 7957 6 (unknown) +DEBUG:PIL.PngImagePlugin:STREAM b'pHYs' 7975 9 +DEBUG:PIL.PngImagePlugin:STREAM b'tIME' 7996 7 +DEBUG:PIL.PngImagePlugin:b'tIME' 7996 7 (unknown) +DEBUG:PIL.PngImagePlugin:STREAM b'IDAT' 8015 8192 +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:36:54] "POST /myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:36:54.989661 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:36:55] "POST /myclass/api/Get_Attestion_By_Session/ HTTP/1.1" 200 - +INFO:root:2024-02-04 19:38:26.614595 : Security check : IP adresse '127.0.0.1' connected +INFO:werkzeug:127.0.0.1 - - [04/Feb/2024 19:38:26] "POST /myclass/api/Get_Given_Personnalisable_Fields_By_template_ref_interne/ HTTP/1.1" 200 - diff --git a/Session_Formation.py b/Session_Formation.py index e4b5501..b94b2f0 100644 --- a/Session_Formation.py +++ b/Session_Formation.py @@ -6259,3 +6259,564 @@ def Sent_Convocation_Stagiaire_By_Email(tab_files, Folder, diction): 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'envoyer la convention par email " + + + +""" +Cette fonction prepare et envoi les attestation de formation a chaque +participant à la session de formation +""" +def Prepare_and_Send_Attestation_From_Session_By_Email(tab_files, Folder, diction): + try: + + field_list_obligatoire = ['token', 'session_id', 'email_test', 'email_production', 'tab_inscriptions_ids'] + + 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, " La valeur '" + val + "' n'est pas presente dans liste" + + my_token = "" + if ("token" in diction.keys()): + if diction['token']: + my_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 la session est valide + is_session_valide = MYSY_GV.dbname['session_formation'].count_documents( + {'_id': ObjectId(str(diction['session_id'])), + 'valide': '1', + 'partner_owner_recid': str(my_partner['recid'])}) + + if (is_session_valide != 1): + mycommon.myprint( + str(inspect.stack()[0][ + 3]) + " L'identifiant de la session est invalide ") + return False, " L'identifiant de la session est invalide " + + tab_inscriptions_ids = "" + if ("tab_inscriptions_ids" in diction.keys()): + if diction['tab_inscriptions_ids']: + tab_inscriptions_ids = diction['tab_inscriptions_ids'] + + tab_inscriptions_ids_splited = str(tab_inscriptions_ids).split(",") + + tab_inscriptions_ids_splited_obj = [] + for tmp in tab_inscriptions_ids_splited : + tab_inscriptions_ids_splited_obj.append(ObjectId(str(tmp))) + + qry = {"session_id":str(diction['session_id']), + 'partner_owner_recid':str(my_partner['recid']), + 'valide':"1", + "locked":'0', + '_id': { '$in': tab_inscriptions_ids_splited_obj} } + print("### qry zzzz = ", qry) + + + + for attestation_formation_data in MYSY_GV.dbname['attestation_formation'].find({"session_id":str(diction['session_id']), + 'partner_owner_recid':str(my_partner['recid']), + 'valide':"1", + "locked":'0', + '_id': { '$in': tab_inscriptions_ids_splited_obj} }): + + + + + # Recupération des données du modèle de document + is_convention_by_client = "0" + courrier_template_data = MYSY_GV.dbname['courrier_template'].find_one( + {'_id': ObjectId(str(attestation_formation_data['courrier_template_id'])), + 'valide': '1', + 'locked': '0', + 'partner_owner_recid': str(my_partner['recid'])} + ) + + if( courrier_template_data and "edit_by_client" in courrier_template_data.keys() and courrier_template_data['edit_by_client'] == "1"): + is_convention_by_client = "1" + + + #field_list_obligatoire = [ 'token', 'inscription_id', 'courrier_template_id', 'email_test', 'email_production' ] + new_diction_no_client = {} + new_diction_no_client['token'] = str(diction['token']) + new_diction_no_client['inscription_id'] = str(attestation_formation_data['inscription_id']) + new_diction_no_client['courrier_template_id'] = attestation_formation_data['courrier_template_id'] + + new_diction_no_client['session_id'] = diction['session_id'] + new_diction_no_client['email_test'] = diction['email_test'] + new_diction_no_client['email_production'] = diction['email_production'] + + print(" ##### new_diction_no_client = ", new_diction_no_client) + tab_saved_file_full_path = [] + local_status, local_retval = Sent_Attestation_Stagiaire_By_Email(tab_saved_file_full_path, Folder, new_diction_no_client) + + if (local_status is False): + mycommon.myprint(" WARNING impossible d'envoyer l'attestation de formation a l'apprenant : " + str(attestation_formation_data['inscription_id']) ) + + + # Traitement de l'eventuel fichier joint + tab_files_to_attache_to_mail = [] + + """ + 25/01/2024 : pour loger une action dans la collection ==> courrier_template_tracking_history + """ + local_status, local_retval = module_editique.Editic_Log_History_Action_From_courrier_template_type_document_ref_interne( + my_partner, "ATTESTATION_FORMATION", str(diction['session_id']), 'inscription', + str(attestation_formation_data['inscription_id']), + str(attestation_formation_data['courrier_template_id'])) + + # Mettre à jour avec la date d'envoi de l'attestation + updata_data = {} + updata_data['date_update'] = datetime.now().strftime("%d/%m/%Y %H:%M:%S") + updata_data['update_by'] = str(my_partner['recid']) + updata_data['statut'] = "1" + updata_data['date_envoie'] = datetime.now().strftime("%d/%m/%Y %H:%M:%S") + + + MYSY_GV.dbname['attestation_formation'].find_one_and_update({'_id':ObjectId(str(attestation_formation_data['_id'])), + 'partner_owner_recid':str(my_partner['recid'])}, + {'$set':updata_data}) + + + return True, " Les attestation ont été correctement envoyées par emails" + + 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'envoyer les conventions par email " + + + +""" +Envoi d'une attestation pour un participant donné par email +Si le participants est rattaché à un client , alors on va mettre en copie de +l'email les contacts de communication du client de rattachement +""" +def Sent_Attestation_Stagiaire_By_Email(tab_files, Folder, diction): + try: + + field_list_obligatoire = ['token', 'inscription_id', 'courrier_template_id', 'email_test', 'email_production'] + + 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, " La valeur '" + val + "' n'est pas presente dans liste" + + my_token = "" + if ("token" in diction.keys()): + if diction['token']: + my_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 stagiaire est bien inscrit. Le statut de l'inscription doit etre "1" + is_inscription_valide = MYSY_GV.dbname['inscription'].count_documents( + {'_id': ObjectId(str(diction['inscription_id'])), + 'status': '1', + 'partner_owner_recid': str(my_partner['recid'])}) + + if (is_inscription_valide != 1): + mycommon.myprint( + str(inspect.stack()[0][ + 3]) + " L'identifiant de l'inscription est invalide ") + return False, " L'identifiant de l'inscription est invalide " + + # Traitement de l'eventuel fichier joint + tab_files_to_attache_to_mail = [] + + for saved_file in tab_files: + """ + status, saved_file = mycommon.Upload_Save_PDF_IMG_File(file, Folder) + if (status is False): + mycommon.myprint("Impossible de récupérer correctement le fichier à importer") + return False, "Impossible de récupérer correctement le fichier à importer" + """ + + file_to_attache_to_mail = MIMEBase('application', "octet-stream") + file_to_attache_to_mail.set_payload(open(saved_file, "rb").read()) + + encoders.encode_base64(file_to_attache_to_mail) + file_to_attache_to_mail.add_header('Content-Disposition', + 'attachment; filename="{0}"'.format(os.path.basename(saved_file))) + + new_node = {"attached_file": file_to_attache_to_mail} + tab_files_to_attache_to_mail.append(new_node) + + # Verification de la validité des adresses email_recu + """ + /!\ : Si l'email de test est repli, alors on considere que c'est un test, on ne prend pas en compte l'email de email_production. + Ceci pour forcer les utilisateur à ne remplir que l'email de prod s'il veulent l'envoyer en prod. + + Si l'adresse email_prodution = "defaul", cela veut dire qu'on envoie la convention à : + - l'adresse email du stagiaire et ses tuteurs (si les tuteurs on cochés la case 'inclu com' + + """ + + send_in_production = 0 + + tab_emails_destinataire = [] + + if ("email_test" in diction.keys() and diction['email_test']): + send_in_production = 0 + tab_email_test = str(diction['email_test']).replace(";", ",").split(",") + for email in tab_email_test: + email = email.strip() + if (mycommon.isEmailValide(email) is False): + mycommon.myprint( + str(inspect.stack()[0][ + 3]) + " L'adresse email " + str(email) + " est invalide ") + return False, " L'adresse email " + str(email) + " est invalide " + tab_emails_destinataire = tab_email_test + + elif ("email_production" in diction.keys() and diction['email_production']): + send_in_production = 1 + if (str(diction['email_production']) != "default"): + tab_email_prod = str(diction['email_production']).replace(";", ",").split(",") + for email in tab_email_prod: + email = email.strip() + if (mycommon.isEmailValide(str(email)) is False): + mycommon.myprint( + str(inspect.stack()[0][ + 3]) + " L'adresse email '" + str(email) + "' est invalide ") + return False, " L'adresse email " + str(email) + " est invalide " + tab_emails_destinataire = tab_email_prod + else: + send_in_production = 1 + # On va chercher les adresse email de communication du + local_dict = {'token': str(diction['token']), '_id': str(diction['inscription_id'])} + + local_status, tab_apprenant_contact = Inscription_mgt.Get_Statgiaire_Communication_Contact(local_dict) + if (local_status is False): + return local_status, tab_apprenant_contact + + tmp_tab = [] + # print(" ### tab_apprenant_contact = ", tab_apprenant_contact) + + for tmp in tab_apprenant_contact: + if ("email" in tmp.keys()): + tab_emails_destinataire.append((tmp['email'])) + + if (len(tab_emails_destinataire) <= 0): + mycommon.myprint( + str(inspect.stack()[0][ + 3]) + " Aucune adresse email n'a été fourni. ") + return False, " Aucune adresse email n'a été fourni. " + + # print(" ### tab_emails_destinataire = ", tab_emails_destinataire) + + # Verifier que le 'courrier_template_id' est valide + # Ici le template doit etre un email + is_courrier_template_id_valide = MYSY_GV.dbname['courrier_template'].count_documents( + {'_id': ObjectId(str(diction['courrier_template_id'])), + 'valide': '1', + 'type_doc': 'email', + 'locked': '0', + 'partner_owner_recid': str(my_partner['recid'])} + ) + + if (is_courrier_template_id_valide != 1): + mycommon.myprint(str(inspect.stack()[0][3]) + " L'identifiant du modèle de courrier est invalide ") + return False, " L'identifiant du modèle de courrier est invalide " + + # Recupération des données du modèle de document + courrier_template_data = MYSY_GV.dbname['courrier_template'].find_one( + {'_id': ObjectId(str(diction['courrier_template_id'])), + 'valide': '1', + 'locked': '0', + 'partner_owner_recid': str(my_partner['recid'])} + ) + + # Recuperation des eventuelles pièces jointes du modèle que courrier + local_dic = {} + local_dic['token'] = str(diction['token']) + local_dic['object_owner_collection'] = "courrier_template" + local_dic['object_owner_id'] = str(courrier_template_data['_id']) + + local_status, local_retval = attached_file_mgt.Get_List_object_owner_collection_Stored_Files(local_dic) + if (local_status is False): + return local_status, local_retval + + # print(" ### file stocké = ", local_retval) + + # Recuperation des fichiers attachés au modele de courrier, s'il y en a + for file in local_retval: + local_JSON = ast.literal_eval(file) + + saved_file = local_JSON['full_path'] + + file_to_attache_to_mail = MIMEBase('application', "octet-stream") + file_to_attache_to_mail.set_payload(open(saved_file, "rb").read()) + + encoders.encode_base64(file_to_attache_to_mail) + file_to_attache_to_mail.add_header('Content-Disposition', + 'attachment; filename="{0}"'.format(os.path.basename(saved_file))) + + new_node = {"attached_file": file_to_attache_to_mail} + tab_files_to_attache_to_mail.append(new_node) + + # Recuperation des données du stagaire + inscription_data = MYSY_GV.dbname['inscription'].find_one({'_id': ObjectId(str(diction['inscription_id'])), + 'status': '1', + 'partner_owner_recid': str(my_partner['recid'])}) + + tab_apprenant_client_rattachement_contact = "" + # Verifier si le modele de courrier n'est par 'edit_by_client', au quel cas on verifie que l'appressant est bien lié à un client + if ("edit_by_client" in courrier_template_data.keys() and str(courrier_template_data['edit_by_client']) == "0"): + stagiaire_client_id = "" + + if ("client_rattachement_id" in inscription_data.keys() and inscription_data['client_rattachement_id']): + stagiaire_client_id = str(inscription_data['client_rattachement_id']) + local_diction = {"token":str(diction['token']), "_id":stagiaire_client_id } + + print(" ##### local_diction pr Get_Partner_Client_Communication_Contact= ", local_diction) + local_status, partner_client_contact_communication = partner_client.Get_Partner_Client_Communication_Contact(local_diction) + + if (local_status is True): + print(" ### partner_client_contact_communication = ", partner_client_contact_communication) + tab_local_email_production = [] + for tmp in partner_client_contact_communication: + tmp_JSON = ast.literal_eval(tmp) + if ("email" in tmp_JSON.keys()): + tab_local_email_production.append(str(tmp_JSON["email"])) + + tab_apprenant_client_rattachement_contact = ",".join(tab_local_email_production) + + + tab_participant = [] + tab_participant.append(inscription_data['_id']) + + """ + update du 30/01/2024 + si le participant à un apprenant_id, alors on recupere la valeur de l'apprenant id. On doit travailler sur cette dernier. + En general, avant d'envoyer une convocation ou convention, l'inscription est validée et donc le dossier apprenant existe. + Du coup si tout se passe bien, dans cette fonction, on travaillera tjrs avec l'apprenant_id + """ + tab_apprenant = [] + if( "apprenant_id" in inscription_data.keys() and inscription_data['apprenant_id']) : + tab_apprenant.append(ObjectId(str(inscription_data['apprenant_id']))) + + + + # Recuperations des info de la session de formation + session_data = MYSY_GV.dbname['session_formation'].find_one( + {'_id': ObjectId(str(inscription_data['session_id'])), 'valide': '1', + 'partner_owner_recid': str(my_partner['recid'])}) + + tab_session = [] + tab_session.append(session_data['_id']) + + # Recuperation du titre de la formation + class_data = MYSY_GV.dbname['myclass'].find_one( + {'internal_url': str(session_data['class_internal_url']), 'valide': '1', + 'partner_owner_recid': str(my_partner['recid']), 'locked': '0'}) + + tab_class = [] + tab_class.append(class_data['_id']) + + # Creation du dictionnaire d'information à utiliser pour la creation du doc + convention_dictionnary_data = {} + new_diction = {} + new_diction['token'] = diction['token'] + new_diction['list_stagiaire_id'] = tab_participant + new_diction['list_session_id'] = tab_session + new_diction['list_class_id'] = tab_class + new_diction['list_client_id'] = [] + new_diction['list_apprenant_id'] = tab_apprenant + + local_status, local_retval = mycommon.Get_Dictionnary_data_For_Template(new_diction) + + if (local_status is False): + return local_status, local_retval + + convention_dictionnary_data = local_retval + + body = { + "params": convention_dictionnary_data, + } + + # Verifier s'il s'agit d'un document à envoyer avec une version de pièce jointe. + if ("joint_pdf" in courrier_template_data.keys() and str(courrier_template_data['joint_pdf']) == "1"): + # Il s'agit bien d'un envoie avec 'contenu_doc' en pièce jointe PDF + """ + 1 - Creation du PDF + """ + contenu_doc_Template = jinja2.Template(str(courrier_template_data['contenu_doc'])) + + sourceHtml = contenu_doc_Template.render(params=body["params"]) + + todays_date = str(date.today().strftime("%d/%m/%Y")) + ts = datetime.now().timestamp() + ts = str(ts).replace(".", "").replace(",", "")[-5:] + + orig_file_name = "Convocation_" + str(my_partner['recid'])[0:5] + "_" + str(ts) + ".pdf" + outputFilename = str(MYSY_GV.TEMPORARY_DIRECTORY) + "/" + str(orig_file_name) + + # open output file for writing (truncated binary) + resultFile = open(outputFilename, "w+b") + + # convert HTML to PDF + pisaStatus = pisa.CreatePDF( + src=sourceHtml, # the HTML to convert + dest=resultFile) # file handle to receive result + + # close output file + resultFile.close() + + # Attachement du fichier joint + file_to_attache_to_mail = MIMEBase('application', "octet-stream") + file_to_attache_to_mail.set_payload(open(outputFilename, "rb").read()) + + encoders.encode_base64(file_to_attache_to_mail) + file_to_attache_to_mail.add_header('Content-Disposition', + 'attachment; filename="{0}"'.format(os.path.basename(outputFilename))) + + new_node = {"attached_file": file_to_attache_to_mail} + tab_files_to_attache_to_mail.append(new_node) + + ## Creation du mail au format email + + corps_mail_Template = jinja2.Template(str(courrier_template_data['corps_mail'])) + + sourceHtml = corps_mail_Template.render(params=body["params"]) + + html_mime = MIMEText(sourceHtml, 'html') + + # Creation de l'email à enoyer + msg = MIMEMultipart("alternative") + + else: + # Il s'agit d'une simple email + + ## Creation du mail au format email + + contenu_doc_Template = jinja2.Template(str(courrier_template_data['contenu_doc'])) + + sourceHtml = contenu_doc_Template.render(params=body["params"]) + + html_mime = MIMEText(sourceHtml, 'html') + + # Creation de l'email à enoyer + msg = MIMEMultipart("alternative") + + """ + Recuperation des parametre SMTP du partner si le client a decidé d'utiliser son propre smpt + """ + partner_own_smtp_value = "0" + partner_own_smtp = MYSY_GV.dbname['base_partner_setup'].find_one( + {'partner_owner_recid': str(my_partner['recid']), + 'config_name': 'partner_smtp', + 'valide': '1', + 'locked': '0'}) + + if (partner_own_smtp and "config_value" in partner_own_smtp.keys()): + partner_own_smtp_value = partner_own_smtp['config_value'] + + if (str(partner_own_smtp_value) == "1"): + partner_SMTP_COUNT_password = str(MYSY_GV.dbname['base_partner_setup'].find_one( + {'partner_owner_recid': str(my_partner['recid']), + 'config_name': 'smtp_user_pwd', + 'valide': '1', + 'locked': '0'}, {'config_value': 1})['config_value']) + + partner_SMTP_COUNT_smtpsrv = str(MYSY_GV.dbname['base_partner_setup'].find_one( + {'partner_owner_recid': str(my_partner['recid']), + 'config_name': 'smtp_server', + 'valide': '1', + 'locked': '0'}, {'config_value': 1})['config_value']) + + partner_SMTP_COUNT_user = str(MYSY_GV.dbname['base_partner_setup'].find_one( + {'partner_owner_recid': str(my_partner['recid']), + 'config_name': 'smtp_user', + 'valide': '1', + 'locked': '0'}, {'config_value': 1})['config_value']) + + partner_SMTP_COUNT_From_User = str(MYSY_GV.dbname['base_partner_setup'].find_one( + {'partner_owner_recid': str(my_partner['recid']), + 'config_name': 'smtp_count_from_name', + 'valide': '1', + 'locked': '0'}, {'config_value': 1})['config_value']) + + partner_SMTP_COUNT_port = str(MYSY_GV.dbname['base_partner_setup'].find_one( + {'partner_owner_recid': str(my_partner['recid']), + 'config_name': 'smtp_count_port', + 'valide': '1', + 'locked': '0'}, {'config_value': 1})['config_value']) + + if (str(partner_own_smtp_value) == "1"): + smtpserver = smtplib.SMTP(partner_SMTP_COUNT_smtpsrv, partner_SMTP_COUNT_port) + else: + smtpserver = smtplib.SMTP(MYSY_GV.O365_SMTP_COUNT_smtpsrv, MYSY_GV.O365_SMTP_COUNT_port) + + if (str(partner_own_smtp_value) == "1"): + msg.attach(html_mime) + msg['From'] = partner_SMTP_COUNT_From_User + msg['Cc'] = tab_apprenant_client_rattachement_contact + msg['Bcc'] = 'contact@mysy-training.com' + msg['Subject'] = courrier_template_data['sujet'] + # msg['to'] = "billardman01@hotmail.com" + toaddrs = ", ".join(tab_emails_destinataire) + msg['to'] = str(toaddrs) + + # Attacher l'eventuelle pièces jointes + for myfile in tab_files_to_attache_to_mail: + msg.attach(myfile['attached_file']) + + smtpserver.ehlo() + smtpserver.starttls() + smtpserver.login(partner_SMTP_COUNT_user, partner_SMTP_COUNT_password) + + else: + msg.attach(html_mime) + msg['From'] = MYSY_GV.O365_SMTP_COUNT_From_User + msg['Cc'] = tab_apprenant_client_rattachement_contact + msg['Bcc'] = 'contact@mysy-training.com' + msg['Subject'] = courrier_template_data['sujet'] + # msg['to'] = "billardman01@hotmail.com" + toaddrs = ", ".join(tab_emails_destinataire) + msg['to'] = str(toaddrs) + + for myfile in tab_files_to_attache_to_mail: + msg.attach(myfile['attached_file']) + + smtpserver.ehlo() + smtpserver.starttls() + smtpserver.login(MYSY_GV.O365_SMTP_COUNT_user, MYSY_GV.O365_SMTP_COUNT_password) + + val = smtpserver.send_message(msg) + smtpserver.close() + print(" Email envoyé " + str(val)) + + """ + # Ajout de l'evenement dans l'historique + """ + + # L'action n'est loggué pour les envois reels (en prod) + if (send_in_production == 1): + now = str(datetime.now().strftime("%d/%m/%Y %H:%M:%S")) + history_event_dict = {} + history_event_dict['token'] = diction['token'] + history_event_dict['related_collection'] = "inscription" + history_event_dict['related_collection_recid'] = str(diction['inscription_id']) + history_event_dict['action_date'] = str(now) + history_event_dict['action_description'] = "Attestation de formation envoyée par email à la liste : " + str( + tab_emails_destinataire) + local_status, local_retval = mycommon.Collection_Historique.Add_Historique_Event(history_event_dict) + if (local_status is False): + mycommon.myprint( + " WARNING : Impossible de logguer l'historique pour l'évènement : " + str(history_event_dict)) + + return True, "L'email a été correctement envoyé " + + 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'envoyer la convention par email " diff --git a/attestation_formation.py b/attestation_formation.py new file mode 100644 index 0000000..b10a3bb --- /dev/null +++ b/attestation_formation.py @@ -0,0 +1,661 @@ +""" +Ce document permet de gerer les attestations de formation. + +Dans le processus d'utilisation, +- On initialiser les attestation d'une session +- On peut visualiser les attestion +- on peut envoyer et renvoyer / télécharger des attestations + +Pour permettre d'avoir des attestation differentes sur une session, +on prendre entrée le tab_ids des inscriptions concernée + + +- Envoi +- recuperation des attestation d'une session +- etc +""" +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 + + +""" +Initialisation de la liste des attestation avec une version du courrier +""" +def Init_Attestation_Formation_With_Template(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'tab_inscriptions_ids', 'courrier_template_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', 'tab_inscriptions_ids', 'courrier_template_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 + + tab_inscriptions_ids = "" + if ("tab_inscriptions_ids" in diction.keys()): + if diction['tab_inscriptions_ids']: + tab_inscriptions_ids = diction['tab_inscriptions_ids'] + + tab_inscriptions_ids_splited = str(tab_inscriptions_ids).split(",") + + # Controle de validité de toutes info avant de commencer à initialiser les attesations + for my_inscription in tab_inscriptions_ids_splited: + + # Verifier que l'inscription est valide + my_inscription_is_valide = MYSY_GV.dbname['inscription'].count_documents({'_id':ObjectId(str(my_inscription)), 'status':'1', + 'partner_owner_recid':str(my_partner['recid'])}) + + + if( my_inscription_is_valide != 1): + mycommon.myprint( + str(inspect.stack()[0][3]) + " L'inscription_id '" + my_inscription + "' n'est pas valide ") + return False, " L'inscription_id '" + my_inscription + "' n'est pas valide " + + # Verifier la valididé du model de courrier + is_courrier_valide = MYSY_GV.dbname['courrier_template'].count_documents({'_id':ObjectId(str(diction['courrier_template_id'])), + 'valide':'1', + 'locked':'0', + 'partner_owner_recid':str(my_partner['recid'])}) + + if (is_courrier_valide != 1): + mycommon.myprint( + str(inspect.stack()[0][3]) + " Le modèle de courrier '" + str(diction['courrier_template_id']) + "' n'est pas valide ") + return False, " Le modèle de courrier '" + str(diction['courrier_template_id']) + "' n'est pas valide " + + + # A présent les inscriptions sont ok, le modele de courrier ok, on peut proceder à l'initialisation des attestations + + warning_message = " WARNING : " + is_warning_message = 0 + is_courrier_data = MYSY_GV.dbname['courrier_template'].find_one( + {'_id': ObjectId(str(diction['courrier_template_id'])), + 'valide': '1', + 'locked': '0', + 'partner_owner_recid': str(my_partner['recid'])}) + + cpt = 0 + for my_inscription in tab_inscriptions_ids_splited: + + # Verifier que l'inscription est valide + my_inscription_data = MYSY_GV.dbname['inscription'].find_one({'_id':ObjectId(str(my_inscription)), 'status':'1', + 'partner_owner_recid':str(my_partner['recid'])}) + + new_attestation_data = {} + new_attestation_data['date_update'] = str(datetime.now()) + new_attestation_data['update_by'] = str(my_partner['_id']) + new_attestation_data['partner_owner_recid'] = str(my_partner['recid']) + new_attestation_data['valide'] = "1" + new_attestation_data['locked'] = "0" + new_attestation_data['statut'] = "0" + new_attestation_data['date_envoie'] = "" + + new_attestation_data['inscription_id'] = str(my_inscription_data['_id']) + new_attestation_data['session_id'] = str(my_inscription_data['session_id']) + new_attestation_data['courrier_template_id'] = str(is_courrier_data['_id']) + + update_key = {} + update_key['inscription_id'] = str(my_inscription_data['_id']) + update_key['partner_owner_recid'] = str(my_partner['recid']) + + ret_val2 = MYSY_GV.dbname['attestation_formation'].find_one_and_update( + update_key, + {"$set": new_attestation_data}, + return_document=ReturnDocument.AFTER, + upsert=True, + ) + + if (ret_val2 is None): + mycommon.myprint(str(inspect.stack()[0][3]) + " - WARNING : Impossible d'initialiser l'attestation de formation pour l'inscription : "+str(my_inscription_data['_id'])) + warning_message = warning_message +" Impossible d'initialiser l'attestation de formation pour l'inscription : "+str(my_inscription_data['_id']) +" - " + is_warning_message = 1 + else: + cpt = cpt +1 + + + + if( is_warning_message == 1 ): + return True, str(cpt) + " Attestation(s) initialisée(s) : "+str(warning_message) + + return True, str(cpt)+" Attestation(s) initialisée(s) " + + 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'initialiser les attestations" + + +""" +Initialisation de la liste des attestation pour toutes les inscription d'une session. +ici on ne prend pas une inscription specifique +""" +def Init_Attestation_Formation_With_Template_For_All_Inscription(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'session_id', 'courrier_template_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', 'session_id', 'courrier_template_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 la valididé du model de courrier + is_courrier_valide = MYSY_GV.dbname['courrier_template'].count_documents({'_id':ObjectId(str(diction['courrier_template_id'])), + 'valide':'1', + 'locked':'0', + 'partner_owner_recid':str(my_partner['recid'])}) + + if (is_courrier_valide != 1): + mycommon.myprint( + str(inspect.stack()[0][3]) + " Le modèle de courrier '" + str(diction['courrier_template_id']) + "' n'est pas valide ") + return False, " Le modèle de courrier '" + str(diction['courrier_template_id']) + "' n'est pas valide " + + + # A présent les inscriptions sont ok, le modele de courrier ok, on peut proceder à l'initialisation des attestations + + warning_message = " WARNING : " + is_warning_message = 0 + is_courrier_data = MYSY_GV.dbname['courrier_template'].find_one( + {'_id': ObjectId(str(diction['courrier_template_id'])), + 'valide': '1', + 'locked': '0', + 'partner_owner_recid': str(my_partner['recid'])}) + + cpt = 0 + for my_inscription in MYSY_GV.dbname['inscription'].find({'session_id': str(diction['session_id']), + 'status': '1', + 'partner_owner_recid': str(my_partner['recid'])}): + + + new_attestation_data = {} + new_attestation_data['date_update'] = str(datetime.now()) + new_attestation_data['update_by'] = str(my_partner['_id']) + new_attestation_data['partner_owner_recid'] = str(my_partner['recid']) + new_attestation_data['valide'] = "1" + new_attestation_data['locked'] = "0" + new_attestation_data['statut'] = "0" + + new_attestation_data['inscription_id'] = str(my_inscription['_id']) + new_attestation_data['session_id'] = str(my_inscription['session_id']) + new_attestation_data['courrier_template_id'] = str(is_courrier_data['_id']) + + update_key = {} + update_key['inscription_id'] = str(my_inscription['_id']) + update_key['partner_owner_recid'] = str(my_partner['recid']) + + ret_val2 = MYSY_GV.dbname['attestation_formation'].find_one_and_update( + update_key, + {"$set": new_attestation_data}, + return_document=ReturnDocument.AFTER, + upsert=True, + ) + + if (ret_val2 is None): + mycommon.myprint(str(inspect.stack()[0][3]) + " - WARNING : Impossible d'initialiser l'attestation de formation pour l'inscription : "+str(my_inscription['_id'])) + warning_message = warning_message +" Impossible d'initialiser l'attestation de formation pour l'inscription : "+str(my_inscription['_id']) +" - " + is_warning_message = 1 + else: + cpt = cpt +1 + + + if( is_warning_message == 1 ): + return True, str(cpt) + " Attestation(s) initialisée(s) : "+str(warning_message) + + return True, str(cpt)+" Attestation(s) initialisée(s) " + + 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'initialiser les attestations" + + + +""" +Récuperer les attestatioon d'une session de formation +""" +def Get_Attestion_By_Session(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'session_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'existe pas") + return False, " Les informations fournies sont incorrectes", + + """ + Verification des champs obligatoires + """ + field_list_obligatoire = field_list = ['token', 'session_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 = 1 + for New_retVal in MYSY_GV.dbname['attestation_formation'].find({'session_id':str(diction['session_id']), + 'partner_owner_recid':str(my_partner['recid']), 'valide':'1', 'locked':'0'}): + + user = New_retVal + user['id'] = str(val_tmp) + val_tmp = val_tmp + 1 + + # Recuperation des données de l'apprenant concernée + qry_filter = {'session_id': str(New_retVal['session_id']), '_id': ObjectId(str(New_retVal['inscription_id'])),'partner_owner_recid': str(New_retVal['partner_owner_recid'])} + pipe_qry = ([{'$match': qry_filter}, + + {'$lookup': {'from': 'apprenant', 'let': {'apprenant_id': '$apprenant_id', + 'partner_owner_recid': '$partner_owner_recid'}, + 'pipeline': [{'$match': {'$expr': {'$and': [{'$eq': ['$valide', '1']}, + {'$eq': ['$_id', {'$convert': { + 'input': '$$apprenant_id', + 'to': 'objectId', + 'onError': {'error': 'true'}, + 'onNull': { + 'isnull': 'true'}}}]}]}}}], + 'as': 'apprenant_collection'}} + ]) + + #print(" ### Get_Attestion_By_Session ici pipe_qry = ", pipe_qry) + + + nom = "" + prenom = "" + email = "" + for local_Insc_retval in MYSY_GV.dbname['inscription'].aggregate(pipe_qry): + + if ('apprenant_collection' in local_Insc_retval.keys() and len(local_Insc_retval['apprenant_collection']) > 0): + + nom = str(local_Insc_retval['apprenant_collection'][0]['nom']) + prenom = str(local_Insc_retval['apprenant_collection'][0]['prenom']) + email = str(local_Insc_retval['apprenant_collection'][0]['email']) + + else: + + nom = str(local_Insc_retval['nom']) + prenom = str(local_Insc_retval['prenom']) + email = str(local_Insc_retval['email']) + + user['nom'] = nom + user['prenom'] = prenom + user['email'] = email + + if( "date_envoie" not in user.keys() ): + user['date_envoie'] = "" + + if ("courrier_template_id" not in user.keys()): + user['courrier_template_id'] = "" + user['courrier_template_nom'] = "" + else: + model_courrier_data = MYSY_GV.dbname['courrier_template'].find_one({'_id':ObjectId(str(user['courrier_template_id'])), + 'partner_owner_recid':str(my_partner['recid'])}) + + if("nom" in model_courrier_data.keys() ): + user['courrier_template_nom'] = str(model_courrier_data['nom']) + else: + user['courrier_template_nom'] = "" + + + 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 attestations " + + + +""" +Cette fonction recupere les differentes modele d'attestation de formation de stagiaire avec des option comme : +- ref_interne +- nom +- type_doc + +On accepte plusieurs versions du meme doc +""" + +def Get_List_Modele_Attestion_Formation_With_Filter(diction): + try: + + field_list = ['token', 'ref_interne','nom', 'type_doc', 'courrier_template_type_document_ref_interne' ] + + 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, "Le champ '" + val + "' n'est pas autorisé" + + + + 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, " La valeur '" + val + "' n'est pas presente dans liste" + + my_token = "" + if ("token" in diction.keys()): + if diction['token']: + my_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 + + + # Recuperation des option de filter + filt_type_doc = {} + if ("type_doc" in diction.keys()): + filt_type_doc = {'type_doc': str(diction['type_doc'])} + + filt_nom = {} + if ("nom" in diction.keys()): + filt_nom = {'nom': str(diction['nom'])} + + filt_ref_interne = {} + if ("ref_interne" in diction.keys()): + filt_ref_interne = {'ref_interne': str(diction['ref_interne'])} + + filt_courrier_template_type_document_ref_interne = {} + if ("courrier_template_type_document_ref_interne" in diction.keys()): + filt_courrier_template_type_document_ref_interne = {'courrier_template_type_document_ref_interne': str(diction['courrier_template_type_document_ref_interne'])} + + RetObject = [] + val_tmp = 0 + + """ + # Recuperation des documents (collection : courrier_template) de ce partenaire avec 'ref_interne' = 'ATTESTATION_FORMATION' + 1 - On regarde le partenaire à des conventions qui sont personnalisées, si non + 2 - On va sortir les conventions par defaut de MySy. + + /!\ : On ne melange pas les 2. c'est l'un ou l'autre + """ + + qry = {'$and': [{'ref_interne': 'ATTESTATION_FORMATION', + 'valide': '1', + 'locked': '0', + 'partner_owner_recid': str(my_partner['recid'])}, filt_courrier_template_type_document_ref_interne, + filt_type_doc, filt_nom, filt_ref_interne ]} + + print(" #### qry = ", qry) + + for retval in MYSY_GV.dbname['courrier_template'].find({'$and': [{'ref_interne': 'ATTESTATION_FORMATION', + 'valide': '1', + 'locked': '0', + 'partner_owner_recid': str(my_partner['recid'])}, filt_courrier_template_type_document_ref_interne, + filt_type_doc, filt_nom, filt_ref_interne ]}): + user = retval + val_tmp = val_tmp + 1 + RetObject.append(mycommon.JSONEncoder().encode(user)) + + # Si aucune convention personnalisée, on va chercher les conventions mysy + if (val_tmp == 0): + for retval in MYSY_GV.dbname['courrier_template'].find({'$and': [{'ref_interne': 'ATTESTATION_FORMATION', + 'valide': '1', + 'locked': '0', + 'partner_owner_recid': 'default'}, filt_courrier_template_type_document_ref_interne, filt_type_doc, filt_nom, filt_ref_interne ]}): + user = retval + val_tmp = val_tmp + 1 + RetObject.append(mycommon.JSONEncoder().encode(user)) + + #print(" ### Get_List_Convocations_Stagiaire_With_Filter RetObject = ", RetObject) + 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 attestations de formation" + + + +""" +Envoi des attestation de formation +""" +def Send_Attestation_Formation_With_Template(diction): + try: + diction = mycommon.strip_dictionary(diction) + + """ + Verification des input acceptés + """ + field_list = ['token', 'tab_inscriptions_ids', 'courrier_template_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', 'tab_inscriptions_ids', 'courrier_template_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 + + tab_inscriptions_ids = "" + if ("tab_inscriptions_ids" in diction.keys()): + if diction['tab_inscriptions_ids']: + tab_inscriptions_ids = diction['tab_inscriptions_ids'] + + tab_inscriptions_ids_splited = str(tab_inscriptions_ids).split(",") + + # Controle de validité de toutes info avant de commencer à initialiser les attesations + for my_inscription in tab_inscriptions_ids_splited: + + # Verifier que l'inscription est valide + my_inscription_is_valide = MYSY_GV.dbname['inscription'].count_documents({'_id':ObjectId(str(my_inscription)), 'status':'1', + 'partner_owner_recid':str(my_partner['recid'])}) + + + if( my_inscription_is_valide != 1): + mycommon.myprint( + str(inspect.stack()[0][3]) + " L'inscription_id '" + my_inscription + "' n'est pas valide ") + return False, " L'inscription_id '" + my_inscription + "' n'est pas valide " + + # Verifier la valididé du model de courrier + is_courrier_valide = MYSY_GV.dbname['courrier_template'].count_documents({'_id':ObjectId(str(diction['courrier_template_id'])), + 'valide':'1', + 'locked':'0', + 'partner_owner_recid':str(my_partner['recid'])}) + + if (is_courrier_valide != 1): + mycommon.myprint( + str(inspect.stack()[0][3]) + " Le modèle de courrier '" + str(diction['courrier_template_id']) + "' n'est pas valide ") + return False, " Le modèle de courrier '" + str(diction['courrier_template_id']) + "' n'est pas valide " + + + # A présent les inscriptions sont ok, le modele de courrier ok, on peut proceder à l'initialisation des attestations + + warning_message = " WARNING : " + is_warning_message = 0 + is_courrier_data = MYSY_GV.dbname['courrier_template'].find_one( + {'_id': ObjectId(str(diction['courrier_template_id'])), + 'valide': '1', + 'locked': '0', + 'partner_owner_recid': str(my_partner['recid'])}) + + cpt = 0 + for my_inscription in tab_inscriptions_ids_splited: + + # Verifier que l'inscription est valide + my_inscription_data = MYSY_GV.dbname['inscription'].find_one({'_id':ObjectId(str(my_inscription)), 'status':'1', + 'partner_owner_recid':str(my_partner['recid'])}) + + new_attestation_data = {} + new_attestation_data['date_update'] = str(datetime.now()) + new_attestation_data['update_by'] = str(my_partner['_id']) + new_attestation_data['partner_owner_recid'] = str(my_partner['recid']) + new_attestation_data['valide'] = "1" + new_attestation_data['locked'] = "0" + new_attestation_data['statut'] = "0" + + new_attestation_data['inscription_id'] = str(my_inscription_data['_id']) + new_attestation_data['session_id'] = str(my_inscription_data['session_id']) + new_attestation_data['courrier_template_id'] = str(is_courrier_data['_id']) + + update_key = {} + update_key['inscription_id'] = str(my_inscription_data['_id']) + update_key['partner_owner_recid'] = str(my_partner['recid']) + + ret_val2 = MYSY_GV.dbname['attestation_formation'].find_one_and_update( + update_key, + {"$set": new_attestation_data}, + return_document=ReturnDocument.AFTER, + upsert=True, + ) + + if (ret_val2 is None): + mycommon.myprint(str(inspect.stack()[0][3]) + " - WARNING : Impossible d'initialiser l'attestation de formation pour l'inscription : "+str(my_inscription_data['_id'])) + warning_message = warning_message +" Impossible d'initialiser l'attestation de formation pour l'inscription : "+str(my_inscription_data['_id']) +" - " + is_warning_message = 1 + else: + cpt = cpt +1 + + + + if( is_warning_message == 1 ): + return True, str(cpt) + " Attestation(s) initialisée(s) : "+str(warning_message) + + return True, str(cpt)+" Attestation(s) initialisée(s) " + + 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'initialiser les attestations" diff --git a/main.py b/main.py index b7b78c8..fcb919d 100644 --- a/main.py +++ b/main.py @@ -73,6 +73,7 @@ import Collection_Historique as Collection_Historique import purchase_prices as purchase_prices import apprenant_mgt as apprenant_mgt import module_editique as module_editique +import attestation_formation as attestation_formation app = Flask(__name__) @@ -7363,11 +7364,11 @@ def Action_Server_send_convention_entreprise_mail(): # On recupere le corps (payload) de la requete payload = mycommon.strip_dictionary (request.form.to_dict()) print(" ### Action_Server_send_convention_entreprise_mail payload = ",payload) - return jsonify(status=True, message=" OK Action_Server_send_convention_entreprise_mail") + """ API : pour préprer et générer un zip de fichier PDF pour les convocation en partant d'une session """ @@ -7413,8 +7414,85 @@ def Prepare_and_Send_Convocation_From_Session_By_Email(): +""" +API pour initialiser les attestation de formation pour une session données +""" +@app.route('/myclass/api/Init_Attestation_Formation_With_Template/', methods=['POST','GET']) +@crossdomain(origin='*') +def Init_Attestation_Formation_With_Template(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Init_Attestation_Formation_With_Template payload = ",payload) + print(request.files) + status, retval = attestation_formation.Init_Attestation_Formation_With_Template(payload) + return jsonify(status=status, message=retval) +""" +API pour l'initialisation de la liste des attestation pour toutes les inscription d'une session. +ici on ne prend pas une inscription specifique +""" +@app.route('/myclass/api/Init_Attestation_Formation_With_Template_For_All_Inscription/', methods=['POST','GET']) +@crossdomain(origin='*') +def Init_Attestation_Formation_With_Template_For_All_Inscription(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Init_Attestation_Formation_With_Template_For_All_Inscription payload = ",payload) + print(request.files) + status, retval = attestation_formation.Init_Attestation_Formation_With_Template_For_All_Inscription(payload) + return jsonify(status=status, message=retval) + + + +""" +API pour recuperer la listes des attestation de formation pour une session données +""" +@app.route('/myclass/api/Get_Attestion_By_Session/', methods=['POST','GET']) +@crossdomain(origin='*') +def Get_Attestion_By_Session(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Get_Attestion_By_Session payload = ",payload) + print(request.files) + status, retval = attestation_formation.Get_Attestion_By_Session(payload) + return jsonify(status=status, message=retval) + + +""" +API pour recuperer les differentes modele d'attestation de formation de stagiaire avec des option comme +""" +@app.route('/myclass/api/Get_List_Modele_Attestion_Formation_With_Filter/', methods=['POST','GET']) +@crossdomain(origin='*') +def Get_List_Modele_Attestion_Formation_With_Filter(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Get_List_Modele_Attestion_Formation_With_Filter payload = ",payload) + print(request.files) + status, retval = attestation_formation.Get_List_Modele_Attestion_Formation_With_Filter(payload) + return jsonify(status=status, message=retval) + + + +""" +API Pour envoyer les attestation par email +""" +@app.route('/myclass/api/Prepare_and_Send_Attestation_From_Session_By_Email/', methods=['POST','GET']) +@crossdomain(origin='*') +def Prepare_and_Send_Attestation_From_Session_By_Email(): + # On recupere le corps (payload) de la requete + payload = mycommon.strip_dictionary (request.form.to_dict()) + print(" ### Prepare_and_Send_Attestation_From_Session_By_Email : payload = ",str(payload)) + + file = [] + if request.method == 'POST': + # Create variable for uploaded file + tab_files = [] + for tmp in request.files.getlist("File"): + tab_files.append(tmp) + + status, retval = SF.Prepare_and_Send_Attestation_From_Session_By_Email(tab_files, MYSY_GV.TEMPORARY_DIRECTORY_V2, payload) + return jsonify(status=status, message=retval) + if __name__ == '__main__': print(" debut api") diff --git a/prj_common.py b/prj_common.py index 9cc6114..5b9efde 100644 --- a/prj_common.py +++ b/prj_common.py @@ -4397,7 +4397,6 @@ def Get_Dictionnary_data_For_Template(diction): local_JSON = ast.literal_eval(local_part_imgs[0]) - new_field_logo = {'societe_logo': "data:image/png;base64,"+local_JSON['logo_img']} new_field_cachet = {'societe_cachet': "data:image/png;base64,"+local_JSON['cachet_img']} company_data.update(new_field_logo)