Sindbad~EG File Manager
from flask import request, url_for,flash, render_template,session
from core import app
from flask import url_for
from core.model.AbstractModel import AbstractModel
from datetime import datetime, date, time, timedelta
import requests,mandrill,json
from .. import Cryptography,Auth
from core.library.Mandrill import Mandrill
from core.library.Mailgun import Mailgun
from core.library.bravo import Bravo
class EMAIL:
def sendMail(subject,html,to,conf_id):
return EMAIL.sendMail_v1(subject=subject,html=html,to=to,mailData=None,conf_id=conf_id,confData=None)
# MANDRILL_API_KEY='md-WHhIRdtiJJHa7wD0_WY6pQ' # IP ADDRESS ENABLED
# mandrill_client = mandrill.Mandrill(MANDRILL_API_KEY)
# #Test mail id for all mails
# is_test_mail = AbstractModel().settings_mail('is_test_mail',conf_id)
# if is_test_mail and int(is_test_mail["setting_value"]) == 1 :
# is_test_mail_id = AbstractModel().settings_mail('is_test_mail_id',conf_id)
# to = is_test_mail_id["setting_value"]
# message = {
# 'from_email' : Auth.get_conference(conf_id).get('e_from_email'),
# 'from_name': Auth.get_conference(conf_id).get('conf_name') +' - Scientific Committee',
# 'subject' : subject,
# 'recipients':to,
# 'html': html,
# "headers" :
# {"Reply-To": Auth.get_conference(conf_id).get('e_reply_to')},
# 'to' : [
# {
# 'email':to,
# 'name':to,
# 'type':'to'
# },
# ]
# }
# result = mandrill_client.messages.send(message = message,send_async=True)
# return ('success')
def sendOTPMail(subject,html,to,conf_id):
return EMAIL.sendMail_v1(subject=subject,html=html,to=to,mailData=None,conf_id=conf_id,confData=None)
# MANDRILL_API_KEY='md-WHhIRdtiJJHa7wD0_WY6pQ' # IP ADDRESS ENABLED
# mandrill_client = mandrill.Mandrill(MANDRILL_API_KEY)
# #Test mail id for all mails
# is_test_mail = AbstractModel().settings_mail('is_test_mail',conf_id)
# if is_test_mail and int(is_test_mail["setting_value"]) == 1 :
# is_test_mail_id = AbstractModel().settings_mail('is_test_mail_id',conf_id)
# to = is_test_mail_id["setting_value"]
# message = {
# 'from_email' : Auth.get_conference(conf_id).get('e_from_email'),
# 'from_name': Auth.get_conference(conf_id).get('conf_name') +' - Scientific Committee',
# 'subject' : subject,
# 'recipients':to,
# 'html': html,
# "headers" :
# {"Reply-To": Auth.get_conference(conf_id).get('e_reply_to')},
# 'to' : [
# {
# 'email':to,
# 'name':to,
# 'type':'to'
# },
# {
# 'email':Auth.get_conference(conf_id).get('e_backup_emails'),
# 'name':to,
# 'type':'to'
# },
# ]
# }
# result = mandrill_client.messages.send(message = message,send_async=True)
# return ('success')
def sendMail_v1(subject,html,to,mailData,conf_id,confData=None):
confData = confData if confData else session.get('conference'+str(conf_id))
if confData :
if confData['driver'] == 'mailgun':
# pass
Mailgun.sendMail(subject,html,to,mailData,conf_id,confData)
elif confData['driver'] == 'mandrill':
# pass
Mandrill.sendMail(subject,html,to,mailData,conf_id,confData)
elif confData['driver'] == 'bravo':
Bravo.sendMail(subject,html,to,mailData,conf_id,confData)
else:
return "Please check mail configuration setting"
else:
return redirect (url_for('user.Home_index'))
def sendMail_v2(subject,html,mailData,conf_id,confData=None,attachmentData=None):
confData = confData if confData else session.get('conference'+str(conf_id))
if confData :
if confData['driver'] == 'mailgun':
# pass
Mailgun.sendMail_v2(subject,html,mailData,conf_id,confData,attachmentData)
elif confData['driver'] == 'mandrill':
# pass
Mandrill.sendMail_v2(subject,html,mailData,conf_id,confData,attachmentData)
elif confData['driver'] == 'bravo':
to = mailData.get('TO')
Bravo.sendMail(subject,html,to,mailData,conf_id,confData)
else:
return "Please check mail configuration setting"
else:
return redirect (url_for('user.Home_index'))
def sendMail_daily_report(subject,html,to,conf_id):
confData = {
'driver':'mailgun',
'e_backup_emails': 'ntecbackup@gmail.com',
'e_from_email' : 'support@numerotec.com',
'conf_name' : '',
'e_reply_to' : 'support@numerotec.com',
'domain': 'numerotech.com',
'secret_key':'key-e13725db7c3a95b679911c038b490db1',
}
mailData = {
'bcc_mails':None,
'from_mail_name':'NumeroTec Support',
'from_mail_id' : None,
'reply_mail_id':None,
'is_send_backup' : 1,
}
return EMAIL.sendMail_v1(subject=subject,html=html,to=to,mailData=mailData,conf_id=conf_id,confData=confData)
def sendMail_daily_report_v1(subject,html,to,bcc,conf_id):
confData = {
'driver':'mailgun',
'e_backup_emails': 'ntecbackup@gmail.com',
'e_from_email' : 'support@numerotec.com',
'conf_name' : '',
'e_reply_to' : 'support@numerotec.com',
'domain': 'mg2.numerotec.com',
'secret_key':'500f990be972a993db2004203b97b5c4-191fb7b6-be86716a',
}
mailData = {
'bcc_mails':bcc,
'from_mail_name':'NumeroTec Support',
'from_mail_id' : None,
'reply_mail_id':None,
'is_send_backup' : 1,
}
return EMAIL.sendMail_v1(subject=subject,html=html,to=to,mailData=mailData,conf_id=conf_id,confData=confData)
# MANDRILL_API_KEY='md-WHhIRdtiJJHa7wD0_WY6pQ' # IP ADDRESS ENABLED
# MANDRILL_API_KEY='3rql7lHFpPcoHnNAWYQTFQ'
# mandrill_client = mandrill.Mandrill(MANDRILL_API_KEY)
# #Test mail id for all mails
# is_test_mail = AbstractModel().settings_mail('is_test_mail',conf_id)
# if is_test_mail and int(is_test_mail["setting_value"]) == 1 :
# is_test_mail_id = AbstractModel().settings_mail('is_test_mail_id',conf_id)
# to = is_test_mail_id["setting_value"]
# message = {
# 'from_email' : 'support@numerotec.com',
# 'from_name': ' Scientific Committee',
# 'subject' : subject,
# 'recipients':to,
# 'html': html,
# "headers" :
# {"Reply-To": 'support@numerotec.com'},
# 'to' : [
# {
# 'email':to,
# 'name':to,
# 'type':'to'
# },
# {
# 'email':'ntecbackup@gmail.com',
# 'name':to,
# 'type':'to'
# },
# ]
# }
# result = mandrill_client.messages.send(message = message,send_async=True)
# return ('success')
def sendMailResetPassword(subject,html,to,confe):
cc = []
bcc = confe['e_backup_emails']
url = 'https://api.mailgun.net/v3/mg.numerotec.com/messages'
auth = ('api', 'key-e13725db7c3a95b679911c038b490db1')
# society_data = Auth.getSociety(society_id)
data = {
'from' : confe['conf_name']+'<'+confe['e_from_email']+'>',
'to' : to,
'cc' : cc,
'bcc' : bcc,
'subject': subject,
'html' : html
}
data['h:Reply-To']= confe['e_reply_to']
res = requests.post(url, auth=auth, data=data)
return "mail sent successful."
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists