parent
66d6023335
commit
d7099717c2
|
@ -1,5 +1,5 @@
|
|||
import * as jwt from "jsonwebtoken";
|
||||
import { Body, Get, JsonController, OnUndefined, Param, Post } from 'routing-controllers';
|
||||
import { Body, Get, JsonController, OnUndefined, Param, Post, QueryParam } from 'routing-controllers';
|
||||
import { OpenAPI, ResponseSchema } from 'routing-controllers-openapi';
|
||||
import { getConnectionManager, Repository } from 'typeorm';
|
||||
import { config } from '../config';
|
||||
|
@ -12,6 +12,7 @@ import { CreateSelfServiceRunner } from '../models/actions/create/CreateSelfServ
|
|||
import { Runner } from '../models/entities/Runner';
|
||||
import { RunnerGroup } from '../models/entities/RunnerGroup';
|
||||
import { RunnerOrganization } from '../models/entities/RunnerOrganization';
|
||||
import { ResponseEmpty } from '../models/responses/ResponseEmpty';
|
||||
import { ResponseSelfServiceOrganisation } from '../models/responses/ResponseSelfServiceOrganisation';
|
||||
import { ResponseSelfServiceRunner } from '../models/responses/ResponseSelfServiceRunner';
|
||||
import { ResponseSelfServiceScan } from '../models/responses/ResponseSelfServiceScan';
|
||||
|
@ -53,6 +54,23 @@ export class RunnerSelfServiceController {
|
|||
return responseScans;
|
||||
}
|
||||
|
||||
@Post('/runners/me/forgot')
|
||||
@ResponseSchema(ResponseSelfServiceRunner, { isArray: true })
|
||||
@ResponseSchema(RunnerNotFoundError, { statusCode: 404 })
|
||||
@OnUndefined(ResponseEmpty)
|
||||
@OpenAPI({ description: 'TODO' })
|
||||
async requestNewToken(@QueryParam('mail') mail: string) {
|
||||
const runner = await this.runnerRepository.findOne({ email: mail });
|
||||
if (runner.resetRequestedTimestamp > (Math.floor(Date.now() / 1000) - 15 * 60)) { throw new Error("timeout!") }
|
||||
const token = JwtCreator.createSelfService(runner);
|
||||
try {
|
||||
//await Mailer.sendForgottenMail();
|
||||
} catch (error) {
|
||||
throw new Error("Mail fucked up");
|
||||
}
|
||||
return { token };
|
||||
}
|
||||
|
||||
@Post('/runners/register')
|
||||
@ResponseSchema(ResponseSelfServiceRunner)
|
||||
@ResponseSchema(RunnerEmailNeededError, { statusCode: 406 })
|
||||
|
|
Loading…
Reference in New Issue