diff --git a/app/main/views/manage_users.py b/app/main/views/manage_users.py index 156206667..cbbff87c8 100644 --- a/app/main/views/manage_users.py +++ b/app/main/views/manage_users.py @@ -18,19 +18,11 @@ from app.utils import user_has_permissions @login_required @user_has_permissions() def manage_users(service_id): - users = sorted( - ( - user_api_client.get_users_for_service(service_id=service_id) + - invite_api_client.get_invites_for_service(service_id=service_id) - ), - key=lambda user: user.email_address, - ) - return render_template( 'views/manage-users.html', - users=users, + users=current_service.team_members, current_user=current_user, - show_search_box=(len(users) > 7), + show_search_box=(len(current_service.team_members) > 7), form=SearchUsersForm(), permissions=permissions, ) diff --git a/app/models/service.py b/app/models/service.py index 8a04d79e5..97faf5554 100644 --- a/app/models/service.py +++ b/app/models/service.py @@ -6,6 +6,7 @@ from app.notify_client.api_key_api_client import api_key_api_client from app.notify_client.billing_api_client import billing_api_client from app.notify_client.email_branding_client import email_branding_client from app.notify_client.inbound_number_client import inbound_number_client +from app.notify_client.invite_api_client import invite_api_client from app.notify_client.job_api_client import job_api_client from app.notify_client.organisations_api_client import organisations_client from app.notify_client.service_api_client import service_api_client @@ -98,6 +99,16 @@ class Service(): def has_jobs(self): return job_api_client.has_jobs(self.id) + @cached_property + def team_members(self): + return list(sorted( + ( + invite_api_client.get_invites_for_service(service_id=self.id) + + user_api_client.get_users_for_service(service_id=self.id) + ), + key=lambda user: user.email_address, + )) + @cached_property def has_team_members(self): return user_api_client.get_count_of_users_with_permission(