go on Conto Comunitario
This commit is contained in:
@@ -195,7 +195,7 @@ AccountSchema.pre('save', async function (next) {
|
|||||||
next();
|
next();
|
||||||
});
|
});
|
||||||
|
|
||||||
AccountSchema.statics.getAccountByUsernameAndCircuitId = async function (idapp, username, circuitId, createifnotexist, groupname = '') {
|
AccountSchema.statics.getAccountByUsernameAndCircuitId = async function (idapp, username, circuitId, createifnotexist, groupname = '', iscontocom = false) {
|
||||||
const Account = this;
|
const Account = this;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -235,6 +235,10 @@ AccountSchema.statics.getAccountByUsernameAndCircuitId = async function (idapp,
|
|||||||
qta_maxConcessa: 0,
|
qta_maxConcessa: 0,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (iscontocom) {
|
||||||
|
myaccount.fidoConcesso = shared_consts.CIRCUIT_PARAMS.SCOPERTO_MIN_CONTO_COMUNITARIO;
|
||||||
|
myaccount.qta_maxConcessa = shared_consts.CIRCUIT_PARAMS.SCOPERTO_MAX_CONTO_COMUNITARIO;
|
||||||
|
} else {
|
||||||
if (!mycircuit.fido_scoperto_default_grp)
|
if (!mycircuit.fido_scoperto_default_grp)
|
||||||
mycircuit.fido_scoperto_default_grp = shared_consts.CIRCUIT_PARAMS.SCOPERTO_MIN_GRP;
|
mycircuit.fido_scoperto_default_grp = shared_consts.CIRCUIT_PARAMS.SCOPERTO_MIN_GRP;
|
||||||
if (!mycircuit.qta_max_default_grp)
|
if (!mycircuit.qta_max_default_grp)
|
||||||
@@ -247,6 +251,8 @@ AccountSchema.statics.getAccountByUsernameAndCircuitId = async function (idapp,
|
|||||||
myaccount.fidoConcesso = mycircuit.fido_scoperto_default;
|
myaccount.fidoConcesso = mycircuit.fido_scoperto_default;
|
||||||
myaccount.qta_maxConcessa = mycircuit.qta_max_default;
|
myaccount.qta_maxConcessa = mycircuit.qta_max_default;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
return await myaccount.save();
|
return await myaccount.save();
|
||||||
}
|
}
|
||||||
@@ -266,9 +272,9 @@ AccountSchema.statics.createAccount = async function (idapp, username, circuitNa
|
|||||||
const { Circuit } = require('../models/circuit');
|
const { Circuit } = require('../models/circuit');
|
||||||
|
|
||||||
try {
|
try {
|
||||||
mycircuit = await Circuit.findOne({ name: circuitName }, {_id: 1});
|
mycircuit = await Circuit.findOne({ name: circuitName }, { _id: 1 });
|
||||||
if (mycircuit) {
|
if (mycircuit) {
|
||||||
return await Account.getAccountByUsernameAndCircuitId(idapp, username, mycircuit._id, true, groupname);
|
return await Account.getAccountByUsernameAndCircuitId(idapp, username, mycircuit._id, true, groupname, circuitName === groupname);
|
||||||
} else {
|
} else {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2348,7 +2348,14 @@ UserSchema.statics.setCircuitCmd = async function (idapp, usernameOrig, circuitn
|
|||||||
let groupname = extrarec && extrarec.groupname ? extrarec.groupname : '';
|
let groupname = extrarec && extrarec.groupname ? extrarec.groupname : '';
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if (cmd === shared_consts.CIRCUITCMD.SET) {
|
if (cmd === shared_consts.CIRCUITCMD.CREATE) {
|
||||||
|
const mycirc = await Circuit.findOne({ idapp, name: circuitname });
|
||||||
|
if (mycirc) {
|
||||||
|
// Il Conto Comunitario prende il nome del circuito !
|
||||||
|
await Account.createAccount(idapp, '', circuitname, mycirc.path);
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (cmd === shared_consts.CIRCUITCMD.SET) {
|
||||||
if (groupname) {
|
if (groupname) {
|
||||||
const foundIfCircuitInGroup = await MyGroup.ifCircuitAlreadyInGroup(idapp, groupname, circuitname);
|
const foundIfCircuitInGroup = await MyGroup.ifCircuitAlreadyInGroup(idapp, groupname, circuitname);
|
||||||
|
|
||||||
|
|||||||
@@ -5,23 +5,24 @@ const tools = require('../tools/general');
|
|||||||
|
|
||||||
const server_constants = require('../tools/server_constants');
|
const server_constants = require('../tools/server_constants');
|
||||||
|
|
||||||
const {authenticate} = require('../middleware/authenticate');
|
const { authenticate } = require('../middleware/authenticate');
|
||||||
|
|
||||||
const mongoose = require('mongoose').set('debug', false);
|
const mongoose = require('mongoose').set('debug', false);
|
||||||
|
|
||||||
const {User} = require('../models/user');
|
const { User } = require('../models/user');
|
||||||
const {Circuit} = require('../models/circuit');
|
const { Circuit } = require('../models/circuit');
|
||||||
|
const { Account } = require('../models/account');
|
||||||
|
|
||||||
const _ = require('lodash');
|
const _ = require('lodash');
|
||||||
|
|
||||||
const {ObjectID} = require('mongodb');
|
const { ObjectID } = require('mongodb');
|
||||||
|
|
||||||
async function getCircuitRecAdminsInfo(idapp, data) {
|
async function getCircuitRecAdminsInfo(idapp, data) {
|
||||||
|
|
||||||
if (data && data.admins) {
|
if (data && data.admins) {
|
||||||
for (const admin of data.admins) {
|
for (const admin of data.admins) {
|
||||||
const myuser = await User.findOne({idapp, username: admin.username}, {'profile.img': 1}).lean();
|
const myuser = await User.findOne({ idapp, username: admin.username }, { 'profile.img': 1 }).lean();
|
||||||
admin.profile = {img: myuser.profile.img};
|
admin.profile = { img: myuser.profile.img };
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -35,15 +36,15 @@ router.post('/load', authenticate, async (req, res) => {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
const {SendNotif} = require('../models/sendnotif');
|
const { SendNotif } = require('../models/sendnotif');
|
||||||
const {Movement} = require('../models/movement');
|
const { Movement } = require('../models/movement');
|
||||||
|
|
||||||
// Check if ìs a Notif to read
|
// Check if ìs a Notif to read
|
||||||
const idnotif = req.body['idnotif'] ? req.body['idnotif'] : '';
|
const idnotif = req.body['idnotif'] ? req.body['idnotif'] : '';
|
||||||
SendNotif.setNotifAsRead(idapp, usernameOrig, idnotif);
|
SendNotif.setNotifAsRead(idapp, usernameOrig, idnotif);
|
||||||
|
|
||||||
const whatshow = Circuit.getWhatToShow(idapp, req.user.username);
|
const whatshow = Circuit.getWhatToShow(idapp, req.user.username);
|
||||||
let data = await Circuit.findOne({idapp, path}, whatshow).lean();
|
let data = await Circuit.findOne({ idapp, path }, whatshow).lean();
|
||||||
|
|
||||||
const whatshowUsers = await User.getWhatToShow_IfFriends(idapp, req.user.username);
|
const whatshowUsers = await User.getWhatToShow_IfFriends(idapp, req.user.username);
|
||||||
|
|
||||||
@@ -70,7 +71,11 @@ router.post('/load', authenticate, async (req, res) => {
|
|||||||
data.movements = await Movement.getMovsByCircuitId(idapp, usernameOrig, data._id);
|
data.movements = await Movement.getMovsByCircuitId(idapp, usernameOrig, data._id);
|
||||||
}
|
}
|
||||||
|
|
||||||
res.send({circuit: data, users_in_circuit});
|
if (data) {
|
||||||
|
data.account = await Account.getAccountByUsernameAndCircuitId(idapp, '', data._id, false, data.path);
|
||||||
|
}
|
||||||
|
|
||||||
|
res.send({ circuit: data, users_in_circuit });
|
||||||
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error('Error in Circuits', e);
|
console.error('Error in Circuits', e);
|
||||||
|
|||||||
@@ -469,7 +469,12 @@ router.post('/settable', authenticate, async (req, res) => {
|
|||||||
return res.send({ rec: myrec, ris });
|
return res.send({ rec: myrec, ris });
|
||||||
});
|
});
|
||||||
} else if (params.table === shared_consts.TAB_MYCIRCUITS && isnewrec) {
|
} else if (params.table === shared_consts.TAB_MYCIRCUITS && isnewrec) {
|
||||||
// nuovo Record:
|
// nuovo Circuito:
|
||||||
|
await User.setCircuitCmd(mydata.idapp, req.user.username, myrec.name,
|
||||||
|
shared_consts.CIRCUITCMD.CREATE, true, req.user.username, extrarec).then((ris) => {
|
||||||
|
return res.send({ rec: myrec, ris });
|
||||||
|
});
|
||||||
|
|
||||||
// aggiungi il creatore al Circuito stesso
|
// aggiungi il creatore al Circuito stesso
|
||||||
return await User.setCircuitCmd(mydata.idapp, req.user.username, myrec.name,
|
return await User.setCircuitCmd(mydata.idapp, req.user.username, myrec.name,
|
||||||
shared_consts.CIRCUITCMD.SET, true, req.user.username, extrarec).then((ris) => {
|
shared_consts.CIRCUITCMD.SET, true, req.user.username, extrarec).then((ris) => {
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ const TypedError = require('../modules/ErrorHandler');
|
|||||||
|
|
||||||
const { MyGroup } = require('../models/mygroup');
|
const { MyGroup } = require('../models/mygroup');
|
||||||
const { Circuit } = require('../models/circuit');
|
const { Circuit } = require('../models/circuit');
|
||||||
|
const { Account } = require('../models/account');
|
||||||
|
|
||||||
const mongoose = require('mongoose').set('debug', false);
|
const mongoose = require('mongoose').set('debug', false);
|
||||||
|
|
||||||
@@ -1090,6 +1091,16 @@ async function eseguiDbOp(idapp, mydata, locale, req, res) {
|
|||||||
|
|
||||||
ris = populate.rewriteTable('contribtypes');
|
ris = populate.rewriteTable('contribtypes');
|
||||||
|
|
||||||
|
} else if (mydata.dbop === 'CreateAccountCircuits') {
|
||||||
|
|
||||||
|
const allcirc = await Circuit.find({ idapp });
|
||||||
|
|
||||||
|
for (const mycirc of allcirc) {
|
||||||
|
// Il Conto Comunitario prende il nome del circuito !
|
||||||
|
await Account.createAccount(idapp, '', mycirc.name, mycirc.path);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
} else if (mydata.dbop === 'ReplaceUsername') {
|
} else if (mydata.dbop === 'ReplaceUsername') {
|
||||||
|
|
||||||
if (User.isAdmin(req.user.perm)) {
|
if (User.isAdmin(req.user.perm)) {
|
||||||
|
|||||||
@@ -72,6 +72,7 @@ module.exports = {
|
|||||||
},
|
},
|
||||||
|
|
||||||
CIRCUITCMD: {
|
CIRCUITCMD: {
|
||||||
|
CREATE: 1001,
|
||||||
REQ: 2000,
|
REQ: 2000,
|
||||||
SET: 2001,
|
SET: 2001,
|
||||||
REMOVE_FROM_MYLIST: 2144,
|
REMOVE_FROM_MYLIST: 2144,
|
||||||
@@ -513,6 +514,8 @@ module.exports = {
|
|||||||
CIRCUIT_PARAMS: {
|
CIRCUIT_PARAMS: {
|
||||||
SCOPERTO_MIN_GRP: 200,
|
SCOPERTO_MIN_GRP: 200,
|
||||||
SCOPERTO_MAX_GRP: 500,
|
SCOPERTO_MAX_GRP: 500,
|
||||||
|
SCOPERTO_MIN_CONTO_COMUNITARIO: 1000,
|
||||||
|
SCOPERTO_MAX_CONTO_COMUNITARIO: 1000,
|
||||||
},
|
},
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user