This commit is contained in:
David Arranz 2019-07-25 19:21:26 +02:00
parent 71273e9a63
commit 2367b55c7b
8 changed files with 16 additions and 19 deletions

View File

@ -29,6 +29,6 @@ module.exports = {
vimeo: { vimeo: {
CLIENT_ID: '9581f2d0ed211dc1e31b5c825117dc1f00d77ba0', CLIENT_ID: '9581f2d0ed211dc1e31b5c825117dc1f00d77ba0',
CLIENT_SECRET: '3kf0hQ63OXSPm7z2X1qyOV4iH57Xha0cyRXn0VJneq8zHbWKjfB1/9H8KcgBgzgkzw0Y9x/xFLUAauuHLEkqHxLBw8QueanCgIZev1L5xoksrKuKX7gMvErqqP+uFNnA', CLIENT_SECRET: '3kf0hQ63OXSPm7z2X1qyOV4iH57Xha0cyRXn0VJneq8zHbWKjfB1/9H8KcgBgzgkzw0Y9x/xFLUAauuHLEkqHxLBw8QueanCgIZev1L5xoksrKuKX7gMvErqqP+uFNnA',
ACCESS_TOKEN: '2843aed2064f8148d74074dff7807d92' ACCESS_TOKEN: 'fcc7b31fe690a768efa920e13d750449'
} }
} }

View File

@ -37,6 +37,6 @@ module.exports = {
vimeo: { vimeo: {
CLIENT_ID: '9581f2d0ed211dc1e31b5c825117dc1f00d77ba0', CLIENT_ID: '9581f2d0ed211dc1e31b5c825117dc1f00d77ba0',
CLIENT_SECRET: '3kf0hQ63OXSPm7z2X1qyOV4iH57Xha0cyRXn0VJneq8zHbWKjfB1/9H8KcgBgzgkzw0Y9x/xFLUAauuHLEkqHxLBw8QueanCgIZev1L5xoksrKuKX7gMvErqqP+uFNnA', CLIENT_SECRET: '3kf0hQ63OXSPm7z2X1qyOV4iH57Xha0cyRXn0VJneq8zHbWKjfB1/9H8KcgBgzgkzw0Y9x/xFLUAauuHLEkqHxLBw8QueanCgIZev1L5xoksrKuKX7gMvErqqP+uFNnA',
ACCESS_TOKEN: '2843aed2064f8148d74074dff7807d92' ACCESS_TOKEN: 'fcc7b31fe690a768efa920e13d750449'
} }
} }

View File

@ -200,10 +200,11 @@ module.exports = function (sequelize, DataTypes) {
return { return {
include: [{ include: [{
model: sequelize.models.Multimedia, model: sequelize.models.Multimedia,
as: 'multimedias', as: { singular: 'multimedia', plural: 'multimedias' },
required: false, required: false,
include : [{ include : [{
model: sequelize.models.MultimediaFile, model: sequelize.models.MultimediaFile,
as: "multimediaFile"
}] }]
}, },
] ]
@ -234,10 +235,11 @@ module.exports = function (sequelize, DataTypes) {
required: false, required: false,
include : [{ include : [{
model: sequelize.models.Multimedia, model: sequelize.models.Multimedia,
as: 'multimedias', as: { singular: 'multimedia', plural: 'multimedias' },
required: false, required: false,
include: [{ include: [{
model: sequelize.models.MultimediaFile, model: sequelize.models.MultimediaFile,
as: "multimediaFile"
}] }]
}] }]
}] }]

View File

