Skip to content

Commit 9a58b14

Browse files
Merge pull request #4217 from OneCommunityGlobal/peterson-implement-three-improvements-user-permissions-management-modal
Peterson implemented three improvements on the user permissions management modal.
2 parents 851f86e + 13090e1 commit 9a58b14

1 file changed

Lines changed: 25 additions & 18 deletions

File tree

src/components/PermissionsManagement/UserPermissionsPopUp.jsx

Lines changed: 25 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,12 @@ function UserPermissionsPopUp({
8686
}
8787
return;
8888
}
89-
const userId = actualUserProfile?._id;
9089

90+
if (searchText === '') {
91+
toast.error('Please type the name of a user.');
92+
return;
93+
}
94+
const userId = actualUserProfile?._id;
9195
const url = `${ENDPOINTS.PERMISSION_MANAGEMENT_UPDATE()}/user/${userId}`;
9296
const permissionData = {
9397
permissions: {
@@ -134,6 +138,20 @@ function UserPermissionsPopUp({
134138
}
135139
}, [modalStatus]);
136140

141+
const filteredUsers = allUserProfiles
142+
// eslint-disable-next-line array-callback-return, consistent-return
143+
.filter(user => {
144+
if (
145+
user.firstName.toLowerCase().includes(searchText.toLowerCase()) ||
146+
user.lastName.toLowerCase().includes(searchText.toLowerCase()) ||
147+
`${user.firstName} ${user.lastName}`.toLowerCase().includes(searchText.toLowerCase())
148+
) {
149+
if (user.isActive) {
150+
return user;
151+
}
152+
}
153+
});
154+
137155
return (
138156
<>
139157
{modalStatus && (
@@ -207,22 +225,10 @@ function UserPermissionsPopUp({
207225
}`}
208226
style={{ marginTop: '0px', width: '100%' }}
209227
>
210-
{allUserProfiles
211-
// eslint-disable-next-line array-callback-return, consistent-return
212-
.filter(user => {
213-
if (
214-
user.firstName.toLowerCase().includes(searchText.toLowerCase()) ||
215-
user.lastName.toLowerCase().includes(searchText.toLowerCase()) ||
216-
`${user.firstName} ${user.lastName}`
217-
.toLowerCase()
218-
.includes(searchText.toLowerCase())
219-
) {
220-
if (user.isActive) {
221-
return user;
222-
}
223-
}
224-
})
225-
.map(user => (
228+
{filteredUsers.length === 0 && searchText !== '' ? (
229+
<div style={{ padding: '5px' }}>No user found</div>
230+
) : (
231+
filteredUsers.map(user => (
226232
<div
227233
className={styles['user__auto-complete']}
228234
key={user._id}
@@ -245,7 +251,8 @@ function UserPermissionsPopUp({
245251
>
246252
{user.firstName} {user.lastName}
247253
</div>
248-
))}
254+
))
255+
)}
249256
</div>
250257
) : (
251258
// eslint-disable-next-line react/jsx-no-useless-fragment

0 commit comments

Comments
 (0)