Remove edit_folder_permissions service setting (feature flag)

This removes the edit_folder_permission checks from the code, enabling
the folder permissions for all services.

This also fixes folder-related tests to set up appropriate user
permissions.

This should only be merged right after alphagov/notifications-api#2428,
when all other permission stories are done.
This commit is contained in:
Alexey Bezhan
2019-04-02 15:23:46 +01:00
committed by Chris Hill-Scott
parent c31dbd4de0
commit cab780b549
14 changed files with 48 additions and 135 deletions

View File

@@ -63,11 +63,6 @@ def invite_user(service_id):
form.login_authentication.data = 'sms_auth'
if form.validate_on_submit():
if current_service.has_permission('edit_folder_permissions'):
folder_permissions = form.folder_permissions.data
else:
folder_permissions = list(current_service.all_template_folder_ids)
email_address = form.email_address.data
invited_user = invite_api_client.create_invite(
current_user.id,
@@ -75,7 +70,7 @@ def invite_user(service_id):
email_address,
form.permissions,
form.login_authentication.data,
folder_permissions,
form.folder_permissions.data,
)
flash('Invite sent to {}'.format(invited_user.email_address), 'default_with_tick')
@@ -114,10 +109,7 @@ def edit_user_permissions(service_id, user_id):
user_api_client.set_user_permissions(
user_id, service_id,
permissions=form.permissions,
folder_permissions=(
form.folder_permissions.data
if current_service.has_permission('edit_folder_permissions') else None
),
folder_permissions=form.folder_permissions.data,
)
if service_has_email_auth:
user_api_client.update_user_attribute(user_id, auth_type=form.login_authentication.data)

View File

@@ -62,7 +62,6 @@ PLATFORM_ADMIN_SERVICE_PERMISSIONS = OrderedDict([
('inbound_sms', {'title': 'Receive inbound SMS', 'requires': 'sms', 'endpoint': '.service_set_inbound_number'}),
('email_auth', {'title': 'User auth type editing'}),
('upload_document', {'title': 'Uploading documents', 'endpoint': '.service_switch_can_upload_document'}),
('edit_folder_permissions', {'title': 'Folder permissions'}),
])

View File

@@ -53,10 +53,7 @@ def view_template(service_id, template_id):
template = current_service.get_template(template_id)
template_folder = current_service.get_template_folder(template['folder'])
if not current_service.has_permission("edit_folder_permissions"):
user_has_template_permission = True
else:
user_has_template_permission = current_user.has_template_folder_permission(template_folder)
user_has_template_permission = current_user.has_template_folder_permission(template_folder)
if should_skip_template_page(template['template_type']):
return redirect(url_for(
@@ -120,10 +117,7 @@ def start_tour(service_id, template_id):
def choose_template(service_id, template_type='all', template_folder_id=None):
template_folder = current_service.get_template_folder(template_folder_id)
if not current_service.has_permission("edit_folder_permissions"):
user_has_template_folder_permission = True
else:
user_has_template_folder_permission = current_user.has_template_folder_permission(template_folder)
user_has_template_folder_permission = current_user.has_template_folder_permission(template_folder)
template_list = TemplateList(current_service, template_type, template_folder_id, current_user)
@@ -393,10 +387,7 @@ def copy_template(service_id, template_id):
template = service_api_client.get_service_template(from_service, str(template_id))['data']
template_folder = template_folder_api_client.get_template_folder(from_service, template['folder'])
if (
current_service.has_permission('edit_folder_permissions') and
not current_user.has_template_folder_permission(template_folder)
):
if not current_user.has_template_folder_permission(template_folder):
abort(403)
if request.method == 'POST':