@ -70,12 +70,6 @@ module.exports = function (sequelize, DataTypes) {
Multimedia.associate = function (models) { Multimedia.associate = function (models) {
Multimedia.MultimediaFile = Multimedia.belongsTo(models.MultimediaFile, { foreignKey: 'multimediafileId', as: "multimediaFile" }); Multimedia.MultimediaFile = Multimedia.belongsTo(models.MultimediaFile, { foreignKey: 'multimediafileId', as: "multimediaFile" });
Multimedia.Speaker = Multimedia.hasOne(models.Speaker, {
foreignKey: 'entityId',
as: 'speaker'
});
}; };
return Multimedia; return Multimedia;

View File

@ -37,13 +37,13 @@ module.exports = function (sequelize, DataTypes) {
MultimediaFile.associate = function (models) { MultimediaFile.associate = function (models) {
MultimediaFile.UserCreate = MultimediaFile.belongsTo(models.User, { foreignKey: 'userId' }); MultimediaFile.UserCreate = MultimediaFile.belongsTo(models.User, { foreignKey: 'userId' });
MultimediaFile.Multimedias = MultimediaFile.hasMany(models.Multimedia, { foreignKey: 'multimediafileId', as: "multimedias" }); MultimediaFile.Multimedias = MultimediaFile.hasMany(models.Multimedia, { foreignKey: 'multimediafileId', as: { singular: 'multimedia', plural: 'multimedias' } });
}; };
MultimediaFile.addScope('includeMultimedias', () => { MultimediaFile.addScope('includeMultimedias', () => {
return { return {
include: [ include: [
{ model: sequelize.models.Multimedia, as: 'multimedias' } { model: sequelize.models.Multimedia, as: { singular: 'multimedia', plural: 'multimedias' } }
] ]
} }
}); });

View File

@ -14,7 +14,7 @@ const generalInvalidFields = [
'userId', 'createdAt', 'updatedAt', 'userId', 'createdAt', 'updatedAt',
]; ];
routes.get('/multimediafiles', //cacheSuccesses, routes.get('/multimediafiles', cacheSuccesses,
FieldMiddleware.middleware({ FieldMiddleware.middleware({
invalidFields: generalInvalidFields invalidFields: generalInvalidFields
}), }),
@ -25,7 +25,7 @@ routes.get('/multimediafiles', //cacheSuccesses,
}) })
); );
routes.get('/multimediafiles/:id', //cacheSuccesses, routes.get('/multimediafiles/:id', cacheSuccesses,
FieldMiddleware.middleware({ FieldMiddleware.middleware({
invalidFields: generalInvalidFields invalidFields: generalInvalidFields
}), }),

View File

@ -114,10 +114,11 @@ module.exports = function (sequelize, DataTypes) {
return { return {
include: [{ include: [{
model: sequelize.models.Multimedia, model: sequelize.models.Multimedia,
as: 'multimedias', as: { singular: 'multimedia', plural: 'multimedias' },
required: false, required: false,
include: [{ include: [{
model: sequelize.models.MultimediaFile, model: sequelize.models.MultimediaFile,
as: "multimediaFile"
}] }]
}, },
] ]

View File

@ -10,14 +10,14 @@ const cdnHelper = require('../../helpers/cdn.helper');
const multimediaComposer = (multimedias) => multimedias.map(multimedia => ({ const multimediaComposer = (multimedias) => multimedias.map(multimedia => ({
...multimedia, ...multimedia,
...multimedia.MultimediaFile, ...multimedia.multimediaFile,
type: multimedia.type, type: multimedia.type,
media_type: multimedia.MultimediaFile.type, media_type: multimedia.multimediaFile.type,
MultimediaFile: undefined, multimediaFile: undefined,
createdAt: undefined, createdAt: undefined,
updatedAt: undefined, updatedAt: undefined,
userId: undefined, userId: undefined,
url: (multimedia.MultimediaFile.provider === 'cdn') ? cdnHelper.getCDNMediaUrl(multimedia.MultimediaFile.url) : multimedia.MultimediaFile.url, url: (multimedia.multimediaFile.provider === 'cdn') ? cdnHelper.getCDNMediaUrl(multimedia.multimediaFile.url) : multimedia.multimediaFile.url,
})); }));
const valuesComposer = (values) => values.map(value => ({ const valuesComposer = (values) => values.map(value => ({