in source/api/services/admin/lib/user.js [382:456]
getUserPoolConfigInfo(function(err, poolinfo) {
if (err) {
return cb(err, null);
}
let params = {
UserPoolId: poolinfo,
Username: userId
};
let cognitoidentityserviceprovider = new AWS.CognitoIdentityServiceProvider();
cognitoidentityserviceprovider.adminGetUser(params, function(err, data) {
if (err) {
console.log(err);
return cb({code: 502, message: "Failed to get user."}, null);
}
let _user = {
user_id: data.Username,
display_name: '',
email: '',
role: 'Member',
accesskey: '',
enabled: data.Enabled,
created_at: data.UserCreateDate,
updated_at: data.UserLastModifiedDate
};
let _nm = _.where(data.UserAttributes, {
Name: 'custom:display_name'
});
if (_nm.length > 0) {
_user.display_name = _nm[0].Value;
} else {
let _nm = _.where(data.UserAttributes, {
Name: 'name'
});
let _fn = _.where(data.UserAttributes, {
Name: 'family_name'
});
if (_nm.length > 0 && _fn.length > 0) {
_user.display_name = `${_nm[0].Value} ${_fn[0].Value}`;
} else if (_nm.length > 0) {
_user.display_name = _nm[0].Value;
} else if (_fn.length > 0) {
_user.display_name = _fn[0].Value;
}
}
let _ak = _.where(data.UserAttributes, {
Name: 'custom:accesskey'
});
if (_ak.length > 0) {
_user.accesskey = _ak[0].Value;
}
let _em = _.where(data.UserAttributes, {
Name: 'email'
});
if (_em.length > 0) {
_user.email = _em[0].Value;
}
let _role = _.where(data.UserAttributes, {
Name: 'custom:role'
});
if (_role.length > 0) {
_user.role = _role[0].Value;
}
return cb(null, _user);
});
});