resize image to 'small_' and medium version (and delete the orginal)
This commit is contained in:
@@ -9,6 +9,8 @@ const telegrambot = require('../telegram/telegrambot');
|
||||
|
||||
const sendemail = require('../sendemail');
|
||||
|
||||
const resizer = require('node-image-resizer');
|
||||
|
||||
const {authenticate, authenticate_noerror} = require(
|
||||
'../middleware/authenticate');
|
||||
|
||||
@@ -96,6 +98,7 @@ const UserCost = {
|
||||
'profile.paymenttypes'],
|
||||
};
|
||||
|
||||
|
||||
router.post(process.env.LINKVERIF_REG, (req, res) => {
|
||||
const body = _.pick(req.body, ['idapp', 'idlink']);
|
||||
const idapp = body.idapp;
|
||||
@@ -321,7 +324,6 @@ router.post('/settable', authenticate, (req, res) => {
|
||||
|
||||
mydata.idapp = req.user.idapp;
|
||||
|
||||
|
||||
if (shared_consts.TABLES_USER_ID.includes(params.table)) {
|
||||
mydata.userId = req.user._id;
|
||||
}
|
||||
@@ -444,9 +446,9 @@ router.post('/gettable', authenticate, (req, res) => {
|
||||
|
||||
router.post('/pickup', authenticate, (req, res) => {
|
||||
const params = req.body;
|
||||
const mytable = getTableByTableName(params.table);
|
||||
let mytable = getTableByTableName(params.table);
|
||||
// console.log('mytable', mytable);
|
||||
if (!mytable) {
|
||||
if (!mytable || !shared_consts.TablePickup.includes(params.table)) {
|
||||
console.log(`Table ${params.table} not found`);
|
||||
return res.status(400).send({});
|
||||
}
|
||||
@@ -562,7 +564,7 @@ router.patch('/chval', authenticate, async (req, res) => {
|
||||
myrec['_id'] = fieldsvalue['_id'];
|
||||
return await mytable.insertMany(myrec).then((ris) => {
|
||||
if (ris) {
|
||||
return mytable.deleteMany( {_id: myidDel } ).then((risdel) => {
|
||||
return mytable.deleteMany({_id: myidDel}).then((risdel) => {
|
||||
return res.send({code: server_constants.RIS_CODE_OK, msg: ''});
|
||||
});
|
||||
} else {
|
||||
@@ -1549,6 +1551,7 @@ function uploadFile(req, res, version) {
|
||||
// Create Dir if doesn't exist:
|
||||
tools.mkdirpath(mydir);
|
||||
let newname = mydir + '/' + file.name;
|
||||
let resized_img = mydir + '/' + server_constants.PREFIX_IMG + file.name;
|
||||
|
||||
console.log('move from ', file.path, 'to :', newname);
|
||||
|
||||
@@ -1559,7 +1562,38 @@ function uploadFile(req, res, version) {
|
||||
tools.move(file.path, newname, (err) => {
|
||||
if (err)
|
||||
console.log('err:', err);
|
||||
|
||||
const setup_image_compress = {
|
||||
all: {
|
||||
path: mydir + '/',
|
||||
quality: 80,
|
||||
},
|
||||
versions: [
|
||||
{
|
||||
prefix: server_constants.PREFIX_IMG,
|
||||
width: 512,
|
||||
height: 512,
|
||||
}, {
|
||||
quality: 100,
|
||||
prefix: server_constants.PREFIX_IMG_SMALL,
|
||||
width: 64,
|
||||
height: 64,
|
||||
}],
|
||||
};
|
||||
|
||||
// Salva le immagini in formato compresso
|
||||
(async () => {
|
||||
await resizer(newname, setup_image_compress);
|
||||
|
||||
tools.delete(newname, false, () => {})
|
||||
|
||||
tools.move(resized_img, newname, (err) => {
|
||||
|
||||
})
|
||||
|
||||
})();
|
||||
res.end();
|
||||
|
||||
});
|
||||
|
||||
} catch (e) {
|
||||
@@ -1592,7 +1626,13 @@ router.post('/uploadnew/:vers/:dir/', authenticate, (req, res) => {
|
||||
let versionstr = req.params.vers;
|
||||
let version = tools.getVersionint(versionstr);
|
||||
|
||||
uploadFile(req, res, version);
|
||||
try {
|
||||
uploadFile(req, res, version);
|
||||
|
||||
} catch (e) {
|
||||
console.log('error', e);
|
||||
res.status(400).send();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
@@ -1624,7 +1664,7 @@ function deleteFile(req, res, version) {
|
||||
let fullpathfile = tools.getdirByIdApp(idapp) + dirmain + '/' +
|
||||
relativefile;
|
||||
|
||||
tools.delete(fullpathfile, (err) => {
|
||||
tools.delete(fullpathfile, true, (err) => {
|
||||
if (err) console.log('err', err);
|
||||
if (err === undefined || err.errno === -2)
|
||||
res.send({code: server_constants.RIS_CODE_OK, msg: ''});
|
||||
|
||||
@@ -14,27 +14,20 @@ const fs = require('fs');
|
||||
|
||||
const port = process.env.PORT;
|
||||
|
||||
|
||||
// console.log(" 2b) express");
|
||||
|
||||
// var cookieParser = require('cookie-parser')
|
||||
// var csrf = require('csurf')
|
||||
const express = require('express');
|
||||
// console.log(" 2c) body-parser");
|
||||
const bodyParser = require('body-parser');
|
||||
const path = require('path');
|
||||
|
||||
// console.log(" 3) cron");
|
||||
|
||||
const cron = require('node-cron');
|
||||
|
||||
// console.log(" 4) mongoose");
|
||||
require('./db/mongoose');
|
||||
|
||||
// console.log(" 5) settings");
|
||||
const { Settings } = require('./models/settings');
|
||||
|
||||
const i18n = require("i18n");
|
||||
|
||||
// console.log(" 5) key");
|
||||
|
||||
if ((process.env.NODE_ENV === 'production') || (process.env.NODE_ENV === 'test')) {
|
||||
var privateKey = fs.readFileSync(process.env.PATH_CERT_KEY, 'utf8');
|
||||
|
||||
@@ -1966,9 +1966,25 @@ module.exports = {
|
||||
}
|
||||
},
|
||||
|
||||
delete(path, callback) {
|
||||
extractFileName: function (filename) {
|
||||
return path.basename(filename)
|
||||
},
|
||||
|
||||
fs.unlink(path, function(err) {
|
||||
extractFilePath: function (filename) {
|
||||
return path.dirname(filename)
|
||||
},
|
||||
|
||||
delete(mypath, alsothumb, callback) {
|
||||
|
||||
fs.unlink(mypath, function(err) {
|
||||
if (alsothumb) {
|
||||
try {
|
||||
let img_small = path.dirname(mypath) + '/' + server_constants.PREFIX_IMG_SMALL + path.basename(mypath);
|
||||
fs.unlink(img_small, () => {});
|
||||
} catch (e) {
|
||||
console.error(err);
|
||||
}
|
||||
}
|
||||
if (err) {
|
||||
console.error(err);
|
||||
callback(err);
|
||||
@@ -1979,7 +1995,6 @@ module.exports = {
|
||||
},
|
||||
|
||||
mkdirpath(dirPath) {
|
||||
// if (!fs.accessSync(dirPath, fs.constants.R_OK | fs.constants.W_OK)) {
|
||||
if (!fs.existsSync(dirPath)) {
|
||||
try {
|
||||
fs.mkdirSync(dirPath, {recursive: true});
|
||||
|
||||
@@ -91,6 +91,9 @@ module.exports = Object.freeze({
|
||||
LIST_END: '10000000',
|
||||
LIST_START: null,
|
||||
|
||||
PREFIX_IMG: 'm_',
|
||||
PREFIX_IMG_SMALL: 'small_',
|
||||
|
||||
Privacy: {
|
||||
all: 'all',
|
||||
friends: 'friends',
|
||||
|
||||
Reference in New Issue
Block a user