.
This commit is contained in:
parent
759babd7d5
commit
a60ced94dc
@ -132,7 +132,7 @@ function handleErrorResponse(controllerName, methodName, error, res) {
|
||||
|
||||
function handleResultResponse(result, totalCount = null, params, res, statusCode = httpStatus.OK) {
|
||||
setPaginationInfo((totalCount) ? totalCount : getTotalCount(result), res);
|
||||
res.status(statusCode).send(isNaN(result) ? result : result.toString());
|
||||
res.status(statusCode).send(typeof result == 'number' ? result.toString() : result);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -130,7 +130,6 @@ const generateService = (model, extraMethods = {}, options = defaultOptions) =>
|
||||
return await model.scope(context.scopes).findOne(findOptions);
|
||||
};
|
||||
|
||||
|
||||
const associationName = hasAssociation(params);
|
||||
console.log('associationName => ', associationName);
|
||||
delete params.params.association;
|
||||
@ -215,6 +214,7 @@ const generateService = (model, extraMethods = {}, options = defaultOptions) =>
|
||||
if (extraMethods.beforeUpdate) {
|
||||
values = extraMethods.beforeUpdate(values, findOptions, context);
|
||||
}
|
||||
console.log(context);
|
||||
return await model.scope(context.scopes).update(values, findOptions)
|
||||
},
|
||||
|
||||
|
||||
@ -57,12 +57,13 @@ const multimediasInputType = Joi.object().keys({
|
||||
description: Joi.string().optional(),
|
||||
type: Joi.string().required(),
|
||||
class: Joi.string().required(),
|
||||
multimediafileId: Joi.string().required()
|
||||
});
|
||||
|
||||
|
||||
routes.post('/admin/multimedias/',
|
||||
isAdministratorUser,
|
||||
//SchemaValidator(multimediasInputType, true),
|
||||
SchemaValidator(multimediasInputType, true),
|
||||
//uploader.single('file'),
|
||||
multimediaController.create()
|
||||
);
|
||||
|
||||
@ -1,67 +1,12 @@
|
||||
'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, '');
|
||||
data.provider = 'cdn';
|
||||
data.class = 'picture';
|
||||
}
|
||||
|
||||
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)
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
const extraControllers = {};
|
||||
|
||||
module.exports = generateControllers(multimediaFileService, extraControllers, controllerOptions);
|
||||
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
const routes = require('express').Router();
|
||||
const config = require('../../config');
|
||||
// Uploader
|
||||
const cdnUpload = require('../../middlewares/uploader.js');
|
||||
const { isAdministratorUser, isLoggedUser } = require('../../middlewares/accessValidator');
|
||||
@ -47,14 +48,30 @@ routes.post('/admin/multimediafiles/',
|
||||
isAdministratorUser,
|
||||
SchemaValidator(multimediaFilesInputType, true),
|
||||
cdnUpload().single('file'),
|
||||
(req, res, next) => {
|
||||
if (req.file) {
|
||||
req.body.url = req.file.path.replace(config.uploads.path, '');
|
||||
req.body.provider = 'cdn';
|
||||
req.body.class = 'picture';
|
||||
}
|
||||
next();
|
||||
},
|
||||
multimediaFileController.create()
|
||||
);
|
||||
|
||||
// Modificación
|
||||
routes.put('/admin/multimediafiles/:id',
|
||||
isAdministratorUser,
|
||||
SchemaValidator(multimediaFilesInputType, true),
|
||||
//SchemaValidator(multimediaFilesInputType, true),
|
||||
cdnUpload().single('file'),
|
||||
(req, res, next) => {
|
||||
if (req.file) {
|
||||
req.body.url = req.file.path.replace(config.uploads.path, '');
|
||||
req.body.provider = 'cdn';
|
||||
req.body.class = 'picture';
|
||||
}
|
||||
next();
|
||||
},
|
||||
multimediaFileController.update()
|
||||
);
|
||||
|
||||
|
||||
@ -13,10 +13,10 @@ const sharp = require('sharp');
|
||||
const config = require('../../config');
|
||||
const { generateService, parseParamsToFindOptions } = require('../../helpers/service.helper');
|
||||
const models = require('../../core/models');
|
||||
const { determineProviderInfo, extractProvciderInfo } = require('../../helpers/providers.helper');
|
||||
const { determineProviderInfo, extractProviderInfo } = require('../../helpers/providers.helper');
|
||||
|
||||
const providerComposer = (multimedia) => {
|
||||
return getVimeoVideoInfo(multimedia.code)
|
||||
return extractProviderInfo(multimedia.code)
|
||||
}
|
||||
|
||||
/*const _generateThumbFileName = function (fileName, prefix) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user