parent
66d6023335
commit
d7099717c2
@ -1,5 +1,5 @@
|
|||||||
import * as jwt from "jsonwebtoken";
|
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 { OpenAPI, ResponseSchema } from 'routing-controllers-openapi';
|
||||||
import { getConnectionManager, Repository } from 'typeorm';
|
import { getConnectionManager, Repository } from 'typeorm';
|
||||||
import { config } from '../config';
|
import { config } from '../config';
|
||||||
@ -12,6 +12,7 @@ import { CreateSelfServiceRunner } from '../models/actions/create/CreateSelfServ
|
|||||||
import { Runner } from '../models/entities/Runner';
|
import { Runner } from '../models/entities/Runner';
|
||||||
import { RunnerGroup } from '../models/entities/RunnerGroup';
|
import { RunnerGroup } from '../models/entities/RunnerGroup';
|
||||||
import { RunnerOrganization } from '../models/entities/RunnerOrganization';
|
import { RunnerOrganization } from '../models/entities/RunnerOrganization';
|
||||||
|
import { ResponseEmpty } from '../models/responses/ResponseEmpty';
|
||||||
import { ResponseSelfServiceOrganisation } from '../models/responses/ResponseSelfServiceOrganisation';
|
import { ResponseSelfServiceOrganisation } from '../models/responses/ResponseSelfServiceOrganisation';
|
||||||
import { ResponseSelfServiceRunner } from '../models/responses/ResponseSelfServiceRunner';
|
import { ResponseSelfServiceRunner } from '../models/responses/ResponseSelfServiceRunner';
|
||||||
import { ResponseSelfServiceScan } from '../models/responses/ResponseSelfServiceScan';
|
import { ResponseSelfServiceScan } from '../models/responses/ResponseSelfServiceScan';
|
||||||
@ -53,6 +54,23 @@ export class RunnerSelfServiceController {
|
|||||||
return responseScans;
|
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')
|
@Post('/runners/register')
|
||||||
@ResponseSchema(ResponseSelfServiceRunner)
|
@ResponseSchema(ResponseSelfServiceRunner)
|
||||||
@ResponseSchema(RunnerEmailNeededError, { statusCode: 406 })
|
@ResponseSchema(RunnerEmailNeededError, { statusCode: 406 })
|
||||||
|
Loading…
x
Reference in New Issue
Block a user