mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-09-06 12:48:25 -04:00
Merge pull request #2661 from alphagov/cant-choose-postage-if-can-choose-template
Don’t give postage choice on service and template
This commit is contained in:
@@ -571,7 +571,7 @@ def service_set_letters(service_id):
|
|||||||
@user_has_permissions('manage_service')
|
@user_has_permissions('manage_service')
|
||||||
def service_set_postage(service_id):
|
def service_set_postage(service_id):
|
||||||
|
|
||||||
if not current_service.has_permission('letter'):
|
if (not current_service.has_permission('letter')) or current_service.has_permission('choose_postage'):
|
||||||
abort(404)
|
abort(404)
|
||||||
|
|
||||||
form = ServicePostageForm(postage=current_service.postage)
|
form = ServicePostageForm(postage=current_service.postage)
|
||||||
|
|||||||
@@ -234,18 +234,20 @@
|
|||||||
)}}
|
)}}
|
||||||
{% endcall %}
|
{% endcall %}
|
||||||
|
|
||||||
{% call settings_row(if_has_permission='letter') %}
|
{% if current_service.has_permission('letter') and not current_service.has_permission('choose_postage') %}
|
||||||
{{ text_field('Postage') }}
|
{% call settings_row() %}
|
||||||
|
{{ text_field('Postage') }}
|
||||||
{% set postage = {'first': 'First class only', 'second': 'Second class only'} %}
|
{% set postage = {'first': 'First class only', 'second': 'Second class only'} %}
|
||||||
{{ text_field(postage[current_service.postage]) }}
|
{{ text_field(postage[current_service.postage]) }}
|
||||||
{{ edit_field(
|
{{ edit_field(
|
||||||
'Change',
|
'Change',
|
||||||
url_for('.service_set_postage',
|
url_for('.service_set_postage',
|
||||||
service_id=current_service.id),
|
service_id=current_service.id),
|
||||||
permissions=['manage_service']
|
permissions=['manage_service']
|
||||||
)
|
)
|
||||||
}}
|
}}
|
||||||
{% endcall %}
|
{% endcall %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% endcall %}
|
{% endcall %}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -233,6 +233,31 @@ def test_if_cant_send_letters_then_cant_see_postage(
|
|||||||
assert 'Postage' not in letter_table
|
assert 'Postage' not in letter_table
|
||||||
|
|
||||||
|
|
||||||
|
def test_if_can_choose_postage_on_template_cant_choose_on_service(
|
||||||
|
client_request,
|
||||||
|
service_one,
|
||||||
|
single_reply_to_email_address,
|
||||||
|
single_letter_contact_block,
|
||||||
|
mock_get_service_organisation,
|
||||||
|
single_sms_sender,
|
||||||
|
mock_get_service_settings_page_common,
|
||||||
|
):
|
||||||
|
service_one['permissions'] = ['letter', 'choose_postage']
|
||||||
|
page = client_request.get('main.service_settings', service_id=SERVICE_ONE_ID)
|
||||||
|
|
||||||
|
letter_table = page.find_all('table')[3]
|
||||||
|
rows = letter_table.select('tbody tr')
|
||||||
|
|
||||||
|
assert len(rows) == 3
|
||||||
|
assert 'Postage' not in letter_table
|
||||||
|
|
||||||
|
client_request.get(
|
||||||
|
'main.service_set_postage',
|
||||||
|
service_id=SERVICE_ONE_ID,
|
||||||
|
_expected_status=404,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def test_if_cant_send_letters_then_cant_see_letter_contact_block(
|
def test_if_cant_send_letters_then_cant_see_letter_contact_block(
|
||||||
client_request,
|
client_request,
|
||||||
service_one,
|
service_one,
|
||||||
|
|||||||
Reference in New Issue
Block a user