require('../connections/mysql-server'); require('../helpers/CheckToken'); require('../helpers/config'); const express = require('express'); const router = express.Router(); const bodyParser = require('body-parser'); const formidable = require('formidable'); router.use(bodyParser.urlencoded({ limit: '10mb', extended: true } )); router.use(bodyParser.json({ limit: '10mb', extended: true })); var routes = function () { router.get('/getAll', verifyJWT, (req, res) => { execSQLQuery(`SELECT * FROM slides;`, res, req.originalUrl); }); router.get('/getSlide/:idslides', verifyJWT, (req, res) => { const idslides = parseInt(req.params.idslides); execSQLQuery(`SELECT * FROM slides WHERE idslides = ${idslides};`, res, req.originalUrl); }); router.post('/insert', verifyJWT, (req, res) => { const idslides = parseInt(req.body.idslides); const title = req.body.title; const itens = parseInt(req.body.itens); execSQLQuery(`INSERT INTO slides(title, itens) VALUES (?, ?);`, res, req.originalUrl, [title, itens]); }); router.patch('/update', verifyJWT, (req, res) => { const idslides = parseInt(req.body.idslides); const title = req.body.title; const itens = parseInt(req.body.itens); execSQLQuery(`UPDATE slides SET title = ?, itens = ? WHERE idslides = ?;`, res, req.originalUrl, [title, itens, idslides]); }); router.get('/renomeiaSlide/:idslides/:apartirde', verifyJWT, (req, res) => { const idslides = parseInt(req.params.idslides); const apartirde = parseInt(req.params.apartirde); const fs = require('fs'); const path = require('path'); const Diretorio = Variables('src_media') + 'images/'; fs.readdir(Diretorio, (err, files) => { let ListaSlides = []; files.forEach(file => { if (path.basename(file).includes("slide_" + idslides)) { ListaSlides.push(file); } }); LoopRenomeiaSlide(0, apartirde, idslides, 0, ListaSlides, Diretorio, function(Sucesso) { res.send(Sucesso); }) }) }); function LoopRenomeiaSlide(Index, apartirde, idslides, newI, ListaSlides, Diretorio, callback) { const fs = require('fs'); if (Index < ListaSlides.length) { if (Index != apartirde) { if (Index >= apartirde) { let NovoNome = "slide_" + idslides + "_" + newI + ".jpg"; console.log("De: " + ListaSlides[Index] + " - Para: " + NovoNome); fs.rename(Diretorio + ListaSlides[Index], Diretorio + NovoNome, function (err) { Index++; newI++; LoopRenomeiaSlide(Index, apartirde, idslides, newI, ListaSlides, Diretorio, callback); }); } else { Index++; newI++; LoopRenomeiaSlide(Index, apartirde, idslides, newI, ListaSlides, Diretorio, callback); } } else { fs.unlink(Diretorio + ListaSlides[Index], function (err) { Index++; LoopRenomeiaSlide(Index, apartirde, idslides, newI, ListaSlides, Diretorio, callback); }); } } else { callback(true); } } return router; }; module.exports = routes;