diff --git a/modules/entities/entity.routes.js b/modules/entities/entity.routes.js index 96a1c64..7df92c2 100644 --- a/modules/entities/entity.routes.js +++ b/modules/entities/entity.routes.js @@ -1,98 +1,115 @@ -const routes = require('express').Router(); +const routes = require("express").Router(); -const { cacheSuccesses } = require('../../middlewares/cache'); -const { isAdministratorUser, isLoggedUser } = require('../../middlewares/accessValidator'); -const SchemaValidator = require('../../middlewares/schemaValidator'); +const { cacheSuccesses } = require("../../middlewares/cache"); +const { isAdministratorUser, isLoggedUser } = require("../../middlewares/accessValidator"); +const SchemaValidator = require("../../middlewares/schemaValidator"); -const PaginateMiddleware = require('../../middlewares/paginate'); -const FieldMiddleware = require('../../middlewares/fields'); -const SortMiddleware = require('../../middlewares/sort'); +const PaginateMiddleware = require("../../middlewares/paginate"); +const FieldMiddleware = require("../../middlewares/fields"); +const SortMiddleware = require("../../middlewares/sort"); //const entityValidation = require('./entity.validations'); -const entityController = require('./entity.controller'); -const entityTypeController = require('./entity_type.controller'); +const entityController = require("./entity.controller"); +const entityTypeController = require("./entity_type.controller"); +const generalInvalidFields = ["state", "contact_person", "contact_email", "createdAt", "updatedAt"]; -const generalInvalidFields = [ - 'state', 'contact_person', 'contact_email', 'createdAt', 'updatedAt' -]; - - -routes.get ('/entities/colleges', - cacheSuccesses('24 hours'), -// PaginateMiddleware.middleware(), - FieldMiddleware.middleware({ - invalidFields: generalInvalidFields - }), - SortMiddleware.middleware({ default: "name" }), - entityController.find({ - scopes: ['defaultScope', 'onlyColleges'], - }), +routes.get( + "/entities/colleges", + cacheSuccesses("1 hours"), + // PaginateMiddleware.middleware(), + FieldMiddleware.middleware({ + invalidFields: generalInvalidFields, + }), + SortMiddleware.middleware({ default: "name" }), + (req, res, next) => { + if (req.query && req.query.country) { + if (!["ES", "MX"].includes(req.query.country)) { + delete req.query["country"]; + } + } + next(); + }, + entityController.find({ + scopes: ["defaultScope", "onlyColleges"], + }) ); -routes.get ('/entities/partners', - cacheSuccesses('24 hours'), -// PaginateMiddleware.middleware(), - FieldMiddleware.middleware({ - invalidFields: generalInvalidFields - }), - SortMiddleware.middleware({ default: "name" }), - entityController.find({ - scopes: ['defaultScope', 'onlyPartners'], - }), +routes.get( + "/entities/partners", + cacheSuccesses("1 hours"), + // PaginateMiddleware.middleware(), + FieldMiddleware.middleware({ + invalidFields: generalInvalidFields, + }), + SortMiddleware.middleware({ default: "name" }), + (req, res, next) => { + if (req.query && req.query.country) { + if (!["ES", "MX"].includes(req.query.country)) { + delete req.query["country"]; + } + } + next(); + }, + entityController.find({ + scopes: ["defaultScope", "onlyPartners"], + }) ); - /******************************************************************************************************** * ADMINISTRACIÓN ********************************************************************************************************* */ -routes.get('/admin/entities', - isAdministratorUser, -// FieldMiddleware.middleware({ -// invalidFields: generalInvalidFields -// }), - // PaginateMiddleware.middleware(), - SortMiddleware.middleware({ default: "name" }), - entityController.find(), +routes.get( + "/admin/entities", + isAdministratorUser, + // FieldMiddleware.middleware({ + // invalidFields: generalInvalidFields + // }), + // PaginateMiddleware.middleware(), + SortMiddleware.middleware({ default: "name" }), + entityController.find() ); - - -routes.get('/admin/entities/partners/:id', - //isAdministratorUser, - entityController.findOne(), +routes.get( + "/admin/entities/partners/:id", + //isAdministratorUser, + entityController.findOne() ); -routes.get('/admin/entities/:id', - //isAdministratorUser, - entityController.findOne({ - scopes: ['withEntityTypes'], - }), +routes.get( + "/admin/entities/:id", + //isAdministratorUser, + entityController.findOne({ + scopes: ["withEntityTypes"], + }) ); -routes.get('/admin/entitytypes/', - //isAdministratorUser, - entityTypeController.find(), +routes.get( + "/admin/entitytypes/", + //isAdministratorUser, + entityTypeController.find() ); -routes.put('/admin/entities/:id', - isAdministratorUser, - //SchemaValidator(eventValidation.ReservationInputType, true), - entityController.update(), +routes.put( + "/admin/entities/:id", + isAdministratorUser, + //SchemaValidator(eventValidation.ReservationInputType, true), + entityController.update() ); -routes.post('/admin/entities', - isAdministratorUser, - //SchemaValidator(eventValidation.ReservationInputType, true), - entityController.create(), +routes.post( + "/admin/entities", + isAdministratorUser, + //SchemaValidator(eventValidation.ReservationInputType, true), + entityController.create() ); -routes.post('/admin/entities/:id', - isAdministratorUser, - //SchemaValidator(eventValidation.ReservationInputType, true), - entityController.delete(), +routes.post( + "/admin/entities/:id", + isAdministratorUser, + //SchemaValidator(eventValidation.ReservationInputType, true), + entityController.delete() ); - -module.exports = routes; \ No newline at end of file +module.exports = routes; diff --git a/package.json b/package.json index d171973..e5d8cc5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lqdvi-api3", - "version": "1.4.4", + "version": "1.4.5", "description": "", "author": "Rodax Software", "license": "ISC",