summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
authorRafael Marçalo <raroma09@gmail.com>2022-10-29 14:51:03 +0100
committerRafael Marçalo <raroma09@gmail.com>2022-10-29 14:51:03 +0100
commit5d6081e34777c8b99a3e9f2ed42a6de0732a4ff3 (patch)
tree2c64156dff1a1c3f2062d0a0ef156190b831a5fd /server
parent48591e37a58d5349214e0bfee9f76e201d45e7bf (diff)
Added config file handling functionality
Diffstat (limited to 'server')
-rw-r--r--server/js/config.js32
-rw-r--r--server/js/paths.js2
2 files changed, 20 insertions, 14 deletions
diff --git a/server/js/config.js b/server/js/config.js
index 077f928..b1e6836 100644
--- a/server/js/config.js
+++ b/server/js/config.js
@@ -1,28 +1,34 @@
"use strict";
+// Imports
const fs = require('fs');
+const path = require('path');
+const { ensureFolder, envPaths } = require('./paths');
-const defaultConfig = {
- 'settings': {
- 'nsfw_content': false
- }
-};
-var config = {};
+// Handling Variables
+const configFolder = ensureFolder(path.join(envPaths.CONFIG, 'sneedbay'));
+const defaultConfigPath = path.join(configFolder, 'config.json');
+var loadedConfig = {};
-function createConfig(configPath, data)
+function createConfig()
{
- fs.writeFileSync(configPath, JSON.stringify(data), 'utf-8');
+ const defaultConfig = {
+ 'settings': {
+ 'nsfw_content': false
+ }
+ };
+
+ fs.writeFileSync(configPath, JSON.stringify(defaultConfig), 'utf-8');
}
function loadConfig(configPath)
{
- if ( !fs.existsSync(configPath) )
+ if (!fs.existsSync(configPath))
{
createConfig(configPath, defaultConfig);
}
-
- return JSON.parse(fs.readFileSync(configPath));
-}
+ this.loadedConfig = JSON.parse(fs.readFileSync(configPath));
+}
-module.exports = {loadConfig, config}; \ No newline at end of file
+module.exports = { loadConfig, defaultConfigPath, loadedConfig }; \ No newline at end of file
diff --git a/server/js/paths.js b/server/js/paths.js
index ee10807..3bf6824 100644
--- a/server/js/paths.js
+++ b/server/js/paths.js
@@ -28,7 +28,7 @@ const envPaths = {
HOME: os.homedir(),
DATA: process.env.APPDATA || ensureFolder(path.join(os.homedir(), 'AppData', 'Roaming')),
CONFIG: process.env.APPDATA || ensureFolder(path.join(os.homedir(), 'AppData', 'Roaming')),
- CACHE: process.env.TEMP || process.env.TMP || ensureFolder(path.join(process.env.LOCALAPPDATA, 'Temp'))
+ CACHE: process.env.TEMP || process.env.TMP || path.join(process.env.LOCALAPPDATA, 'Temp') || ensureFolder(path.join(os.homedir(), 'AppData', 'Local', 'Temp'))
}
}