Initial changes to support forms & form builder
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing

This commit is contained in:
2020-11-16 22:49:19 -06:00
parent 7bde7576d5
commit 48fe2c7757
6 changed files with 43 additions and 8 deletions

View File

@@ -1,4 +1,5 @@
const Controller = require('libflitter/controller/Controller')
const { PageType } = require('../../../enum')
/*
* Menu Controller
@@ -26,7 +27,7 @@ class Menu extends Controller {
noDelete: true,
noChildren: true,
virtual: true,
type: 'branch',
type: PageType.Branch,
})
// Get view only shared trees
@@ -39,7 +40,7 @@ class Menu extends Controller {
name: tree.Name,
children: await this._build_secure_menu_object(tree, req.user),
level: await tree.access_level_for(req.user),
type: 'page',
type: tree.PageType || PageType.Note,
})
}
@@ -53,7 +54,7 @@ class Menu extends Controller {
name: tree.Name,
children: await this._build_secure_menu_object(tree, req.user),
level: await tree.access_level_for(req.user),
type: 'page',
type: tree.PageType || PageType.Note,
})
}
@@ -67,7 +68,7 @@ class Menu extends Controller {
name: tree.Name,
children: await this._build_secure_menu_object(tree, req.user),
level: await tree.access_level_for(req.user),
type: 'page',
type: tree.PageType || PageType.Note,
})
}
@@ -78,7 +79,7 @@ class Menu extends Controller {
noDelete: true,
noChildren: true,
virtual: true,
type: 'branch',
type: PageType.Branch,
})
return res.api(menu)
@@ -93,7 +94,7 @@ class Menu extends Controller {
name: child.is_shared() ? child.Name + ' ⁽ˢʰᵃʳᵉᵈ⁾' : child.Name,
shared: child.is_shared(),
children: [...(await child.get_menu_items(page_only)), ...(await this._build_menu_object(child, [], page_only))],
type: 'page',
type: child.PageType || PageType.Note,
})
}
}
@@ -111,7 +112,7 @@ class Menu extends Controller {
name: child.Name,
children: await this._build_secure_menu_object(child, user),
level: await child.access_level_for(user),
type: 'page',
type: child.PageType || PageType.Note,
})
}
}

View File

@@ -1,6 +1,7 @@
const Controller = require('libflitter/controller/Controller')
const PageModel = require('../../../models/api/Page.model')
const Node = require('../../../models/api/Node.model')
const { PageType } = require('../../../enum')
/*
* Page Controller
@@ -267,13 +268,21 @@ class Page extends Controller {
}
const root_page = await req.user.get_root_page()
const page_type = req.body.pageType || PageType.Note
if ( !PageType._isValid(page_type) ) {
return res.status(400)
.message('Invalid PageType.')
.api()
}
const new_page = new PageModel({
Name: req.body.name,
OrgUserId: req.user._id,
ParentId: root_page.UUID,
CreatedUserId: req.user.id,
UpdateUserId: req.user.id
UpdateUserId: req.user.id,
PageType: page_type,
})
if ( req.body.UUID ) {
@@ -327,12 +336,21 @@ class Page extends Controller {
return res.security.deny()
}
const page_type = req.body.pageType || PageType.Note
if ( !PageType._isValid(page_type) ) {
return res.status(400)
.message('Invalid PageType.')
.api()
}
const new_page = new PageModel({
Name: req.body.name,
OrgUserId: req.user._id,
ParentId: parent.UUID,
CreatedUserId: req.user.id,
UpdateUserId: req.user.id,
PageType: page_type,
})
if ( req.body.UUID ) {