1
0
mirror of https://github.com/xuthus83/pigallery2.git synced 2024-11-03 21:04:03 +08:00
pigallery2/backend/routes/AdminRouter.ts
2017-07-27 23:10:16 +02:00

110 lines
3.1 KiB
TypeScript

import {AuthenticationMWs} from "../middlewares/user/AuthenticationMWs";
import {UserRoles} from "../../common/entities/UserDTO";
import {RenderingMWs} from "../middlewares/RenderingMWs";
import {AdminMWs} from "../middlewares/AdminMWs";
export class AdminRouter {
public static route(app: any) {
this.addIndexGallery(app);
this.addSettings(app);
}
private static addIndexGallery(app) {
app.get("/api/admin/indexes/job/progress",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.getIndexingProgress,
RenderingMWs.renderResult
);
app.put("/api/admin/indexes/job",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.startIndexing,
RenderingMWs.renderResult
);
app.delete("/api/admin/indexes/job",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.cancelIndexing,
RenderingMWs.renderResult
);
app.delete("/api/admin/indexes",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.resetIndexes,
RenderingMWs.renderResult
);
};
private static addSettings(app) {
app.get("/api/settings",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
RenderingMWs.renderConfig
);
app.put("/api/settings/database",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateDatabaseSettings,
RenderingMWs.renderOK
);
app.put("/api/settings/map",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateMapSettings,
RenderingMWs.renderOK
);
app.put("/api/settings/authentication",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateAuthenticationSettings,
RenderingMWs.renderOK
);
app.put("/api/settings/thumbnail",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateThumbnailSettings,
RenderingMWs.renderOK
);
app.put("/api/settings/search",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateSearchSettings,
RenderingMWs.renderOK
);
app.put("/api/settings/share",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateShareSettings,
RenderingMWs.renderOK
);
app.put("/api/settings/basic",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateBasicSettings,
RenderingMWs.renderOK
);
app.put("/api/settings/other",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateOtherSettings,
RenderingMWs.renderOK
);
app.put("/api/settings/indexing",
AuthenticationMWs.authenticate,
AuthenticationMWs.authorise(UserRoles.Admin),
AdminMWs.updateIndexingSettings,
RenderingMWs.renderOK
);
};
}