summaryrefslogtreecommitdiffstats
path: root/client/components/import/wekanMembersMapper.js
diff options
context:
space:
mode:
Diffstat (limited to 'client/components/import/wekanMembersMapper.js')
-rw-r--r--client/components/import/wekanMembersMapper.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/client/components/import/wekanMembersMapper.js b/client/components/import/wekanMembersMapper.js
new file mode 100644
index 00000000..f4c110f7
--- /dev/null
+++ b/client/components/import/wekanMembersMapper.js
@@ -0,0 +1,24 @@
+export function getMembersToMap(data) {
+ // we will work on the list itself (an ordered array of objects) when a
+ // mapping is done, we add a 'wekan' field to the object representing the
+ // imported member
+ const membersToMap = data.members;
+ const users = data.users;
+ // auto-map based on username
+ membersToMap.forEach((importedMember) => {
+ importedMember.id = importedMember.userId;
+ delete importedMember.userId;
+ const user = users.filter((user) => {
+ return user._id === importedMember.id;
+ })[0];
+ if (user.profile && user.profile.fullname) {
+ importedMember.fullName = user.profile.fullname;
+ }
+ importedMember.username = user.username;
+ const wekanUser = Users.findOne({ username: importedMember.username });
+ if (wekanUser) {
+ importedMember.wekanId = wekanUser._id;
+ }
+ });
+ return membersToMap;
+}