'use strict'; const httpStatus = require('http-status'); var configuration = require('../../config'); const generateControllers = require('../../core/controllers'); const multimediaFileService = require('./multimedia_file.service'); const { extractParamsFromRequest, handleErrorResponse, handleResultResponse } = require('../../helpers/controller.helper'); // Module Name const MODULE_NAME = '[multimediaFile.controller]'; const controllerOptions = { MODULE_NAME }; function buildContext(req, config) { return { user: req.user, scopes: [], ...config, } } const extraControllers = { /*upload: (config) => { return async (req, res, next) => { var file = req.file; console.log(file); // ¿Hay fichero adjunto? if (!file || !file.buffer) { try { var CDNFilePath = cdnHelper.getCDNFilenameWithPath(file.originalname, 'speaker'); await multimediaFileService.uploadFile(file, CDNFilePath, data, context); } catch(error) { return handleErrorResponse(MODULE_NAME, 'upload', error, res); } } else { next(); } } },*/ create: (config) => { return async (req, res, next) => { var data = req.body; try { if (req.file) { data.url = req.file.path.replace(configuration.uploads.path, ''); } var data = req.body; console.log(data); const context = buildContext(req, config); const result = await multimediaFileService.create(data, context); return handleResultResponse(result, null, null, res, httpStatus.CREATED) } catch (error) { return handleErrorResponse(MODULE_NAME, 'create', error, res) } } }, }; module.exports = generateControllers(multimediaFileService, extraControllers, controllerOptions);