From 35cb7a05562d7f159d27dfdd6fac80b906cb7cc3 Mon Sep 17 00:00:00 2001 From: venusbb Date: Fri, 22 Sep 2017 15:52:11 +0100 Subject: [PATCH] inserted missing codes --- app/service/rest.py | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/app/service/rest.py b/app/service/rest.py index 2eaf9af89..2010044cd 100644 --- a/app/service/rest.py +++ b/app/service/rest.py @@ -46,7 +46,8 @@ from app.dao.service_whitelist_dao import ( dao_add_and_commit_whitelisted_contacts, dao_remove_service_whitelist ) -from app.dao.service_email_reply_to_dao import create_or_update_email_reply_to, dao_get_reply_to_by_service_id +from app.dao.service_email_reply_to_dao import create_or_update_email_reply_to, dao_get_reply_to_by_service_id, \ + add_reply_to_email_address_for_service, update_reply_to_email_address, dao_get_reply_to_by_id from app.dao.provider_statistics_dao import get_fragment_count from app.dao.users_dao import get_user_by_id from app.errors import ( @@ -57,6 +58,7 @@ from app.models import Service, ServiceInboundApi from app.schema_validation import validate from app.service import statistics from app.service.service_inbound_api_schema import service_inbound_api, update_service_inbound_api_schema +from app.service.service_senders_schema import add_service_email_reply_to_request from app.service.utils import get_whitelist_objects from app.service.sender import send_notification_to_service_users from app.service.send_notification import send_one_off_notification @@ -535,6 +537,35 @@ def get_email_reply_to_addresses(service_id): return jsonify([i.serialize() for i in result]), 200 +@service_blueprint.route('//email-reply-to/', methods=["GET"]) +def get_email_reply_to_address(service_id, reply_to_id): + result = dao_get_reply_to_by_id(service_id=service_id, reply_to_id=reply_to_id) + return jsonify(result.serialize()), 200 + + +@service_blueprint.route('//email-reply-to', methods=['POST']) +def add_service_reply_to_email_address(service_id): + # validate the service exists, throws ResultNotFound exception. + dao_fetch_service_by_id(service_id) + form = validate(request.get_json(), add_service_email_reply_to_request) + new_reply_to = add_reply_to_email_address_for_service(service_id=service_id, + email_address=form['email_address'], + is_default=form.get('is_default', True)) + return jsonify(data=new_reply_to.serialize()), 201 + + +@service_blueprint.route('//email-reply-to/', methods=['POST']) +def update_service_reply_to_email_address(service_id, reply_to_email_id): + # validate the service exists, throws ResultNotFound exception. + dao_fetch_service_by_id(service_id) + form = validate(request.get_json(), add_service_email_reply_to_request) + new_reply_to = update_reply_to_email_address(service_id=service_id, + reply_to_id=reply_to_email_id, + email_address=form['email_address'], + is_default=form.get('is_default', True)) + return jsonify(data=new_reply_to.serialize()), 200 + + @service_blueprint.route('/unique', methods=["GET"]) def is_service_name_unique(): name, email_from = check_request_args(request)