|
|
@@ -68,7 +68,7 @@ class ExternalAccount {
|
|
|
* @returns {Promise<ExternalAccount>}
|
|
|
* @memberof ExternalAccount
|
|
|
*/
|
|
|
- static findOrRegister(providerType, accountId, usernameToBeRegistered) {
|
|
|
+ static findOrRegister(providerType, accountId, usernameToBeRegistered, nameToBeRegistered) {
|
|
|
|
|
|
return this.findOne({ providerType, accountId })
|
|
|
.then(account => {
|
|
|
@@ -86,10 +86,13 @@ class ExternalAccount {
|
|
|
if (user != null) {
|
|
|
throw new DuplicatedUsernameException(`User '${usernameToBeRegistered}' already exists`, user);
|
|
|
}
|
|
|
+ if (nameToBeRegistered == null) {
|
|
|
+ nameToBeRegistered = '';
|
|
|
+ }
|
|
|
|
|
|
// create a new User with STATUS_ACTIVE
|
|
|
debug(`ExternalAccount '${accountId}' is not found, it is going to be registered.`);
|
|
|
- return User.createUser('', usernameToBeRegistered, undefined, undefined, undefined, User.STATUS_ACTIVE);
|
|
|
+ return User.createUser(nameToBeRegistered, usernameToBeRegistered, undefined, undefined, undefined, User.STATUS_ACTIVE);
|
|
|
})
|
|
|
.then(newUser => {
|
|
|
return this.associate(providerType, accountId, newUser);
|