diff --git a/emails/booking/makebooking/it/html.pug b/emails/booking/makebooking/it/html.pug
index fb0b073..06ef83c 100644
--- a/emails/booking/makebooking/it/html.pug
+++ b/emails/booking/makebooking/it/html.pug
@@ -2,6 +2,7 @@ p Ciao #{name},
p Ti confermiamo che hai appena inviato una richiesta di prenotazione per l'evento #{event}
span #{participants}
p Messaggio: #{msgbooking}
+p #{msgreply_after_booking}
p Cordiali Saluti
p Supporto #{nomeapp}
diff --git a/emails/msg/sendmsg/it/html.pug b/emails/msg/sendmsg/it/html.pug
index 2790e31..6414683 100644
--- a/emails/msg/sendmsg/it/html.pug
+++ b/emails/msg/sendmsg/it/html.pug
@@ -2,10 +2,6 @@ p Ciao #{name},
p #{usernameorig} ti ha inviato questo messaggio dalla pagina
span (#{infoevent}):
p #{message}
-p
-p Per rispondere al messaggio clicca qui:
-div.divbtn
- button.btn.btn-lg Rispondi
p Cordiali Saluti
p Supporto #{nomeapp}
@@ -15,20 +11,3 @@ style(type="text/css").
padding: 0;
margin: 0;
}
-
- .divbtn {
- display: flex;
- align-items: center;
- justify-content: center;
- }
-
- .btn-lg {
- padding: 5px;
- margin: 5px;
- font-size: 26px;
- cursor: pointer;
- color: white;
- background: #027be3 !important;
- border-radius: 28px;
-
- }
diff --git a/emails/msg/sendmsgchat/it/html.pug b/emails/msg/sendmsgchat/it/html.pug
new file mode 100644
index 0000000..2790e31
--- /dev/null
+++ b/emails/msg/sendmsgchat/it/html.pug
@@ -0,0 +1,34 @@
+p Ciao #{name},
+p #{usernameorig} ti ha inviato questo messaggio dalla pagina
+span (#{infoevent}):
+p #{message}
+p
+p Per rispondere al messaggio clicca qui:
+div.divbtn
+ button.btn.btn-lg Rispondi
+
+p Cordiali Saluti
+p Supporto #{nomeapp}
+
+style(type="text/css").
+ html, body {
+ padding: 0;
+ margin: 0;
+ }
+
+ .divbtn {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ }
+
+ .btn-lg {
+ padding: 5px;
+ margin: 5px;
+ font-size: 26px;
+ cursor: pointer;
+ color: white;
+ background: #027be3 !important;
+ border-radius: 28px;
+
+ }
diff --git a/emails/msg/sendmsgchat/it/subject.pug b/emails/msg/sendmsgchat/it/subject.pug
new file mode 100644
index 0000000..b311c8d
--- /dev/null
+++ b/emails/msg/sendmsgchat/it/subject.pug
@@ -0,0 +1 @@
+=`${usernameorig} tu ha inviato un nuovo messaggio`
diff --git a/server/models/settings.js b/server/models/settings.js
index f50253e..6dad91b 100644
--- a/server/models/settings.js
+++ b/server/models/settings.js
@@ -37,6 +37,26 @@ SettingsSchema.statics.executeQueryTable = function (idapp, params) {
return tools.executeQueryTable(this, idapp, params);
};
+SettingsSchema.statics.getValDbSettings = function (idapp, key) {
+ return Settings.findOne({ idapp, key })
+ .then((myrec) => {
+ if (myrec) {
+ if (myrec.type === this.FieldType.date)
+ return myrec.value_date;
+ if (myrec.type === this.FieldType.number)
+ return myrec.value_num;
+ else
+ return myrec.value_str;
+ } else {
+ return ''
+ }
+
+ }).catch((err) => {
+ return null;
+ });
+
+};
+
SettingsSchema.statics.findAllIdApp = function (idapp) {
const Settings = this;
diff --git a/server/router/booking_router.js b/server/router/booking_router.js
index 9b00ab7..9737fa6 100644
--- a/server/router/booking_router.js
+++ b/server/router/booking_router.js
@@ -34,7 +34,7 @@ router.post('/', authenticate, (req, res) => {
tools.mylog('crea Booking');
const booking = new Booking(myrec);
- const check = tools.checkUserOk(booking.userId, req.user._id);
+ const check = tools.checkUserOk(booking.userId, req.user._id, res);
if (check.exit) return check.ret;
// console.log('fieldtochange', fieldtochange);
@@ -81,10 +81,12 @@ router.delete('/:id/:notify/:idapp', authenticate, (req, res) => {
return res.status(404).send();
}
- if (notify === '1')
+ if (notify === '1') {
+ recbooking.booked = false;
sendNotif(res, idapp, req.user, recbooking);
+ }
- tools.mylog('DELETED ', recbooking.descr, recbooking._id);
+ tools.mylog('DELETED ', recbooking._id);
res.send({ code: server_constants.RIS_CODE_OK, msg: '', id: recbooking._id });
diff --git a/server/router/myevent_router.js b/server/router/myevent_router.js
index e7b9dac..1957ead 100644
--- a/server/router/myevent_router.js
+++ b/server/router/myevent_router.js
@@ -25,7 +25,7 @@ router.post('/', authenticate, (req, res) => {
tools.mylog('crea MyEvent');
const myevent = new MyEvent(myrec);
- const check = tools.checkUserOk(myevent.userId, req.user._id);
+ const check = tools.checkUserOk(myevent.userId, req.user._id, res);
if (check.exit) return check.ret;
// Modify:
diff --git a/server/router/projects_router.js b/server/router/projects_router.js
index a80a95e..8d9a36d 100644
--- a/server/router/projects_router.js
+++ b/server/router/projects_router.js
@@ -31,7 +31,7 @@ router.post('/', authenticate, (req, res) => {
return res.status(400).send({ code: server_constants.RIS_CODE_LOGIN_ERR_GENERIC });
}
- const check = tools.checkUserOk(project.userId, req.user._id);
+ const check = tools.checkUserOk(project.userId, req.user._id, res);
if (check.exit) return check.ret;
tools.mylog('PROJECT POST :', project.descr, project._id);
diff --git a/server/router/sendmsg_router.js b/server/router/sendmsg_router.js
index a8ba51f..76f63db 100644
--- a/server/router/sendmsg_router.js
+++ b/server/router/sendmsg_router.js
@@ -42,7 +42,7 @@ router.post('/', authenticate, (req, res) => {
tools.mylog('crea SendMsg');
const myrecmsg = new SendMsg(body);
- const check = tools.checkUserOk(myrecmsg.origin.username, req.user.username);
+ const check = tools.checkUserOk(myrecmsg.origin.username, req.user.username, res);
if (check.exit) return check.ret;
// console.log('fieldtochange', fieldtochange);
diff --git a/server/sendemail.js b/server/sendemail.js
index 992beae..727b9a1 100644
--- a/server/sendemail.js
+++ b/server/sendemail.js
@@ -6,6 +6,7 @@ const Email = require('email-templates');
var i18n = require("i18n");
+const { Settings } = require('./models/settings');
const previewEmail = require('preview-email');
const nodemailer = require("nodemailer");
@@ -174,24 +175,29 @@ module.exports = {
event: recbooking.infoevent,
};
- if (recbooking.numpeople > 1)
- mylocalsconf.participants = recbooking.numpeople.toString() + ' ' + res.__("partecipanti");
+ return Settings.getValDbSettings(idapp, 'MSG_REPLY_AFTER_BOOKING').then((ris => {
+ mylocalsconf.msgreply_after_booking = ris;
- let texthtml = '';
- if (recbooking.modified) {
- texthtml = 'modifybooking';
- }else {
- texthtml = 'makebooking';
- }
+ if (recbooking.numpeople > 1)
+ mylocalsconf.participants = recbooking.numpeople.toString() + ' ' + res.__("partecipanti");
- this.sendEmail_base('booking/'+texthtml+'/' + lang, emailto, mylocalsconf, tools.getreplyToEmailByIdApp(idapp));
+ let texthtml = '';
+ if (recbooking.modified) {
+ texthtml = 'modifybooking';
+ }else {
+ texthtml = 'makebooking';
+ }
- // Send Email also to the Admin
- this.sendEmail_base('admin/'+texthtml+'/' + lang, tools.getAdminEmailByIdApp(idapp), mylocalsconf, '');
+ this.sendEmail_base('booking/'+texthtml+'/' + lang, emailto, mylocalsconf, tools.getreplyToEmailByIdApp(idapp));
- if (tools.isManagAndAdminDifferent(idapp)) {
- this.sendEmail_base('admin/'+texthtml+'/' + lang, tools.getManagerEmailByIdApp(idapp), mylocalsconf, '');
- }
+ // Send Email also to the Admin
+ this.sendEmail_base('admin/'+texthtml+'/' + lang, tools.getAdminEmailByIdApp(idapp), mylocalsconf, '');
+
+ if (tools.isManagAndAdminDifferent(idapp)) {
+ this.sendEmail_base('admin/'+texthtml+'/' + lang, tools.getManagerEmailByIdApp(idapp), mylocalsconf, '');
+ }
+
+ }));
},
@@ -240,7 +246,13 @@ module.exports = {
strlinkreply: tools.getHostByIdApp(idapp) + '/messages/' + recmsg._id
};
- return this.sendEmail_base('msg/sendmsg/' + lang, emailto, mylocalsconf, tools.getreplyToEmailByIdApp(idapp));
+ let replyto = '';
+ if (mylocalsconf.infoevent !== '')
+ replyto = user.email;
+ else
+ replyto = tools.getreplyToEmailByIdApp(idapp);
+
+ return this.sendEmail_base('msg/sendmsg/' + lang, emailto, mylocalsconf, replyto);
// Send Email also to the Admin
// this.sendEmail_base('admin/sendmsg/' + lang, tools.getAdminEmailByIdApp(idapp), mylocalsconf);
diff --git a/server/tools/general.js b/server/tools/general.js
index 0a3515d..5b5622a 100644
--- a/server/tools/general.js
+++ b/server/tools/general.js
@@ -33,6 +33,17 @@ module.exports = {
TYPE_PROJECT: 1,
TYPE_TODO: 2,
+ FieldType: {
+ boolean: 1,
+ date: 2,
+ string: 4,
+ binary: 8,
+ html: 16,
+ select: 32,
+ number: 64,
+ typeinrec: 128,
+ },
+
MAX_PHASES: 5,
FIRST_PROJ: '__PROJECTS',
EXECUTE_CALCPROJ: true,
@@ -280,11 +291,11 @@ module.exports = {
return sortedList;
},
- checkUserOk(userpassed, userauth) {
+ checkUserOk(userpassed, userauth, res) {
this.mylog('checkUserOk', userpassed, userauth);
if (String(userpassed) !== String(userauth)) {
// I'm trying to write something not mine!
- this.mylog('userId = ', userpassed.userId, 'req.user._id', userauth);
+ this.mylog('userId = ', userpassed, 'req.user._id', userauth);
return { exit: true, ret: res.status(404).send({ code: server_constants.RIS_CODE_TODO_CREATING_NOTMYUSER }) }
} else {
return { exit: false, ret: false }
@@ -388,7 +399,7 @@ module.exports = {
]
}
if (idapp > 0) {
- query.push( { $match: { idapp } } );
+ query.push({ $match: { idapp } });
}
// console.log('QUERYMATCH', query[0].$match.or);
@@ -457,6 +468,6 @@ module.exports = {
SetBit(myval, bit) {
myval = myval & bit;
return myval
- }
+ },
};
diff --git a/server/tools/shared_nodejs.js b/server/tools/shared_nodejs.js
index ab322c2..7285c3b 100644
--- a/server/tools/shared_nodejs.js
+++ b/server/tools/shared_nodejs.js
@@ -12,7 +12,7 @@ module.exports = {
},
fieldsUserToChange() {
- return ['username', 'email', 'cell', 'name', 'surname', 'perm', 'date_reg', 'verified_email', 'img', 'ipaddr', 'lasttimeonline', 'profile']
+ return ['_id', 'username', 'email', 'cell', 'name', 'surname', 'perm', 'date_reg', 'verified_email', 'img', 'ipaddr', 'lasttimeonline', 'profile']
}
};