Enviroment variables parsing fix
This commit is contained in:
parent
e8f70f5170
commit
73d85e8c79
|
@ -14,7 +14,9 @@ export default {
|
|||
serviceName: process.env.SERVICE_NAME,
|
||||
maxFileSize: process.env.MAX_SIZE,
|
||||
chunkSize: process.env.CHUNK_SIZE,
|
||||
maxLinksPerAlbum: process.env.MAX_LINKS_PER_ALBUM
|
||||
maxLinksPerAlbum: process.env.MAX_LINKS_PER_ALBUM,
|
||||
publicMode: process.env.PUBLIC_MODE,
|
||||
userAccounts: process.env.USER_ACCOUNTS
|
||||
},
|
||||
srcDir: 'src/site/',
|
||||
head: {
|
||||
|
|
|
@ -22,7 +22,7 @@ class linkPOST extends Route {
|
|||
Count the amount of links created for that album already and error out if max was reached
|
||||
*/
|
||||
const count = await db.table('links').where('albumId', albumId).count({ count: 'id' });
|
||||
if (count[0].count >= process.env.MAX_LINKS_PER_ALBUM) return res.status(400).json({ message: 'Maximum links per album reached' });
|
||||
if (count[0].count >= parseInt(process.env.MAX_LINKS_PER_ALBUM, 10)) return res.status(400).json({ message: 'Maximum links per album reached' });
|
||||
|
||||
/*
|
||||
Try to allocate a new identifier on the db
|
||||
|
|
|
@ -10,7 +10,7 @@ class registerPOST extends Route {
|
|||
}
|
||||
|
||||
async run(req, res, db) {
|
||||
if (!process.env.USER_ACCOUNTS) return res.status(401).json({ message: 'Creation of new accounts is currently disabled' });
|
||||
if (process.env.USER_ACCOUNTS == 'false') return res.status(401).json({ message: 'Creation of new accounts is currently disabled' });
|
||||
if (!req.body) return res.status(400).json({ message: 'No body provided' });
|
||||
const { username, password } = req.body;
|
||||
if (!username || !password) return res.status(401).json({ message: 'Invalid body provided' });
|
||||
|
|
|
@ -181,7 +181,7 @@ class uploadPOST extends Route {
|
|||
/*
|
||||
If exif removal has been force service-wide or requested by the user, remove it
|
||||
*/
|
||||
if (process.env.STRIP_EXIF) { // || user.settings.stripExif) {
|
||||
if (process.env.STRIP_EXIF == 'true') { // || user.settings.stripExif) {
|
||||
// Util.removeExif(upload.filename);
|
||||
}
|
||||
|
||||
|
@ -195,7 +195,7 @@ class uploadPOST extends Route {
|
|||
const busboy = new Busboy({
|
||||
headers: req.headers,
|
||||
limits: {
|
||||
fileSize: process.env.MAX_SIZE * (1000 * 1000),
|
||||
fileSize: parseInt(process.env.MAX_SIZE, 10) * (1000 * 1000),
|
||||
files: 1
|
||||
}
|
||||
});
|
||||
|
|
|
@ -11,15 +11,15 @@ class configGET extends Route {
|
|||
config: {
|
||||
serviceName: process.env.SERVICE_NAME,
|
||||
uploadFolder: process.env.UPLOAD_FOLDER,
|
||||
linksPerAlbum: process.env.MAX_LINKS_PER_ALBUM,
|
||||
maxUploadSize: process.env.MAX_SIZE,
|
||||
filenameLength: process.env.GENERATED_FILENAME_LENGTH,
|
||||
albumLinkLength: process.env.GENERATED_ALBUM_LENGTH,
|
||||
generateThumbnails: process.env.GENERATE_THUMBNAILS,
|
||||
generateZips: process.env.GENERATE_ZIPS,
|
||||
stripExif: process.env.STRIP_EXIF,
|
||||
publicMode: process.env.PUBLIC_MODE,
|
||||
enableAccounts: process.env.USER_ACCOUNTS
|
||||
linksPerAlbum: parseInt(process.env.MAX_LINKS_PER_ALBUM, 10),
|
||||
maxUploadSize: parseInt(process.env.MAX_SIZE, 10),
|
||||
filenameLength: parseInt(process.env.GENERATED_FILENAME_LENGTH, 10),
|
||||
albumLinkLength: parseInt(process.env.GENERATED_ALBUM_LENGTH, 10),
|
||||
generateThumbnails: process.env.GENERATE_THUMBNAILS == 'true' ? true : false,
|
||||
generateZips: process.env.GENERATE_ZIPS == 'true' ? true : false,
|
||||
stripExif: process.env.STRIP_EXIF == 'true' ? true : false,
|
||||
publicMode: process.env.PUBLIC_MODE == 'true' ? true : false,
|
||||
enableAccounts: process.env.USER_ACCOUNTS == 'true' ? true : false
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
@ -10,14 +10,14 @@ const jetpack = require('fs-jetpack');
|
|||
const path = require('path');
|
||||
|
||||
const rateLimiter = new RateLimit({
|
||||
windowMs: process.env.RATE_LIMIT_WINDOW,
|
||||
max: process.env.RATE_LIMIT_MAX,
|
||||
windowMs: parseInt(process.env.RATE_LIMIT_WINDOW, 10),
|
||||
max: parseInt(process.env.RATE_LIMIT_MAX, 10),
|
||||
delayMs: 0
|
||||
});
|
||||
|
||||
class Server {
|
||||
constructor() {
|
||||
this.port = process.env.SERVER_PORT;
|
||||
this.port = parseInt(process.env.SERVER_PORT, 10);
|
||||
this.server = express();
|
||||
this.server.set('trust proxy', 1);
|
||||
this.server.use(helmet());
|
||||
|
|
|
@ -106,7 +106,7 @@ class Util {
|
|||
static getUniqueFilename(name) {
|
||||
const retry = (i = 0) => {
|
||||
const filename = randomstring.generate({
|
||||
length: process.env.GENERATED_FILENAME_LENGTH,
|
||||
length: parseInt(process.env.GENERATED_FILENAME_LENGTH, 10),
|
||||
capitalization: 'lowercase'
|
||||
}) + path.extname(name);
|
||||
const exists = jetpack.exists(path.join(__dirname, '..', '..', '..', process.env.UPLOAD_FOLDER, filename));
|
||||
|
@ -121,7 +121,7 @@ class Util {
|
|||
static getUniqueAlbumIdentifier() {
|
||||
const retry = async (i = 0) => {
|
||||
const identifier = randomstring.generate({
|
||||
length: process.env.GENERATED_ALBUM_LENGTH,
|
||||
length: parseInt(process.env.GENERATED_ALBUM_LENGTH, 10),
|
||||
capitalization: 'lowercase'
|
||||
});
|
||||
const exists = await db.table('links').where({ identifier }).first();
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
<div class="columns">
|
||||
<div class="column is-3 is-offset-2">
|
||||
<div class="logo">
|
||||
<Logo/>
|
||||
<Logo />
|
||||
</div>
|
||||
</div>
|
||||
<div class="column is-5 centered">
|
||||
|
@ -64,7 +64,10 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="spacer mt7" />
|
||||
<Uploader />
|
||||
<Uploader v-if="config.publicMode && !loggedIn" />
|
||||
<div v-else>
|
||||
This site has disabled public uploads. You need an account.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hero-foot">
|
||||
|
@ -96,6 +99,9 @@ export default {
|
|||
computed: {
|
||||
loggedIn() {
|
||||
return this.$store.state.loggedIn;
|
||||
},
|
||||
config() {
|
||||
return this.$store.state.config;
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
|
|
@ -31,8 +31,10 @@
|
|||
</b-field>
|
||||
|
||||
<p class="control has-addons is-pulled-right">
|
||||
<router-link to="/register"
|
||||
<router-link v-if="config.enableAccounts"
|
||||
to="/register"
|
||||
class="is-text">Don't have an account?</router-link>
|
||||
<span v-else>Registration is closed at the moment</span>
|
||||
<a id="loginBtn"
|
||||
class="button"
|
||||
@click="login">Log in</a>
|
||||
|
|
|
@ -44,9 +44,11 @@ const actions = {
|
|||
URL: process.env.DOMAIN,
|
||||
baseURL: `${process.env.DOMAIN}${process.env.ROUTE_PREFIX}`,
|
||||
serviceName: process.env.SERVICE_NAME,
|
||||
maxFileSize: process.env.MAX_SIZE,
|
||||
chunkSize: process.env.CHUNK_SIZE,
|
||||
maxLinksPerAlbum: process.env.MAX_LINKS_PER_ALBUM
|
||||
maxFileSize: parseInt(process.env.MAX_SIZE, 10),
|
||||
chunkSize: parseInt(process.env.CHUNK_SIZE, 10),
|
||||
maxLinksPerAlbum: parseInt(process.env.MAX_LINKS_PER_ALBUM, 10),
|
||||
publicMode: process.env.PUBLIC_MODE == 'true' ? true : false,
|
||||
enableAccounts: process.env.USER_ACCOUNTS == 'true' ? true : false
|
||||
});
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue