Changing how flags are handled.

This commit is contained in:
mike12345567 2021-07-22 16:36:21 +01:00
parent b21fe320c5
commit 1d6a350311
8 changed files with 27 additions and 16 deletions

View File

@ -38,9 +38,9 @@ export function createAdminStore() {
async function multiTenancyEnabled() { async function multiTenancyEnabled() {
let enabled = false let enabled = false
try { try {
const response = await api.get(`/api/global/tenants/enabled`) const response = await api.get(`/api/global/flags`)
const json = await response.json() const json = await response.json()
enabled = json.enabled enabled = json.multiTenancy
} catch (err) { } catch (err) {
// just let it stay disabled // just let it stay disabled
} }

View File

@ -10,6 +10,7 @@ CREATE TABLE Persons (
CREATE TABLE Tasks ( CREATE TABLE Tasks (
TaskID SERIAL PRIMARY KEY, TaskID SERIAL PRIMARY KEY,
PersonID INT, PersonID INT,
Completed BOOLEAN,
TaskName varchar(255), TaskName varchar(255),
CONSTRAINT fkPersons CONSTRAINT fkPersons
FOREIGN KEY(PersonID) FOREIGN KEY(PersonID)
@ -31,8 +32,8 @@ CREATE TABLE Products_Tasks (
PRIMARY KEY (ProductID, TaskID) PRIMARY KEY (ProductID, TaskID)
); );
INSERT INTO Persons (FirstName, LastName, Address, City) VALUES ('Mike', 'Hughes', '123 Fake Street', 'Belfast'); INSERT INTO Persons (FirstName, LastName, Address, City) VALUES ('Mike', 'Hughes', '123 Fake Street', 'Belfast');
INSERT INTO Tasks (PersonID, TaskName) VALUES (1, 'assembling'); INSERT INTO Tasks (PersonID, TaskName, Completed) VALUES (1, 'assembling', TRUE);
INSERT INTO Tasks (PersonID, TaskName) VALUES (1, 'processing'); INSERT INTO Tasks (PersonID, TaskName, Completed) VALUES (1, 'processing', FALSE);
INSERT INTO Products (ProductName) VALUES ('Computers'); INSERT INTO Products (ProductName) VALUES ('Computers');
INSERT INTO Products (ProductName) VALUES ('Laptops'); INSERT INTO Products (ProductName) VALUES ('Laptops');
INSERT INTO Products (ProductName) VALUES ('Chairs'); INSERT INTO Products (ProductName) VALUES ('Chairs');

View File

@ -0,0 +1,7 @@
const env = require("../../../environment")
exports.fetch = async ctx => {
ctx.body = {
multiTenancy: !!env.MULTI_TENANCY,
}
}

View File

@ -1,13 +1,6 @@
const env = require("../../../environment")
const CouchDB = require("../../../db") const CouchDB = require("../../../db")
const { StaticDatabases } = require("@budibase/auth/db") const { StaticDatabases } = require("@budibase/auth/db")
exports.multiTenancyEnabled = async ctx => {
ctx.body = {
enabled: false,
}
}
exports.exists = async ctx => { exports.exists = async ctx => {
const tenantId = ctx.request.params const tenantId = ctx.request.params
const db = new CouchDB(StaticDatabases.PLATFORM_INFO.name) const db = new CouchDB(StaticDatabases.PLATFORM_INFO.name)

View File

@ -21,7 +21,7 @@ const PUBLIC_ENDPOINTS = [
method: "GET", method: "GET",
}, },
{ {
route: "api/global/tenants/enabled", route: "api/global/flags",
method: "GET", method: "GET",
}, },
{ {

View File

@ -0,0 +1,9 @@
const Router = require("@koa/router")
const controller = require("../../controllers/global/flags")
const router = Router()
router
.get("/api/global/flags", controller.fetch)
module.exports = router

View File

@ -5,7 +5,6 @@ const adminOnly = require("../../../middleware/adminOnly")
const router = Router() const router = Router()
router router
.get("/api/global/tenants/enabled", controller.multiTenancyEnabled)
.get("/api/global/tenants/:tenantId/exists", controller.exists) .get("/api/global/tenants/:tenantId/exists", controller.exists)
.get("/api/global/tenants", adminOnly, controller.fetch) .get("/api/global/tenants", adminOnly, controller.fetch)

View File

@ -7,6 +7,7 @@ const emailRoutes = require("./global/email")
const authRoutes = require("./global/auth") const authRoutes = require("./global/auth")
const roleRoutes = require("./global/roles") const roleRoutes = require("./global/roles")
const sessionRoutes = require("./global/sessions") const sessionRoutes = require("./global/sessions")
const flagRoutes = require("./global/flags")
const appRoutes = require("./app") const appRoutes = require("./app")
exports.routes = [ exports.routes = [
@ -20,4 +21,5 @@ exports.routes = [
emailRoutes, emailRoutes,
sessionRoutes, sessionRoutes,
roleRoutes, roleRoutes,
flagRoutes,
] ]