introduce a function to receive user data

This commit is contained in:
Sven Czarnian
2022-11-03 02:00:18 +01:00
parent 808fe0a18e
commit dfeaaf3e0a

View File

@@ -6,7 +6,7 @@ import { InjectModel } from '@nestjs/mongoose';
import { Model } from 'mongoose'; import { Model } from 'mongoose';
import { catchError, lastValueFrom, map } from 'rxjs'; import { catchError, lastValueFrom, map } from 'rxjs';
import { UserDocument } from './models/user.model'; import { User, UserDocument } from './models/user.model';
@Injectable() @Injectable()
export class AuthService { export class AuthService {
@@ -66,7 +66,7 @@ export class AuthService {
); );
if (userdata.oauth.token_valid) { if (userdata.oauth.token_valid) {
let fullName = 'Private'; let fullName = '';
if (userdata.personal !== undefined) { if (userdata.personal !== undefined) {
fullName = userdata.personal.name_full; fullName = userdata.personal.name_full;
} }
@@ -97,4 +97,17 @@ export class AuthService {
return undefined; return undefined;
} }
async user(token: string): Promise<User> {
const payload = this.jwtService.verify(token, {
secret: this.config.get<string>('server.jwt-secret'),
});
return this.userModel
.findOne({ vatsimId: payload.vatsimId })
.then((user) => {
if (!user) return undefined;
return user;
});
}
} }