a
This commit is contained in:
parent
3cf312d777
commit
0e2c17967e
@ -14,6 +14,7 @@ const CDN_PATHS = {
|
||||
SPEAKERS: "speakers/",
|
||||
WALLPAPERS: "wallpapers/",
|
||||
XLSX: "xlsx/",
|
||||
PARTNERS: "partners/",
|
||||
};
|
||||
const dummyMedia = encodeURI(`${assetsUrl}/defaultProfile.png`);
|
||||
|
||||
@ -39,6 +40,9 @@ const getCDNMediaUrl = (mediaUri) => {
|
||||
|
||||
const getCDNCityMediaUrl = (cityName) => encodeURI(`${assetsUrl}/${CDN_PATHS.CITIES}/${cityName}.jpg`);
|
||||
|
||||
const getCDNCurrentPartnersJSON = encodeURI(`${assetsUrl}/${CDN_PATHS.PARTNERS}partners_current.json`);
|
||||
const getCDNPastPartnersJSON = encodeURI(`${assetsUrl}/${CDN_PATHS.PARTNERS}partners_past.json`);
|
||||
|
||||
const getCDNPath = (type = '') => {
|
||||
var cdnPath = '';
|
||||
switch (type) {
|
||||
@ -57,6 +61,10 @@ const getCDNPath = (type = '') => {
|
||||
cdnPath = CDN_PATHS.XLSX;
|
||||
break;
|
||||
|
||||
case 'partners':
|
||||
cdnPath = CDN_PATHS.PARTNERS;
|
||||
break;
|
||||
|
||||
default:
|
||||
var _date = new Date();
|
||||
cdnPath = _date.getFullYear() + '/' + (_date.getMonth() + 1) + '/';
|
||||
@ -94,5 +102,7 @@ module.exports = {
|
||||
getCDNMediaUrl,
|
||||
getCDNPath,
|
||||
getCDNFilenameWithPath,
|
||||
getCDNCurrentPartnersJSON,
|
||||
getCDNPastPartnersJSON,
|
||||
getUniqueName
|
||||
}
|
||||
@ -11,8 +11,8 @@ module.exports = function (sequelize, DataTypes) {
|
||||
},
|
||||
phone: {
|
||||
type: DataTypes.STRING,
|
||||
unique: true
|
||||
// allowNull: false, //Tiene que poderse dar de alta usuarios solo con el correo electronico para que siga funcionando las invitaciones por web como hasta ahora
|
||||
unique: true,
|
||||
allowNull: true, //Tiene que poderse dar de alta usuarios solo con el correo electronico para que siga funcionando las invitaciones por web como hasta ahora
|
||||
},
|
||||
email: {
|
||||
type: DataTypes.STRING,
|
||||
|
||||
@ -4,26 +4,26 @@ const Sequelize = require('sequelize');
|
||||
moment.locale('es');
|
||||
|
||||
const getStateCode = (event) => {
|
||||
var currentDate = moment().utc(),
|
||||
initDate = moment.utc(event.ini_date),
|
||||
endDate = moment.utc(event.end_date),
|
||||
init_availableDate = moment.utc(event.init_available_date),
|
||||
end_availableDate = moment.utc(event.end_available_date);
|
||||
var currentDate = moment(),
|
||||
initDate = moment(event.init_date),
|
||||
endDate = moment(event.end_date),
|
||||
init_availableDate = moment(event.init_available_date),
|
||||
end_availableDate = moment(event.end_available_date);
|
||||
|
||||
if (moment(currentDate).isBetween(initDate, endDate)) {
|
||||
if (currentDate.isBetween(initDate, endDate)) {
|
||||
return 'current_event';
|
||||
} else {
|
||||
if (moment(endDate).isBefore(currentDate)) {
|
||||
if (endDate.isBefore(currentDate)) {
|
||||
return 'closed_event';
|
||||
} else {
|
||||
if (moment(currentDate).isBefore(init_availableDate)){
|
||||
if (currentDate.isBefore(init_availableDate)){
|
||||
return 'future_registrations'
|
||||
} else {
|
||||
if (moment(currentDate).isBetween(init_availableDate, end_availableDate)) {
|
||||
if (currentDate.isBetween(init_availableDate, end_availableDate)) {
|
||||
return (event.sold_out == 1) ? 'waitinglist_open' : 'registrations_open';
|
||||
}
|
||||
else {
|
||||
if (moment(currentDate).isAfter(end_availableDate))
|
||||
if (currentDate.isAfter(end_availableDate))
|
||||
return 'closed_registrations'
|
||||
else
|
||||
return 'N/A';
|
||||
@ -34,28 +34,27 @@ const getStateCode = (event) => {
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
const getStateText = (event) => {
|
||||
var currentDate = moment().utc(),
|
||||
initDate = moment.utc(event.ini_date),
|
||||
endDate = moment.utc(event.end_date),
|
||||
init_availableDate = moment.utc(event.init_available_date),
|
||||
end_availableDate = moment.utc(event.end_available_date);
|
||||
var currentDate = moment(),
|
||||
initDate = moment(event.init_date),
|
||||
endDate = moment(event.end_date),
|
||||
init_availableDate = moment(event.init_available_date),
|
||||
end_availableDate = moment(event.end_available_date);
|
||||
|
||||
if (moment(currentDate).isBetween(initDate, endDate)) {
|
||||
if (currentDate.isBetween(initDate, endDate)) {
|
||||
return 'Congreso en curso';
|
||||
} else {
|
||||
if (moment(endDate).isBefore(currentDate)) {
|
||||
if (endDate.isBefore(currentDate)) {
|
||||
return 'Congreso finalizado';
|
||||
} else {
|
||||
if (moment(currentDate).isBefore(init_availableDate)) {
|
||||
return 'Inscripciones a partir del ' + moment(init_availableDate).format('D [de] MMMM');
|
||||
if (currentDate.isBefore(init_availableDate)) {
|
||||
return 'Inscripciones a partir del ' + init_availableDate.format('D [de] MMMM');
|
||||
} else {
|
||||
if (moment(currentDate).isBetween(init_availableDate, end_availableDate)) {
|
||||
if (currentDate.isBetween(init_availableDate, end_availableDate)) {
|
||||
return (event.sold_out == 1) ? 'Inscripciones abiertas a lista de espera' : 'Inscripciones abiertas';
|
||||
}
|
||||
else {
|
||||
if (moment(currentDate).isAfter(end_availableDate))
|
||||
if (currentDate.isAfter(end_availableDate))
|
||||
return 'Inscripciones cerradas'
|
||||
else
|
||||
return 'N/A';
|
||||
@ -317,7 +316,7 @@ module.exports = function (sequelize, DataTypes) {
|
||||
Event.addScope('next', {
|
||||
where: {
|
||||
init_date: {
|
||||
[Sequelize.Op.gte]: moment().add(1, 'days').startOf('day').utc()
|
||||
[Sequelize.Op.gte]: moment().add(1, 'days').startOf('day').format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
},
|
||||
});
|
||||
@ -325,8 +324,8 @@ module.exports = function (sequelize, DataTypes) {
|
||||
Event.addScope('today', {
|
||||
where: {
|
||||
init_date: {
|
||||
[Sequelize.Op.gte]: moment().startOf('day'),
|
||||
[Sequelize.Op.lt]: moment().add(1, 'days').startOf('day'),
|
||||
[Sequelize.Op.gte]: moment().startOf('day').format('YYYY-MM-DD HH:mm:ss'),
|
||||
[Sequelize.Op.lt]: moment().add(1, 'days').startOf('day').format('YYYY-MM-DD HH:mm:ss'),
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -334,18 +333,36 @@ module.exports = function (sequelize, DataTypes) {
|
||||
Event.addScope('current', {
|
||||
where: {
|
||||
init_date: {
|
||||
[Sequelize.Op.lte]: moment().utc(),
|
||||
[Sequelize.Op.lte]: moment().format('YYYY-MM-DD HH:mm:ss'),
|
||||
},
|
||||
end_date:{
|
||||
[Sequelize.Op.gt]: moment().utc(),
|
||||
[Sequelize.Op.gt]: moment().format('YYYY-MM-DD HH:mm:ss'),
|
||||
},
|
||||
}
|
||||
});
|
||||
|
||||
Event.addScope('tomorrow', {
|
||||
where: {
|
||||
init_date: {
|
||||
[Sequelize.Op.gte]: moment().add(1, 'days').startOf('day').format('YYYY-MM-DD HH:mm:ss'),
|
||||
[Sequelize.Op.lt]: moment().add(2, 'days').startOf('day').format('YYYY-MM-DD HH:mm:ss'),
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Event.addScope('yesterday', {
|
||||
where: {
|
||||
init_date: {
|
||||
[Sequelize.Op.gte]: moment().add(-1, 'days').startOf('day').format('YYYY-MM-DD HH:mm:ss'),
|
||||
[Sequelize.Op.lt]: moment().add('day').startOf('day').format('YYYY-MM-DD HH:mm:ss'),
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Event.addScope('past', {
|
||||
where: {
|
||||
init_date: {
|
||||
[Sequelize.Op.lt]: moment().startOf('day').utc()
|
||||
[Sequelize.Op.lt]: moment().startOf('day').format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -353,10 +370,10 @@ module.exports = function (sequelize, DataTypes) {
|
||||
Event.addScope('withOpenInscriptions', {
|
||||
where: {
|
||||
init_available_date: {
|
||||
[Sequelize.Op.lte]: moment().utc()
|
||||
[Sequelize.Op.lte]: moment().format('YYYY-MM-DD HH:mm:ss')
|
||||
},
|
||||
end_available_date: {
|
||||
[Sequelize.Op.gt]: moment().utc()
|
||||
[Sequelize.Op.gt]: moment().format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
@ -57,7 +57,7 @@ routes.get('/events/next',
|
||||
PaginateMiddleware.middleware(),
|
||||
SortMiddleware.middleware({ default: "init_date" }),
|
||||
(req, res, next) => {
|
||||
// console.log(moment().add(1, 'days').startOf('day').utc());
|
||||
// console.log(moment().add(1, 'days').startOf('day').format('YYYY-MM-DD HH:mm:ss'));
|
||||
return eventController.find({
|
||||
scopes: ['defaultScope', 'next', 'includeVenue', 'includeMultimedias', { method: ['includeInscription', req.user.id] }],
|
||||
})(req, res, next)
|
||||
@ -78,6 +78,19 @@ routes.get('/events/past',
|
||||
}),
|
||||
);
|
||||
|
||||
routes.get('/events/yesterday',
|
||||
isLoggedUser,
|
||||
FieldMiddleware.middleware({
|
||||
invalidFields: generalInvalidFields
|
||||
}),
|
||||
PaginateMiddleware.middleware(),
|
||||
SortMiddleware.middleware({ default: "-init_date" }),
|
||||
eventController.find({
|
||||
scopes: ['defaultScope', 'yesterday', 'includeVenue', 'includeMultimedias', 'includeDetails'],
|
||||
}),
|
||||
);
|
||||
|
||||
|
||||
routes.get('/events/today',
|
||||
isLoggedUser,
|
||||
FieldMiddleware.middleware({
|
||||
@ -90,6 +103,18 @@ routes.get('/events/today',
|
||||
}),
|
||||
);
|
||||
|
||||
routes.get('/events/tomorrow',
|
||||
isLoggedUser,
|
||||
FieldMiddleware.middleware({
|
||||
invalidFields: generalInvalidFields
|
||||
}),
|
||||
PaginateMiddleware.middleware(),
|
||||
SortMiddleware.middleware({ default: "-init_date" }),
|
||||
eventController.find({
|
||||
scopes: ['defaultScope', 'tomorrow', 'includeVenue', 'includeMultimedias', 'includeDetails'],
|
||||
}),
|
||||
);
|
||||
|
||||
routes.get('/events/current',
|
||||
isLoggedUser,
|
||||
FieldMiddleware.middleware({
|
||||
|
||||
@ -27,7 +27,7 @@ const ReservationInputType = Joi.object().keys({
|
||||
const EventQuestionInputType = Joi.object().keys({
|
||||
//eventId: Joi.string().required(),
|
||||
speakerId: Joi.string().required(),
|
||||
answer: Joi.string().required(),
|
||||
question: Joi.string().required(),
|
||||
});
|
||||
|
||||
module.exports = {
|
||||
|
||||
@ -10,8 +10,12 @@ module.exports = function (sequelize, DataTypes) {
|
||||
defaultValue: DataTypes.UUIDV4,
|
||||
primaryKey: true,
|
||||
},
|
||||
description: {
|
||||
type: DataTypes.STRING,
|
||||
question: {
|
||||
type: DataTypes.TEXT,
|
||||
allowNull: true
|
||||
},
|
||||
answer: {
|
||||
type: DataTypes.TEXT,
|
||||
},
|
||||
anonimous: {
|
||||
type: DataTypes.BOOLEAN,
|
||||
@ -25,10 +29,6 @@ module.exports = function (sequelize, DataTypes) {
|
||||
type: DataTypes.BOOLEAN,
|
||||
defaultValue: false,
|
||||
},
|
||||
answer: {
|
||||
type: DataTypes.TEXT,
|
||||
allowNull: true
|
||||
},
|
||||
}, {
|
||||
tableName: 'events_questions',
|
||||
freezeTableName: true,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user