@@ -11,13 +11,14 @@ import schema from './schema';
11
11
import asyncHandler from '../../../helpers/asyncHandler' ;
12
12
import bcrypt from 'bcrypt' ;
13
13
import _ from 'lodash' ;
14
+ import { RoleCode } from '../../../database/model/Role' ;
14
15
15
16
const router = express . Router ( ) ;
16
17
17
18
router . post ( '/basic' , validator ( schema . signup ) ,
18
19
asyncHandler ( async ( req : RoleRequest , res , next ) => {
19
20
const user = await UserRepo . findByEmail ( req . body . email ) ;
20
- if ( ! user ) throw new BadRequestError ( 'User already registered' ) ;
21
+ if ( user ) throw new BadRequestError ( 'User already registered' ) ;
21
22
22
23
const accessTokenKey = crypto . randomBytes ( 64 ) . toString ( 'hex' ) ;
23
24
const refreshTokenKey = crypto . randomBytes ( 64 ) . toString ( 'hex' ) ;
@@ -26,14 +27,15 @@ router.post('/basic', validator(schema.signup),
26
27
const { user : createdUser , keystore } = await UserRepo . create ( < IUser > {
27
28
name : req . body . name ,
28
29
email : req . body . email ,
30
+ profilePicUrl : req . body . profilePicUrl ,
29
31
password : passwordHash ,
30
- } , accessTokenKey , refreshTokenKey , req . currentRoleCode ) ;
32
+ } , accessTokenKey , refreshTokenKey , RoleCode . LEARNER ) ;
31
33
32
34
const tokens = await createTokens ( createdUser , keystore . primaryKey , keystore . secondaryKey ) ;
33
35
new SuccessResponse ( 'Signup Successful' , {
34
- user : _ . pick ( user , [ 'name' , 'email' , 'roles' ] ) ,
36
+ user : _ . pick ( createdUser , [ 'name' , 'email' , 'roles' , 'profilePicUrl '] ) ,
35
37
tokens : tokens ,
36
- } ) ;
38
+ } ) . send ( res ) ;
37
39
} ) ) ;
38
40
39
41
module . exports = router ;
0 commit comments