From 1efca4733617806363e51d013590c885b9b13405 Mon Sep 17 00:00:00 2001 From: Philipp Dormann Date: Fri, 4 Dec 2020 17:55:51 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=A7=20reference=20new=20Errors=20from?= =?UTF-8?q?=20CreateUser?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/models/creation/CreateUser.ts | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/models/creation/CreateUser.ts b/src/models/creation/CreateUser.ts index 14f0f77..102919a 100644 --- a/src/models/creation/CreateUser.ts +++ b/src/models/creation/CreateUser.ts @@ -1,8 +1,10 @@ import * as argon2 from "argon2"; -import { IsInt, IsOptional, IsPhoneNumber, IsString, IsUUID } from 'class-validator'; +import { IsEmail, IsOptional, IsPhoneNumber, IsString, IsUUID } from 'class-validator'; +import { getConnectionManager } from 'typeorm'; import * as uuid from 'uuid'; -import { UserGroupNotFoundError, UsernameOrEmailNeededError } from '../../errors/CreateUserErrors'; +import { UsernameOrEmailNeededError } from '../../errors/UserErrors'; import { User } from '../entities/User'; +import { UserGroup } from '../entities/UserGroup'; export class CreateUser { @IsString() @@ -19,9 +21,11 @@ export class CreateUser { password: string; @IsString() lastname: string; + @IsEmail() @IsString() email?: string; - @IsInt() + // @IsArray() + // @IsInt() @IsOptional() groupId?: number[] | number @IsUUID("4") @@ -36,9 +40,13 @@ export class CreateUser { if (this.groupId) { // TODO: link user groups - // newUser.groups = await getConnectionManager().get().getRepository(UserGroup).findOne({ id: this.teamId }); + if (Array.isArray(this.groupId)) { + + } else { + newUser.groups = await getConnectionManager().get().getRepository(UserGroup).find({ id: this.groupId }); + } } else { - throw new UserGroupNotFoundError(); + // throw new UserGroupNotFoundError(); } const new_uuid = uuid.v4()