mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-05-06 00:48:46 -04:00
Refactor code to check whether email/sms is enabled
This commit is contained in:
@@ -43,7 +43,8 @@ from app.utils import (
|
||||
get_errors_for_csv,
|
||||
Spreadsheet,
|
||||
get_help_argument,
|
||||
get_template
|
||||
get_template,
|
||||
email_or_sms_not_enabled,
|
||||
)
|
||||
from app.template_previews import TemplatePreview, get_page_count_for_letter
|
||||
|
||||
@@ -93,8 +94,7 @@ def send_messages(service_id, template_id):
|
||||
|
||||
db_template = service_api_client.get_service_template(service_id, template_id)['data']
|
||||
|
||||
if (db_template['template_type'] in ['email', 'sms']) \
|
||||
and (db_template['template_type'] not in current_service['permissions']):
|
||||
if email_or_sms_not_enabled(db_template['template_type'], current_service['permissions']):
|
||||
return redirect(url_for(
|
||||
'.action_blocked',
|
||||
service_id=service_id,
|
||||
@@ -176,8 +176,7 @@ def send_test(service_id, template_id):
|
||||
|
||||
db_template = service_api_client.get_service_template(service_id, template_id)['data']
|
||||
|
||||
if (db_template['template_type'] in ['email', 'sms']) \
|
||||
and (db_template['template_type'] not in current_service['permissions']):
|
||||
if email_or_sms_not_enabled(db_template['template_type'], current_service['permissions']):
|
||||
return redirect(url_for(
|
||||
'.action_blocked',
|
||||
service_id=service_id,
|
||||
|
||||
@@ -18,7 +18,7 @@ from notifications_utils.recipients import first_column_headings
|
||||
from notifications_python_client.errors import HTTPError
|
||||
|
||||
from app.main import main
|
||||
from app.utils import user_has_permissions, get_template, get_help_argument
|
||||
from app.utils import user_has_permissions, get_template, get_help_argument, email_or_sms_not_enabled
|
||||
from app.template_previews import TemplatePreview, get_page_count_for_letter
|
||||
from app.main.forms import (
|
||||
ChooseTemplateType,
|
||||
@@ -232,13 +232,7 @@ def add_template_by_type(service_id):
|
||||
template_id=blank_letter['data']['id'],
|
||||
))
|
||||
|
||||
if form.template_type.data in current_service['permissions']:
|
||||
return redirect(url_for(
|
||||
'.add_service_template',
|
||||
service_id=service_id,
|
||||
template_type=form.template_type.data,
|
||||
))
|
||||
else:
|
||||
if email_or_sms_not_enabled(form.template_type.data, current_service['permissions']):
|
||||
return redirect(url_for(
|
||||
'.action_blocked',
|
||||
service_id=service_id,
|
||||
@@ -246,6 +240,12 @@ def add_template_by_type(service_id):
|
||||
return_to='add_new_template',
|
||||
template_id='0'
|
||||
))
|
||||
else:
|
||||
return redirect(url_for(
|
||||
'.add_service_template',
|
||||
service_id=service_id,
|
||||
template_type=form.template_type.data,
|
||||
))
|
||||
|
||||
return render_template('views/templates/add.html', form=form)
|
||||
|
||||
@@ -304,7 +304,8 @@ def add_service_template(service_id, template_type):
|
||||
return redirect(
|
||||
url_for('.view_template', service_id=service_id, template_id=new_template['data']['id'])
|
||||
)
|
||||
if (template_type in ['email', 'sms']) and (template_type not in current_service['permissions']):
|
||||
|
||||
if email_or_sms_not_enabled(template_type, current_service['permissions']):
|
||||
return redirect(url_for(
|
||||
'.action_blocked',
|
||||
service_id=service_id,
|
||||
@@ -392,8 +393,7 @@ def edit_service_template(service_id, template_id):
|
||||
|
||||
db_template = service_api_client.get_service_template(service_id, template_id)['data']
|
||||
|
||||
if (db_template['template_type'] in ['email', 'sms']) \
|
||||
and (db_template['template_type'] not in current_service['permissions']):
|
||||
if email_or_sms_not_enabled(db_template['template_type'], current_service['permissions']):
|
||||
return redirect(url_for(
|
||||
'.action_blocked',
|
||||
service_id=service_id,
|
||||
|
||||
@@ -320,3 +320,7 @@ def get_time_left(created_at):
|
||||
past_tense='Data no longer available', # No-one should ever see this
|
||||
precision=1
|
||||
)
|
||||
|
||||
|
||||
def email_or_sms_not_enabled(template_type, permissions):
|
||||
return (template_type in ['email', 'sms']) and (template_type not in permissions)
|
||||
|
||||
Reference in New Issue
Block a user