Remove settings locked field
this was a too generic and will be replaced with feature flags
This commit is contained in:
+1
-17
@@ -4,9 +4,7 @@ exports = module.exports = {
|
||||
set: set,
|
||||
get: get,
|
||||
|
||||
getCloudronAvatar: getCloudronAvatar,
|
||||
|
||||
verifySettingsLock: verifySettingsLock
|
||||
getCloudronAvatar: getCloudronAvatar
|
||||
};
|
||||
|
||||
var assert = require('assert'),
|
||||
@@ -19,20 +17,6 @@ var assert = require('assert'),
|
||||
settings = require('../settings.js'),
|
||||
SettingsError = settings.SettingsError;
|
||||
|
||||
function verifySettingsLock(req, res, next) {
|
||||
assert.strictEqual(typeof req.params.setting, 'string');
|
||||
|
||||
settings.get(req.params.setting, function (error, result) {
|
||||
// not locked. let actual route return not found. this is useful for entries stored outside the database like cloudron_avatar
|
||||
if (error && error.reason === SettingsError.NOT_FOUND) return next();
|
||||
if (error) return next(new HttpError(500, error));
|
||||
|
||||
if (result.locked) return next(new HttpError(423, 'This setting is locked'));
|
||||
|
||||
next();
|
||||
});
|
||||
}
|
||||
|
||||
function getAppAutoupdatePattern(req, res, next) {
|
||||
settings.getAppAutoupdatePattern(function (error, pattern) {
|
||||
if (error) return next(new HttpError(500, error));
|
||||
|
||||
+2
-3
@@ -104,7 +104,6 @@ function initializeExpressSync() {
|
||||
var domainsManageScope = routes.accesscontrol.scope(accesscontrol.SCOPE_DOMAINS_MANAGE);
|
||||
|
||||
const verifyDomainLock = routes.domains.verifyDomainLock;
|
||||
const verifySettingsLock = routes.settings.verifySettingsLock;
|
||||
|
||||
// csrf protection
|
||||
var csrf = routes.oauth2.csrf();
|
||||
@@ -244,8 +243,8 @@ function initializeExpressSync() {
|
||||
router.post('/api/v1/apps/:id/owner', appsManageScope, routes.apps.setOwner);
|
||||
|
||||
// settings routes (these are for the settings tab - avatar & name have public routes for normal users. see above)
|
||||
router.get ('/api/v1/settings/:setting', settingsScope, verifySettingsLock, routes.settings.get);
|
||||
router.post('/api/v1/settings/:setting', settingsScope, verifySettingsLock, (req, res, next) => {
|
||||
router.get ('/api/v1/settings/:setting', settingsScope, routes.settings.get);
|
||||
router.post('/api/v1/settings/:setting', settingsScope, (req, res, next) => {
|
||||
return req.params.setting === 'cloudron_avatar' ? multipart(req, res, next) : next();
|
||||
}, routes.settings.set);
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ var assert = require('assert'),
|
||||
database = require('./database.js'),
|
||||
DatabaseError = require('./databaseerror');
|
||||
|
||||
const SETTINGS_FIELDS = [ 'name', 'value', 'locked' ].join(',');
|
||||
const SETTINGS_FIELDS = [ 'name', 'value' ].join(',');
|
||||
|
||||
function get(key, callback) {
|
||||
assert.strictEqual(typeof key, 'string');
|
||||
|
||||
Reference in New Issue
Block a user