03/11/22 - 17h30
parent
db1548554c
commit
cc992b446e
30
class_mgt.py
30
class_mgt.py
|
@ -19,7 +19,7 @@ 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
|
||||
|
||||
|
||||
class JSONEncoder(json.JSONEncoder):
|
||||
|
@ -2692,10 +2692,36 @@ def get_associated_class_of_partnair(diction):
|
|||
|
||||
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 recuperer la formation"
|
||||
|
||||
|
||||
|
||||
"""
|
||||
Cette fonction est utilisée pour la demande d'information sur une formation.
|
||||
Depuis le site, lorqu'un utilisateur souhaite se renseigner sur une formation.
|
||||
c'est la fonction : "je me renseigne"
|
||||
"""
|
||||
def RenseignementClass(diction):
|
||||
try:
|
||||
field_list_obligatoire = ['nom', 'prenom', 'email', 'telephone', 'employeur',
|
||||
'message', 'class_internal_url']
|
||||
|
||||
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 "
|
||||
|
||||
email.EmailDemandeInfoClass(diction)
|
||||
|
||||
|
||||
return True, " La demande d'information a bien ete 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 demande d'information pour une formation"
|
||||
|
||||
|
|
60
email_mgt.py
60
email_mgt.py
|
@ -1450,7 +1450,65 @@ def send_user_init_pwd_mail(token, account_mail, type_account):
|
|||
print(" Email envoyé " + str(val))
|
||||
return True
|
||||
|
||||
return True
|
||||
|
||||
except Exception as e:
|
||||
exc_type, exc_obj, exc_tb = sys.exc_info()
|
||||
mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - ERRORRRR AT Line : " + str(exc_tb.tb_lineno))
|
||||
return False, " Impossible d'envoyer l'email de notification "
|
||||
|
||||
|
||||
"""
|
||||
Envoi de l'email de la demande d'information
|
||||
sur une formation
|
||||
"""
|
||||
|
||||
def EmailDemandeInfoClass( diction):
|
||||
try:
|
||||
tomorrow = datetime.date.today() + datetime.timedelta(days=1)
|
||||
tomorrow_day = tomorrow.strftime("%A")
|
||||
|
||||
print("debut envoi mail de test ")
|
||||
# on rentre les renseignements pris sur le site du fournisseur
|
||||
|
||||
|
||||
smtpserver = smtplib.SMTP(MYSY_GV.O365_SMTP_COUNT_smtpsrv, MYSY_GV.O365_SMTP_COUNT_port)
|
||||
|
||||
# msg = MIMEMultipart("alternative")
|
||||
msg = EmailMessage()
|
||||
|
||||
# JINJA2
|
||||
templateLoader = jinja2.FileSystemLoader(searchpath="./")
|
||||
templateEnv = jinja2.Environment(loader=templateLoader)
|
||||
TEMPLATE_FILE = "Template/MySy_Demande_Info_Class_tpl.html"
|
||||
template = templateEnv.get_template(TEMPLATE_FILE)
|
||||
# This data can come from database query
|
||||
body = {
|
||||
"params":{"nom": str(diction['nom']),
|
||||
"prenom": str(diction['prenom']),
|
||||
"email": str(diction['email']),
|
||||
"telephone": str(diction['telephone']),
|
||||
"employeur": str(diction['employeur']),
|
||||
"message": str(diction['message']),
|
||||
"class_internal_url": str(diction['class_internal_url']),
|
||||
},
|
||||
}
|
||||
|
||||
sourceHtml = template.render(params=body["params"])
|
||||
|
||||
msg.set_content(sourceHtml, subtype='html')
|
||||
msg['From'] = 'cbalde@mysy-training.com'
|
||||
msg['Cc'] = 'contact@mysy-training.com'
|
||||
msg['Subject'] = "[MySy Training Technology] : Demande d'information"
|
||||
msg['To'] = 'contact@mysy-training.com'
|
||||
|
||||
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))
|
||||
return True
|
||||
|
||||
|
||||
except Exception as e:
|
||||
exc_type, exc_obj, exc_tb = sys.exc_info()
|
||||
|
|
12
main.py
12
main.py
|
@ -1932,6 +1932,18 @@ def GetListOpco():
|
|||
return jsonify(status=localStatus, message=message )
|
||||
|
||||
|
||||
"""
|
||||
API de demande d'information sur une formation
|
||||
"""
|
||||
@app.route('/myclass/api/RenseignementClass/', methods=['POST','GET'])
|
||||
@crossdomain(origin='*')
|
||||
def RenseignementClass():
|
||||
# On recupere le corps (payload) de la requete
|
||||
payload = request.form.to_dict()
|
||||
print(" ### RenseignementClass : payload = ",str(payload))
|
||||
localStatus, message= cm.RenseignementClass(payload)
|
||||
return jsonify(status=localStatus, message=message )
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
print(" debut api")
|
||||
|
|
Loading…
Reference in New Issue