import {HttpMethod, Route, StatusCodes} from 'org.crazydoctor.expressts'; import {Request, Response} from 'express'; import ServerApp from '..'; import { ISession } from '../session/ISession'; import { Sources } from '../sources/Sources'; class GetStatistics extends Route { protected action = (req: Request, res: Response): any => { const session = req.session as ISession; if(!session.isEditor) { session.returnTo = '/statistics'; res.redirect('/login'); return; } if(ServerApp.SourcesUpdating) { res.status(StatusCodes.ACCEPTED).send('Sources are being updated'); return; } res.status(StatusCodes.OK).render('statistics', { isAdmin: session.isAdmin || false, isEditor: session.isEditor || false, Login: session.login || null, template: 'statistics', StatisticsUser: null, title: 'Doczilla JS Docs - Statistics', ClassList: Sources.get(), RepoNames: Sources.getRepoNames() }); }; protected method = HttpMethod.GET; protected order = 11; protected route = '/statistics'; } export default GetStatistics;