From 4eb68ee900ce304af0e811e3be3e69fa067d4423 Mon Sep 17 00:00:00 2001 From: Moe Date: Thu, 7 Mar 2019 15:26:56 -0800 Subject: [PATCH] Remove hardcoded "uploader" fields and place in dynamically loaded files --- libs/uploaders.js | 11 +- libs/uploaders/amazonS3.ejs | 84 +++++++++ libs/uploaders/backblazeB2.ejs | 60 ++++++ libs/uploaders/sftp.ejs | 45 +++++ libs/uploaders/wasabi.ejs | 68 +++++++ libs/uploaders/webdav.ejs | 60 ++++++ web/pages/blocks/settings.ejs | 324 +-------------------------------- 7 files changed, 334 insertions(+), 318 deletions(-) create mode 100644 libs/uploaders/amazonS3.ejs create mode 100644 libs/uploaders/backblazeB2.ejs create mode 100644 libs/uploaders/sftp.ejs create mode 100644 libs/uploaders/wasabi.ejs create mode 100644 libs/uploaders/webdav.ejs diff --git a/libs/uploaders.js b/libs/uploaders.js index 7b67957c..f4f2051e 100644 --- a/libs/uploaders.js +++ b/libs/uploaders.js @@ -1,11 +1,20 @@ module.exports = function(s,config,lang){ + config.uploaderEjsBlocks = [] var loadLib = function(lib){ - return require('./uploaders/' + lib + '.js') + var uploadersFolder = __dirname + '/uploaders/' + var libraryPath = uploadersFolder + lib + '.js' + if(lib !== 'loader'){ + var libraryEjsFile = uploadersFolder + lib + '.ejs' + config.uploaderEjsBlocks.push(libraryEjsFile) + } + return require(libraryPath) } loadLib('loader')(s,config,lang) + //cloud storage loadLib('backblazeB2')(s,config,lang) loadLib('amazonS3')(s,config,lang) loadLib('webdav')(s,config,lang) loadLib('wasabi')(s,config,lang) + //simple storage loadLib('sftp')(s,config,lang) } diff --git a/libs/uploaders/amazonS3.ejs b/libs/uploaders/amazonS3.ejs new file mode 100644 index 00000000..8dbe995d --- /dev/null +++ b/libs/uploaders/amazonS3.ejs @@ -0,0 +1,84 @@ +<% if(details.use_aws_s3!=='0'){ %> +
+

<%-lang['Amazon S3']%>

+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+
+<% } %> diff --git a/libs/uploaders/backblazeB2.ejs b/libs/uploaders/backblazeB2.ejs new file mode 100644 index 00000000..c3db16a0 --- /dev/null +++ b/libs/uploaders/backblazeB2.ejs @@ -0,0 +1,60 @@ +<% if(details.use_bb_b2!=='0'){ %> +
+

<%-lang['Backblaze B2']%>

+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+
+<% } %> diff --git a/libs/uploaders/sftp.ejs b/libs/uploaders/sftp.ejs new file mode 100644 index 00000000..a33df180 --- /dev/null +++ b/libs/uploaders/sftp.ejs @@ -0,0 +1,45 @@ +<% if(details.use_sftp!=='0'){ %> +
+

<%-lang['SFTP (SSH File Transfer)']%>

+
+ +
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+<% } %> diff --git a/libs/uploaders/wasabi.ejs b/libs/uploaders/wasabi.ejs new file mode 100644 index 00000000..1ee5fde7 --- /dev/null +++ b/libs/uploaders/wasabi.ejs @@ -0,0 +1,68 @@ +<% if(details.use_whcs!=='0'){ %> +
+

<%-lang['Wasabi Hot Cloud Storage']%>

+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+
+<% } %> diff --git a/libs/uploaders/webdav.ejs b/libs/uploaders/webdav.ejs new file mode 100644 index 00000000..d5a66371 --- /dev/null +++ b/libs/uploaders/webdav.ejs @@ -0,0 +1,60 @@ +<% if(details.use_webdav!=='0'){ %> +
+

<%-lang.WebDAV%>

+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ +
+
+
+ +
+
+
+<% } %> diff --git a/web/pages/blocks/settings.ejs b/web/pages/blocks/settings.ejs index 8afca758..8b92722e 100644 --- a/web/pages/blocks/settings.ejs +++ b/web/pages/blocks/settings.ejs @@ -171,323 +171,13 @@ - <% if(details.use_webdav!=='0'){ %> -
-

<%-lang.WebDAV%>

-
- -
-
-
- -
-
-
- -
-
- -
-
-
- -
-
-
- -
-
- -
-
-
- -
-
-
- <% } %> - <% if(details.use_aws_s3!=='0'){ %> -
-

<%-lang['Amazon S3']%>

-
- -
-
-
- -
-
-
- -
-
- -
-
-
- -
-
- -
-
-
- -
-
- -
-
-
- -
-
-
- <% } %> - <% if(details.use_bb_b2!=='0'){ %> -
-

<%-lang['Backblaze B2']%>

-
- -
-
-
- -
-
-
- -
-
- -
-
-
- -
-
-
- -
-
- -
-
-
- -
-
-
- <% } %> - <% if(details.use_whcs!=='0'){ %> -
-

<%-lang['Wasabi Hot Cloud Storage']%>

-
- -
-
-
- -
-
-
- -
-
- -
-
-
- -
-
- -
-
-
- -
-
- -
-
-
- -
-
-
- <% } %> - <% if(details.use_sftp!=='0'){ %> -
-

<%-lang['SFTP (SSH File Transfer)']%>

-
- -
-
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
-
- <% } %> + <% if(config.uploaderEjsBlocks)config.uploaderEjsBlocks.forEach(function(blockPath){ %> + <%- include(blockPath,{ + lang: lang, + config: config, + details: details + }) %> + <% }) %> <% if(details.use_discordbot!=='0'){ %>

<%-lang['Discord Bot']%>