fix: permission issues

fix: white labaled version
This commit is contained in:
Andras Bacsai
2022-07-08 13:38:19 +02:00
parent c63237684a
commit 222adb212b
10 changed files with 85 additions and 46 deletions

View File

@@ -68,7 +68,8 @@ const schema = {
};
const options = {
schema
schema,
dotenv: true
};
fastify.register(env, options);
if (!isDev) {
@@ -76,7 +77,7 @@ if (!isDev) {
root: path.join(__dirname, './public'),
preCompressed: true
});
fastify.setNotFoundHandler(function (request, reply) {
fastify.setNotFoundHandler({}, function (request, reply) {
if (request.raw.url && request.raw.url.startsWith('/api')) {
return reply.status(404).send({
success: false

View File

@@ -15,6 +15,9 @@ import { checkContainer, getEngine, removeContainer } from './docker';
import { day } from './dayjs';
import * as serviceFields from './serviceFields'
export const version = '3.0.4';
export const isDev = process.env.NODE_ENV === 'development';
const algorithm = 'aes-256-ctr';
const customConfig: Config = {
dictionaries: [adjectives, colors, animals],
@@ -22,8 +25,6 @@ const customConfig: Config = {
separator: ' ',
length: 3
};
export const isDev = process.env.NODE_ENV === 'development';
export const version = '3.0.3';
export const defaultProxyImage = `coolify-haproxy-alpine:latest`;
export const defaultProxyImageTcp = `coolify-haproxy-tcp-alpine:latest`;

View File

@@ -0,0 +1,19 @@
import { FastifyPluginAsync } from 'fastify';
import { errorHandler, version } from '../../../../lib/common';
const root: FastifyPluginAsync = async (fastify, opts): Promise<void> => {
fastify.get('/', async (request) => {
try {
return {
version,
whiteLabeled: process.env.COOLIFY_WHITE_LABELED === 'true',
whiteLabeledIcon: process.env.COOLIFY_WHITE_LABELED_ICON,
}
} catch ({ status, message }) {
return errorHandler({ status, message })
}
});
};
export default root;

View File

@@ -258,11 +258,12 @@ export async function getCurrentUser(request: FastifyRequest, fastify) {
include: { teams: true, permission: true }
})
if (user) {
const permission = user.permission.find(p => p.teamId === request.query.teamId).permission
const payload = {
...request.user,
teamId: request.query.teamId,
permission: user.permission.find(p => p.teamId === request.query.teamId).permission || null,
isAdmin: user.permission.find(p => p.teamId === request.query.teamId).permission === 'owner'
permission: permission || null,
isAdmin: permission === 'owner' || permission === 'admin'
}
token = fastify.jwt.sign(payload)