diff --git a/nuxt.config.js b/nuxt.config.js
index c3b992c..8e2d953 100644
--- a/nuxt.config.js
+++ b/nuxt.config.js
@@ -60,13 +60,7 @@ export default {
linkExactActiveClass: 'is-active'
},
env: {
- development: process.env.NODE_ENV !== 'production',
- version: process.env.npm_package_version,
- serviceName: Util.config.serviceName,
- maxFileSize: Util.config.maxSize,
- chunkSize: Util.config.chunkSize,
- publicMode: Util.config.publicMode,
- userAccounts: Util.config.userAccounts
+ development: process.env.NODE_ENV !== 'production'
},
axios: {
baseURL: `${process.env.NODE_ENV === 'production' ? '' : 'http://localhost:5000'}/api`
diff --git a/src/api/routes/service/configGET.js b/src/api/routes/service/configGET.js
index b0a9c16..c8d88d3 100644
--- a/src/api/routes/service/configGET.js
+++ b/src/api/routes/service/configGET.js
@@ -3,20 +3,21 @@ const Util = require('../../utils/Util');
class configGET extends Route {
constructor() {
- super('/service/config', 'get', { adminOnly: true });
+ super('/service/config', 'get', { bypassAuth: true });
}
run(req, res) {
return res.json({
message: 'Successfully retrieved config',
config: {
+ version: process.env.npm_package_version,
serviceName: Util.config.serviceName,
maxUploadSize: Util.config.maxSize,
filenameLength: Util.config.generatedFilenameLength,
albumLinkLength: Util.config.generatedAlbumLength,
- generateZips: Util.config.generateZips,
+ chunkSize: Util.config.chunkSize,
publicMode: Util.config.publicMode,
- enableAccounts: Util.config.userAccounts
+ userAccounts: Util.config.userAccounts
}
});
}
diff --git a/src/site/components/footer/Footer.vue b/src/site/components/footer/Footer.vue
index 0c77603..0e3cceb 100644
--- a/src/site/components/footer/Footer.vue
+++ b/src/site/components/footer/Footer.vue
@@ -9,7 +9,7 @@
href="https://github.com/pitu"
class="no-block">Pitu
- v{{ version }}
+ {{ version }}
GitHub
diff --git a/src/site/components/uploader/Uploader.vue b/src/site/components/uploader/Uploader.vue
index abe2128..f2d213a 100644
--- a/src/site/components/uploader/Uploader.vue
+++ b/src/site/components/uploader/Uploader.vue
@@ -124,7 +124,7 @@ export default {
parallelChunkUploads: false,
chunkSize: this.config.chunkSize * 1000000,
chunksUploaded: this.dropzoneChunksUploaded,
- maxFilesize: this.config.maxFileSize,
+ maxFilesize: this.config.maxUploadSize,
previewTemplate: this.$refs.template.innerHTML,
dictDefaultMessage: 'Drag & Drop your files or click to browse',
headers: { Accept: 'application/vnd.chibisafe.json' }
diff --git a/src/site/store/config.js b/src/site/store/config.js
index 623e324..3f5d752 100644
--- a/src/site/store/config.js
+++ b/src/site/store/config.js
@@ -1,11 +1,33 @@
export const state = () => ({
development: process.env.development,
- version: process.env.version,
+ version: '',
URL: process.env.development ? 'http://localhost:5000' : '/',
baseURL: `${process.env.development ? 'http://localhost:5000' : ''}/api`,
- serviceName: process.env.serviceName,
- maxFileSize: process.env.maxFilesize,
- chunkSize: process.env.chunkSize,
- publicMode: process.env.publicMode,
- userAccounts: process.env.userAccounts
+ serviceName: '',
+ maxFileSize: '',
+ chunkSize: 0,
+ publicMode: false,
+ userAccounts: false
});
+
+export const mutations = {
+ setSettings(state, { config }) {
+ state.version = `v${config.version}`;
+ state.serviceName = config.serviceName;
+ state.maxUploadSize = config.maxUploadSize;
+ state.filenameLength = config.filenameLength;
+ state.albumLinkLength = config.albumLinkLength;
+ state.chunkSize = config.chunkSize;
+ state.publicMode = config.publicMode;
+ state.userAccounts = config.userAccounts;
+ }
+};
+
+export const actions = {
+ async fetchSettings({ commit }) {
+ const response = await this.$axios.$get('service/config');
+ commit('setSettings', response);
+
+ return response;
+ }
+};
diff --git a/src/site/store/index.js b/src/site/store/index.js
index b94a336..680ae84 100644
--- a/src/site/store/index.js
+++ b/src/site/store/index.js
@@ -1,8 +1,6 @@
-import config from '../../../dist/config.json';
-
export const actions = {
async nuxtServerInit({ commit, dispatch }) {
- commit('config/set', config);
+ await dispatch('config/fetchSettings');
const cookies = this.$cookies.getAll();
if (!cookies.token) return dispatch('auth/logout');