diff options
Diffstat (limited to 'src/server/api/endpoints/pages/create.ts')
| -rw-r--r-- | src/server/api/endpoints/pages/create.ts | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/server/api/endpoints/pages/create.ts b/src/server/api/endpoints/pages/create.ts index a49a5d37b8..f18c82ffde 100644 --- a/src/server/api/endpoints/pages/create.ts +++ b/src/server/api/endpoints/pages/create.ts @@ -76,6 +76,11 @@ export const meta = { code: 'NO_SUCH_FILE', id: 'b7b97489-0f66-4b12-a5ff-b21bd63f6e1c' }, + nameAlreadyExists: { + message: 'Specified name already exists.', + code: 'NAME_ALREADY_EXISTS', + id: '4650348e-301c-499a-83c9-6aa988c66bc1' + } } }; @@ -92,6 +97,15 @@ export default define(meta, async (ps, user) => { } } + await Pages.find({ + userId: user.id, + name: ps.name + }).then(result => { + if (result.length > 0) { + throw new ApiError(meta.errors.nameAlreadyExists); + } + }); + const page = await Pages.save(new Page({ id: genId(), createdAt: new Date(), |