From 234791cd9aa8f9935096db789813e70b80bdb791 Mon Sep 17 00:00:00 2001 From: waveringana Date: Thu, 30 Nov 2023 11:55:46 -0500 Subject: [PATCH] Split nameAndExtension to seperate variables --- app/lib/middleware.ts | 32 +++++++++++++++----------------- app/lib/multer.ts | 12 ++++++------ app/public/js/index.js | 4 ++-- app/routes/index.ts | 28 +++++++++++++++------------- app/views/partials/_fileList.ejs | 4 ++-- 5 files changed, 40 insertions(+), 40 deletions(-) diff --git a/app/lib/middleware.ts b/app/lib/middleware.ts index 97b7157..9daa617 100644 --- a/app/lib/middleware.ts +++ b/app/lib/middleware.ts @@ -6,7 +6,6 @@ import process from "process"; import { extension, videoExtensions, imageExtensions, oembedObj } from "./lib"; import { insertToDB } from "./db"; import { ffmpegDownscale, ffProbe } from "./ffmpeg"; -import { ffprobe } from "fluent-ffmpeg"; export const checkAuth: Middleware = (req, res, next) => { if (!req.user) { @@ -49,8 +48,8 @@ export const checkSharexAuth: Middleware = (req, res, next) => { export const createEmbedData: Middleware = async (req, res, next) => { const files = req.files as Express.Multer.File[]; for (const file in files) { - const nameAndExtension = extension(files[file].filename); - const isMedia = videoExtensions.includes(nameAndExtension[1]) || imageExtensions.includes(nameAndExtension[1]); + const [filename, fileExtension] = extension(files[file].filename); + const isMedia = videoExtensions.includes(fileExtension) || imageExtensions.includes(fileExtension); const oembed: oembedObj = { type: "video", @@ -59,19 +58,18 @@ export const createEmbedData: Middleware = async (req, res, next) => { provider_url: "https://github.com/WaveringAna/embedder", cache_age: 86400, html: `` + filename + }${fileExtension}'>` }; if (isMedia) { let ffProbeData; try { ffProbeData = await ffProbe( `uploads/${files[file].filename}`, - nameAndExtension[0], - nameAndExtension[1], + filename, + fileExtension, ); } catch (error) { console.log(`Error: ${error}`); - console.log(nameAndExtension[1]); } oembed.width = ffProbeData.streams[0].width; @@ -79,12 +77,12 @@ export const createEmbedData: Middleware = async (req, res, next) => { } fs.writeFile( - `uploads/oembed-${nameAndExtension[0]}${nameAndExtension[1]}.json`, + `uploads/oembed-${filename}${fileExtension}.json`, JSON.stringify(oembed), function (err) { if (err) return next(err); console.log( - `oembed file created ${nameAndExtension[0]}${nameAndExtension[1]}.json`, + `oembed file created ${filename}${fileExtension}.json`, ); }, ); @@ -97,24 +95,24 @@ export const convertTo720p: Middleware = (req, res, next) => { const files = req.files as Express.Multer.File[]; console.log("convert to 720p running"); for (const file in files) { - const nameAndExtension = extension(files[file].filename); + const [filename, fileExtension] = extension(files[file].filename); //Skip if not a video if ( - !videoExtensions.includes(nameAndExtension[1]) && - nameAndExtension[1] !== ".gif" + !videoExtensions.includes(fileExtension) && + fileExtension !== ".gif" ) { console.log(`${files[file].filename} is not a video file`); - console.log(nameAndExtension[1]); + console.log(fileExtension); continue; } console.log(`Creating 720p for ${files[file].filename}`); ffmpegDownscale( - `uploads/${nameAndExtension[0]}${nameAndExtension[1]}`, - nameAndExtension[0], - nameAndExtension[1], + `uploads/${filename}${fileExtension}`, + filename, + fileExtension, ) .then(() => { //Nothing for now, can fire event flag that it is done to front end when react conversion is done diff --git a/app/lib/multer.ts b/app/lib/multer.ts index 77f1e20..63bcbb6 100644 --- a/app/lib/multer.ts +++ b/app/lib/multer.ts @@ -23,11 +23,11 @@ export const fileStorage = multer.diskStorage({ file: Express.Multer.File, callback: FileNameCallback, ): void => { - const nameAndExtension = extension(file.originalname); + const [filename, fileExtension] = extension(file.originalname); console.log(`Uploading ${file}`); db.all( "SELECT * FROM media WHERE path = ?", - [nameAndExtension[0] + nameAndExtension[1]], + [filename + fileExtension], (err: Error, exists: []) => { if (err) { console.log(err); @@ -43,12 +43,12 @@ export const fileStorage = multer.diskStorage({ ) { callback( null, - nameAndExtension[0] + "-" + suffix + nameAndExtension[1], + filename + "-" + suffix + fileExtension, ); } else { callback( null, - request.body.title + "-" + suffix + nameAndExtension[1], + request.body.title + "-" + suffix + fileExtension, ); } } else { @@ -57,9 +57,9 @@ export const fileStorage = multer.diskStorage({ request.body.title == null || request.body.title == undefined ) { - callback(null, nameAndExtension[0] + nameAndExtension[1]); + callback(null, filename + fileExtension); } else { - callback(null, request.body.title + nameAndExtension[1]); + callback(null, request.body.title + fileExtension); } } }, diff --git a/app/public/js/index.js b/app/public/js/index.js index 36bc395..5c27050 100644 --- a/app/public/js/index.js +++ b/app/public/js/index.js @@ -255,8 +255,8 @@ function checkFileAvailability(filePath) { function createVideoElement(filePath) { const videoContainer = document.getElementById(`video-${filePath}`); videoContainer.outerHTML = ` -