def get_message_source(message_id): message = db.get_message(message_id) if not message: return 404, 'message does not exist' io = StringIO(message['source']) io.seek(0) return send_file(io, 'text/plain')
def get_message_eml(message_id): message = db.get_message(message_id) if not message: return 404, 'message does not exist' io = StringIO(message['source']) io.seek(0) return send_file(io, 'message/rfc822')
def get_message_eml(message_id): message = db.get_message(message_id) if not message: return 404, 'message does not exist' io = BytesIO(str.encode(message['source'])) io.seek(0) return send_file(io, 'message/rfc822')
def get_message_info(message_id): lightweight = not bool_arg(request.args.get('full')) message = db.get_message(message_id, lightweight) if not message: return 404, 'message does not exist' message['href'] = url_for('get_message_eml', message_id=message_id) message['formats'] = {'source': url_for('get_message_source', message_id=message_id)} if db.message_has_plain(message_id): message['formats']['plain'] = url_for('get_message_plain', message_id=message_id) if db.message_has_html(message_id): message['formats']['html'] = url_for('get_message_html', message_id=message_id) message['attachments'] = [dict(part, href=_part_url(part)) for part in db.get_message_attachments(message_id)] return message
def delete_message(message_id): message = db.get_message(message_id, True) if not message: return 404, 'message does not exist' db.delete_message(message_id)