def inform_parent_username_changed(parent, password): """ parent is object """ path_to_templates = config_get_section_attribute('DIRECTORIES', 'path_to_templates') parent_email_templates = read_in_templates(path_to_templates + '/parent_username_changed') email = Email(config_get_section_attribute('EMAIL', 'domain')) email.define_sender('*****@*****.**', "DragonNet Admin") email.use_templates(parent_email_templates) email.make_subject("Notification of updated SSIS DragonNet username") email.add_to(parent.email) for student in parent.children: if student.is_korean: email.add_language('kor') if student.is_chinese: email.add_language('chi') email.add_bcc('*****@*****.**') email.add_bcc('*****@*****.**') email.define_field('username', parent.email) email.define_field('salutation', 'Dear SSIS Parent') email.define_field('password', password) email.send()
def inform_new_parent(parent): """ parent is object """ path_to_templates = config_get_section_attribute('DIRECTORIES', 'path_to_templates') parent_email_templates = read_in_templates(path_to_templates + '/parent_new_account') email = Email(config_get_section_attribute('EMAIL', 'domain')) email.define_sender('*****@*****.**', "DragonNet Admin") email.use_templates(parent_email_templates) email.make_subject("Your SSIS DragonNet Parent Account") for parent_email in parent.emails: email.add_to(parent_email) for student in parent.children: if student.is_korean: email.add_language('kor') if student.is_chinese: email.add_language('chi') email.add_bcc('*****@*****.**') email.add_bcc('*****@*****.**') email.define_field('username', parent.email) email.define_field('salutation', 'Dear Parent') email.send()
if match: to_who = match.group(1) where = line.index(search_item) message = line[ (where+ len(search_item)+1): -1] match = re.search("orig_to=<(.*?)>", line) if match: orig_to = match.group(1) if args.stdout: print(to_who) print(orig_to) bounce = bounces[to_who] bounce.key = escape(to_who) bounce.count += 1 bounce.messages.append(escape(message)) email = Email(domain) email.add_to('*****@*****.**') email.make_subject("Bounces") email.define_sender('DragonNet Admin <*****@*****.**>') html = "<html>" for bounce in bounces: ns = NS(bounces[bounce]) ns.messages = "<br />".join(ns.messages) ns.BR = '<br />' html += ns('<p>Email{COLON}{SPACE}{key}{SPACE} ' \ 'How many bounces{COLON}{SPACE}{count}{BR}<i>{messages}</i></p>') html+= "</html>" email.define_content(html) if not args.no_emails: email.send() if args.stdout:
def inform_new_student(student): path_to_templates = config_get_section_attribute('DIRECTORIES', 'path_to_templates') student_email_templates = read_in_templates(path_to_templates + '/student_new_account') sender = '"DragonNet Admin" <*****@*****.**>' sf = NS(student) email = Email(config_get_section_attribute('EMAIL', 'domain')) email.define_sender('*****@*****.**', "DragonNet Admin") email.use_templates(student_email_templates) email.make_subject(sf("New Student in Homeroom {homeroom}, {lastfirst}")) homeroom_teacher = student.homeroom_teacher if homeroom_teacher: email.add_to(homeroom_teacher.email) # ssis does not want this feature #for guardian_email in student.guardian_emails: # email.add_to(guardian_email) # for class_teacher in student.get_teachers_as_list(): # email.add_to(class_teacher + '@ssis-suzhou.net') # if student.grade in [11, 12]: # email.add_cc('*****@*****.**') # email.add_cc('*****@*****.**') # elif student.grade in [6, 7, 8, 9, 10]: # email.add_cc('*****@*****.**') email.add_bcc('*****@*****.**') email.add_bcc('*****@*****.**') email.define_fields(sf) email.send()
def email(self, email: "List or not", cc=None, bcc=None): """ USE THE Email API TO SEND AN EMAIL HANDLES IT WHETHER OR NOT LISTS ARE PASSED """ e = Email(self.server) e.define_sender(self.sender) if isinstance(email, list): for item in email: e.add_to(item) else: e.add_to(email) if cc: if isinstance(cc, list): for item in cc: e.add_cc(item) else: e.add_cc(cc) if bcc: if isinstance(bcc, list): for item in bcc: e.add_bcc(item) else: e.add_bcc(bcc) e.define_subject(self.get_subject()) e.define_content(self.get_html()) try: e.send() except smtplib.SMTPRecipientsRefused: self.print_email(email)