def post(self): user = yield get_user_settings(self.current_user.user_id, GLSettings.memory_copy.default_language) language = user['language'] yield get_notification(language) data = {} data['type'] = 'admin_test_static' data['node'] = yield admin_serialize_node(language) data['notification'] = yield get_notification(language) subject, body = Templating().get_mail_subject_and_body(data) send_to = user['mail_address'] log.debug("Attempting to send test email to: %s" % send_to) # If sending the email fails the exception mail address will be mailed. # If the failure is due to a bad SMTP config that will fail too, but it # doesn't hurt to try! try: yield sendmail(send_to, subject, body) except Exception as e: log.debug("Sending to admin failed. Trying an exception mail") raise e
def post(self): user = yield get_user_settings(self.current_user.user_id, State.tenant_cache[1].default_language) language = user['language'] data = { 'type': 'admin_test', 'node': (yield admin_serialize_node(language)), 'notification': (yield get_notification(language)), 'user': user, } subject, body = Templating().get_mail_subject_and_body(data) yield sendmail(user['mail_address'], subject, body)
def send_pgp_alerts(self, receiver_desc): user_language = receiver_desc["language"] node_desc = yield admin_serialize_node(user_language) notification_settings = yield get_notification(user_language) fakeevent = OD() fakeevent.type = u"pgp_expiration_alert" fakeevent.node_info = node_desc fakeevent.context_info = None fakeevent.receiver_info = receiver_desc fakeevent.tip_info = None fakeevent.subevent_info = None subject = Templating().format_template(notification_settings["pgp_alert_mail_title"], fakeevent) body = Templating().format_template(notification_settings["pgp_alert_mail_template"], fakeevent) yield sendmail(receiver_desc["mail_address"], subject, body)
def post(self): user = yield get_user_settings(self.current_user.user_id, GLSettings.memory_copy.default_language) language = user['language'] yield get_notification(language) data = {} data['type'] = 'admin_test_static' data['node'] = yield admin_serialize_node(language) data['notification'] = yield get_notification(language) subject, body = Templating().get_mail_subject_and_body(data) send_to = user['mail_address'] yield sendmail(send_to, subject, body)
def send_pgp_alerts(self, receiver_desc): user_language = receiver_desc['language'] node_desc = yield admin_serialize_node(user_language) notification_settings = yield get_notification(user_language) fakeevent = OD() fakeevent.type = u'pgp_expiration_alert' fakeevent.node_info = node_desc fakeevent.context_info = None fakeevent.receiver_info = receiver_desc fakeevent.tip_info = None fakeevent.subevent_info = None subject = Templating().format_template( notification_settings['pgp_alert_mail_title'], fakeevent) body = Templating().format_template( notification_settings['pgp_alert_mail_template'], fakeevent) yield sendmail(receiver_desc['mail_address'], subject, body)
def send_admin_pgp_alerts(self, admin_desc, expired_or_expiring): user_language = admin_desc["language"] node_desc = yield admin_serialize_node(user_language) notification_settings = yield get_notification(user_language) fakeevent = OD() fakeevent.type = u"admin_pgp_expiration_alert" fakeevent.node_info = node_desc fakeevent.context_info = None fakeevent.receiver_info = None fakeevent.tip_info = None fakeevent.subevent_info = {"expired_or_expiring": expired_or_expiring} subject = Templating().format_template(notification_settings["admin_pgp_alert_mail_title"], fakeevent) body = Templating().format_template(notification_settings["admin_pgp_alert_mail_template"], fakeevent) admin_users = yield get_admin_users() for u in admin_users: yield sendmail(u["mail_address"], subject, body)
def send_admin_pgp_alerts(self, admin_desc, expired_or_expiring): user_language = admin_desc['language'] node_desc = yield admin_serialize_node(user_language) notification_settings = yield get_notification(user_language) fakeevent = OD() fakeevent.type = u'admin_pgp_expiration_alert' fakeevent.node_info = node_desc fakeevent.context_info = None fakeevent.receiver_info = None fakeevent.tip_info = None fakeevent.subevent_info = {'expired_or_expiring': expired_or_expiring} subject = Templating().format_template( notification_settings['admin_pgp_alert_mail_title'], fakeevent) body = Templating().format_template( notification_settings['admin_pgp_alert_mail_template'], fakeevent) admin_users = yield get_admin_users() for u in admin_users: yield sendmail(u['mail_address'], subject, body)
def post(self, rtip_id): files_dict = yield download_all_files(self.current_user.user_id, rtip_id) node_dict = yield node.admin_serialize_node(self.request.language) receiver_dict = yield get_receiver_from_rtip(rtip_id, self.request.language) rtip_dict = yield get_rtip_info(rtip_id, self.request.language) collection_tip_dict = yield get_collection_info(rtip_id) context_dict = yield context.get_context(rtip_dict['context_id'], 'en') notif_dict = yield notification.get_notification(self.request.language) mock_event = Event( type=u'archive_description', trigger='Download', node_info=node_dict, receiver_info=receiver_dict, context_info=context_dict, tip_info=rtip_dict, subevent_info=collection_tip_dict, do_mail=False, ) formatted_coll = Templating().format_template(notif_dict['archive_description'], mock_event).encode('utf-8') files_dict.append( { 'buf': formatted_coll, 'name': "COLLECTION_INFO.txt" } ) self.set_status(200) self.set_header('X-Download-Options', 'noopen') self.set_header('Content-Type', 'application/octet-stream') self.set_header('Content-Disposition', 'attachment; filename=\"collection.zip\"') for data in ZipStream(files_dict): self.write(data) self.finish()