From 38e44dc7867d372557da8e04025ed4d743ed6fc6 Mon Sep 17 00:00:00 2001 From: odeimaiz Date: Thu, 16 Jan 2025 13:41:08 +0100 Subject: [PATCH 1/4] user might be null --- .../osparc/desktop/organizations/MembersList.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js b/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js index 91ef4845139..936c274fae1 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js +++ b/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js @@ -137,12 +137,14 @@ qx.Class.define("osparc.desktop.organizations.MembersList", { const usersStore = osparc.store.Users.getInstance(); selectedMembers.forEach(selectedMemberGId => promises.push(usersStore.getUser(selectedMemberGId))); Promise.all(promises) - .then(users => { - users.forEach(user => this.__addMember(user.getUsername())); - }) - .catch(err => { - console.error(err); + .then(values => { + values.forEach(user => { + if (user) { + this.__addMember(user.getUsername()); + } + }); }) + .catch(err => console.error(err)) .finally(collaboratorsManager.close()); } else { collaboratorsManager.close(); From dbd4e2ab572c7eebda86487bbdc2cca22b9fcc31 Mon Sep 17 00:00:00 2001 From: odeimaiz Date: Thu, 16 Jan 2025 14:08:35 +0100 Subject: [PATCH 2/4] handle the gid not found error --- .../client/source/class/osparc/store/Users.js | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/services/static-webserver/client/source/class/osparc/store/Users.js b/services/static-webserver/client/source/class/osparc/store/Users.js index 59da1a2fb9a..c40a6429bb6 100644 --- a/services/static-webserver/client/source/class/osparc/store/Users.js +++ b/services/static-webserver/client/source/class/osparc/store/Users.js @@ -28,7 +28,7 @@ qx.Class.define("osparc.store.Users", { }, members: { - fetchUser: function(groupId) { + __fetchUser: function(groupId) { const params = { url: { gid: groupId @@ -41,14 +41,23 @@ qx.Class.define("osparc.store.Users", { }); }, - getUser: function(groupId, fetchIfNotFound = true) { + getUser: async function(groupId, fetchIfNotFound = true) { const userFound = this.getUsers().find(user => user.getGroupId() === groupId); if (userFound) { - return new Promise(resolve => resolve(userFound)); - } else if (fetchIfNotFound) { - return this.fetchUser(groupId); + return userFound; } - return new Promise(reject => reject()); + if (fetchIfNotFound) { + try { + const user = await this.__fetchUser(groupId); + if (user) { + return user; + } + } catch (error) { + console.error(error); + return null; + } + } + return null; }, addUser: function(userData) { From 6c9d64b5d6cacdf0fe5a6b1ca9356345cb56dc85 Mon Sep 17 00:00:00 2001 From: Odei Maiz <33152403+odeimaiz@users.noreply.github.com> Date: Thu, 16 Jan 2025 15:40:17 +0100 Subject: [PATCH 3/4] Update services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js Co-authored-by: Ignacio Pascual <4764217+ignapas@users.noreply.github.com> --- .../source/class/osparc/desktop/organizations/MembersList.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js b/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js index 936c274fae1..2f0a016a8df 100644 --- a/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js +++ b/services/static-webserver/client/source/class/osparc/desktop/organizations/MembersList.js @@ -144,7 +144,7 @@ qx.Class.define("osparc.desktop.organizations.MembersList", { } }); }) - .catch(err => console.error(err)) + .catch(console.error) .finally(collaboratorsManager.close()); } else { collaboratorsManager.close(); From 0b3eecb787a5da3631ea95075b132bef36d031e9 Mon Sep 17 00:00:00 2001 From: odeimaiz Date: Thu, 16 Jan 2025 15:41:13 +0100 Subject: [PATCH 4/4] minor --- .../static-webserver/client/source/class/osparc/store/Users.js | 1 - 1 file changed, 1 deletion(-) diff --git a/services/static-webserver/client/source/class/osparc/store/Users.js b/services/static-webserver/client/source/class/osparc/store/Users.js index c40a6429bb6..693df0b59c7 100644 --- a/services/static-webserver/client/source/class/osparc/store/Users.js +++ b/services/static-webserver/client/source/class/osparc/store/Users.js @@ -54,7 +54,6 @@ qx.Class.define("osparc.store.Users", { } } catch (error) { console.error(error); - return null; } } return null;