48 lines
1.1 KiB
JavaScript
Raw Normal View History

2016-08-26 14:07:57 +02:00
'use strict';
2016-08-31 12:24:16 +02:00
const path = require('path');
2016-09-25 18:52:15 +02:00
const _ = require('lodash');
2016-09-26 17:28:40 +02:00
const fs = require('fs');
2016-08-31 12:24:16 +02:00
2016-08-26 14:07:57 +02:00
/**
* A set of functions called "actions" for `SettingsManager`
*/
module.exports = {
getGeneralSettings: async (ctx) => {
2016-09-25 18:52:15 +02:00
// Pick values from `strapi.config`
const settings = _.pick(strapi.config, [
'name',
'version',
2016-11-22 12:05:37 +01:00
'description'
2016-09-25 18:52:15 +02:00
]);
ctx.body = settings;
2016-08-31 12:24:16 +02:00
},
updateSettings: async (ctx) => {
const data = ctx.request.body;
2016-10-04 16:31:52 +02:00
try {
const settingsUpdated = await strapi.plugins['settings-manager'].services.settingsservice.configurationsManager(strapi, data);
ctx.body = settingsUpdated.values;
2016-10-04 16:31:52 +02:00
} catch (err) {
console.log('err', err);
ctx.status = err && err.status || 400;
return ctx.body = {
2016-10-04 16:31:52 +02:00
message: err.msg || 'An error occurred during settings update'
};
2016-11-22 12:05:37 +01:00
}
2016-09-26 17:28:40 +02:00
},
file: async (ctx) => {
try {
const file = fs.readFileSync(path.resolve(__dirname, '..', 'public', 'build', ctx.params.file));
ctx.body = file;
} catch (err) {
ctx.body = ctx.notFound();
}
2016-08-26 14:07:57 +02:00
}
};