diff --git a/frontend/src/components/Settings/Users.vue b/frontend/src/components/Settings/Users.vue
index 41838818..6ea15809 100644
--- a/frontend/src/components/Settings/Users.vue
+++ b/frontend/src/components/Settings/Users.vue
@@ -48,11 +48,7 @@
-
-
- -
+
+
-
-
-
-
- {{ user.full_name }}
-
-
- {{ user.name }}
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ -
+
+
+
+
+ {{ user.full_name }}
+
+
+ {{ user.name }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{
+ let filteredUsers =
+ users.data?.crmUsers?.filter((user) => user.name !== 'Administrator') || []
+
+ return filteredUsers
+ .filter(
+ (user) =>
+ user.name?.includes(search.value) ||
+ user.full_name?.includes(search.value),
+ )
+ .filter((user) => {
+ if (currentRole.value === 'All') return true
+ return user.role === currentRole.value
+ })
+})
+
function getMoreOptions(user) {
let options = [
{
@@ -158,7 +192,6 @@ function getMoreOptions(user) {
}
function getDropdownOptions(user) {
- const userRole = getUserRole(user.name)
let options = [
{
label: __('Admin'),
@@ -166,7 +199,7 @@ function getDropdownOptions(user) {
RoleOption({
role: __('Admin'),
active: props.active,
- selected: userRole === 'System Manager',
+ selected: user.role === 'System Manager',
onClick: () => updateRole(user, 'System Manager'),
}),
condition: () => isAdmin(),
@@ -177,7 +210,7 @@ function getDropdownOptions(user) {
RoleOption({
role: __('Manager'),
active: props.active,
- selected: userRole === 'Sales Manager',
+ selected: user.role === 'Sales Manager',
onClick: () => updateRole(user, 'Sales Manager'),
}),
condition: () => isManager(),
@@ -188,7 +221,7 @@ function getDropdownOptions(user) {
RoleOption({
role: __('Sales User'),
active: props.active,
- selected: userRole === 'Sales User',
+ selected: user.role === 'Sales User',
onClick: () => updateRole(user, 'Sales User'),
}),
},
@@ -241,4 +274,10 @@ function removeUser(user) {
users.reload()
})
}
+
+onMounted(() => {
+ if (searchRef.value) {
+ searchRef.value.el.focus()
+ }
+})