Expanded edit fields. Added revision history to scene and user pages.
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
import Router from 'express-promise-router';
|
||||
import { stringify } from '@brillout/json-serializer/stringify'; /* eslint-disable-line import/extensions */
|
||||
|
||||
import {
|
||||
fetchScenes,
|
||||
fetchScenesById,
|
||||
fetchSceneRevisions,
|
||||
createSceneRevision,
|
||||
reviewSceneRevision,
|
||||
} from '../scenes.js';
|
||||
|
||||
import { parseActorIdentifier } from '../query.js';
|
||||
@@ -48,7 +51,7 @@ export async function curateScenesQuery(query) {
|
||||
};
|
||||
}
|
||||
|
||||
export async function fetchScenesApi(req, res) {
|
||||
async function fetchScenesApi(req, res) {
|
||||
const {
|
||||
scenes,
|
||||
aggYears,
|
||||
@@ -203,11 +206,9 @@ export async function fetchScenesGraphql(query, req) {
|
||||
};
|
||||
}
|
||||
|
||||
export async function fetchSceneApi(req, res) {
|
||||
async function fetchSceneApi(req, res) {
|
||||
const [scene] = await fetchScenesById([Number(req.params.sceneId)], { reqUser: req.user });
|
||||
|
||||
console.log(req.params.sceneId, scene);
|
||||
|
||||
if (!scene) {
|
||||
throw new HttpError(`No scene with ID ${req.params.sceneId} found`, 404);
|
||||
}
|
||||
@@ -228,8 +229,30 @@ export async function fetchScenesByIdGraphql(query, req) {
|
||||
return scenes[0];
|
||||
}
|
||||
|
||||
export async function createSceneRevisionApi(req, res) {
|
||||
await createSceneRevision(Number(req.params.sceneId), req.body, req.user);
|
||||
async function fetchSceneRevisionsApi(req, res) {
|
||||
const revisions = await fetchSceneRevisions(Number(req.params.revisionId) || null, req.query, req.user);
|
||||
|
||||
res.send(revisions);
|
||||
}
|
||||
|
||||
async function createSceneRevisionApi(req, res) {
|
||||
await createSceneRevision(Number(req.body.sceneId), req.body, req.user);
|
||||
|
||||
res.status(204).send();
|
||||
}
|
||||
|
||||
async function reviewSceneRevisionApi(req, res) {
|
||||
await reviewSceneRevision(Number(req.params.revisionId), req.body.isApproved, req.body, req.user);
|
||||
|
||||
res.status(204).send();
|
||||
}
|
||||
|
||||
export const scenesRouter = Router();
|
||||
|
||||
scenesRouter.get('/api/scenes', fetchScenesApi);
|
||||
scenesRouter.get('/api/scenes/:sceneId', fetchSceneApi);
|
||||
|
||||
scenesRouter.get('/api/revisions', fetchSceneRevisionsApi);
|
||||
scenesRouter.get('/api/revisions/:revisionId', fetchSceneRevisionsApi);
|
||||
scenesRouter.post('/api/revisions', createSceneRevisionApi);
|
||||
scenesRouter.post('/api/revisions/:revisionId/reviews', reviewSceneRevisionApi);
|
||||
|
||||
Reference in New Issue
Block a user