mirror of
https://github.com/BobbyWibowo/lolisafe.git
synced 2024-12-13 07:56:23 +00:00
66a63ca6d6
* Added new dependency: rimraf. This will be used by chunked upload support to bulk delete temporary chunk files. * Added chunked uploads support :3 * Updated Dropzone to 5.2.0. * More improvements to thumbnail view. Delete button will now only appear on hover. Some other details, such as file name, size and album/owner will also appear on hover. Touch devices will have all of those appear always visible by default. * Image thumbnails will now appear on home page after successful uploads (only for WEBP, JPG, JPEG, BMP, GIF and PNG files). WEBP may not work properly in Firefox though. * Refactored home.js to use const/let and some other stuff. * Refactored album view. It will now display properly on mobile screen. Download Album button will also no longer be located at the top right, but right below the subtitle. * Updated some version strings. * And maybe some others that I can't remember.
130 lines
4.2 KiB
JavaScript
130 lines
4.2 KiB
JavaScript
module.exports = {
|
|
|
|
/*
|
|
If set to true the user will need to specify the auto-generated token
|
|
on each API call, meaning random strangers won't be able to use the service
|
|
unless they have the token loli-safe provides you with.
|
|
If it's set to false, then upload will be public for anyone to use.
|
|
*/
|
|
private: true,
|
|
|
|
// If true, users will be able to create accounts and access their uploaded files
|
|
enableUserAccounts: true,
|
|
|
|
/*
|
|
Here you can decide if you want lolisafe to serve the files or if you prefer doing so via nginx.
|
|
The main difference between the two is the ease of use and the chance of analytics in the future.
|
|
If you set it to `true`, the uploaded files will be located after the host like:
|
|
https://lolisafe.moe/yourFile.jpg
|
|
|
|
If you set it to `false`, you need to set nginx to directly serve whatever folder it is you are serving your
|
|
downloads in. This also gives you the ability to serve them, for example, like this:
|
|
https://files.lolisafe.moe/yourFile.jpg
|
|
|
|
Both cases require you to type the domain where the files will be served on the `domain` key below.
|
|
Which one you use is ultimately up to you.
|
|
*/
|
|
serveFilesWithNode: false,
|
|
domain: 'https://lolisafe.moe',
|
|
|
|
/*
|
|
If you are serving your files with a different domain than your lolisafe homepage,
|
|
then fill this option with your lolisafe homepage, otherwise leave it null (or other falsy value).
|
|
*/
|
|
albumDomain: null,
|
|
|
|
// Port on which to run the server
|
|
port: 9999,
|
|
|
|
// Pages to process for the frontend
|
|
pages: ['home', 'auth', 'dashboard', 'faq'],
|
|
|
|
// Add file extensions here which should be blocked
|
|
blockedExtensions: [
|
|
'.jar',
|
|
'.exe',
|
|
'.msi',
|
|
'.com',
|
|
'.bat',
|
|
'.cmd',
|
|
'.scr',
|
|
'.ps1',
|
|
'.sh'
|
|
],
|
|
|
|
// Uploads config
|
|
uploads: {
|
|
|
|
// Folder where images should be stored
|
|
folder: 'uploads',
|
|
|
|
/*
|
|
Max file size allowed. Needs to be in MB
|
|
Note: When maxSize is greater than 1 MiB, you must set the client_max_body_size to the same as maxSize.
|
|
*/
|
|
maxSize: '512MB',
|
|
|
|
/*
|
|
Chunked uploads.
|
|
If this is enabled, maximum size for individual files (uploads.maxSize) will be overriden
|
|
by uploads.chunkedUploads.maxSize option (this also needs to be in MB).
|
|
uploads.maxSize will only then be used to check the combined size of all the chunks.
|
|
NOTICE: Make sure you have a folder named "chunks" inside your uploads folder.
|
|
*/
|
|
chunkedUploads: {
|
|
enabled: true,
|
|
maxSize: '10MB'
|
|
},
|
|
|
|
/*
|
|
The length of the random generated name for the uploaded files.
|
|
If "userChangeable" is set to true, registered users will be able to change
|
|
their preferred file name length from the dashboard. The allowed range will
|
|
be set by "min" and "max". Otherwise it will use "default".
|
|
Technically it's possible to have "default" outside of the "min" and "max" range,
|
|
but please not. Once a user has changed to a number within the range, the user will
|
|
no longer be able to use the default value.
|
|
*/
|
|
fileLength: {
|
|
min: 4,
|
|
max: 32,
|
|
default: 32,
|
|
userChangeable: false
|
|
},
|
|
|
|
/*
|
|
This option will limit how many times it will try to generate random names
|
|
for uploaded files. If this value is higher than 1, it will help in cases
|
|
where files with the same name already exists (higher chance with shorter file name length).
|
|
*/
|
|
maxTries: 1,
|
|
|
|
/*
|
|
NOTE: Thumbnails are only for the admin panel and they require you
|
|
to install a separate binary called graphicsmagick (http://www.graphicsmagick.org)
|
|
for images and ffmpeg (https://ffmpeg.org/) for video files
|
|
*/
|
|
generateThumbnails: {
|
|
image: true,
|
|
video: false
|
|
},
|
|
|
|
/*
|
|
Allows users to download a .zip file of all files in an album.
|
|
The file is generated when the user clicks the download button in the view
|
|
and is re-used if the album has not changed between download requests
|
|
*/
|
|
generateZips: true
|
|
},
|
|
|
|
// Folder where to store logs
|
|
logsFolder: 'logs',
|
|
|
|
// The following values shouldn't be touched
|
|
database: {
|
|
client: 'sqlite3',
|
|
connection: { filename: './database/db' },
|
|
useNullAsDefault: true
|
|
}
|
|
}
|