Registrazione: scegliere se Telegram o Email
This commit is contained in:
@@ -461,6 +461,18 @@ UserSchema.methods.generateAuthToken = function (req) {
|
||||
});
|
||||
};
|
||||
|
||||
UserSchema.statics.setOnLine = function (idapp, username) {
|
||||
const User = this;
|
||||
|
||||
try {
|
||||
return User.findOneAndUpdate({ idapp, username }, { $set: { lasttimeonline: new Date() } });
|
||||
} catch (e) {
|
||||
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
|
||||
UserSchema.statics.setPermissionsById = function (id, perm) {
|
||||
const user = this;
|
||||
|
||||
@@ -1273,31 +1285,33 @@ UserSchema.statics.createNewReqRegistrationGetLink = async function (idapp, user
|
||||
});
|
||||
|
||||
if (user) {
|
||||
if (!user.date_tokenreg || (!user.tokenreg) || (user.tokenreg && (user.date_tokenreg < new Date().getTime()))) {
|
||||
if (true) {
|
||||
// Se è scaduto, ne crea uno nuovo
|
||||
// Creo il tokenforgot
|
||||
let mycodestr = user._id.toHexString() + new Date().getTime().toString();
|
||||
user.tokenreg = jwt.sign(mycodestr, process.env.SIGNCODE).
|
||||
toString();
|
||||
|
||||
if (user.tokenreg) {
|
||||
try {
|
||||
user.tokenreg = user.tokenreg.replaceAll('.', '');
|
||||
user.tokenreg = user.tokenreg.replaceAll('/', '');
|
||||
user.tokenreg = user.tokenreg.slice(-8);
|
||||
} catch (e) {
|
||||
console.error('err', e);
|
||||
if (!user.date_tokenreg || (!user.tokenreg) || (user.tokenreg && (user.date_tokenreg < new Date().getTime()))) {
|
||||
|
||||
let mycodestr = user._id.toHexString() + new Date().getTime().toString();
|
||||
user.tokenreg = jwt.sign(mycodestr, process.env.SIGNCODE).
|
||||
toString();
|
||||
|
||||
if (user.tokenreg) {
|
||||
try {
|
||||
user.tokenreg = user.tokenreg.replaceAll('.', '');
|
||||
user.tokenreg = user.tokenreg.replaceAll('/', '');
|
||||
user.tokenreg = user.tokenreg.slice(-8);
|
||||
} catch (e) {
|
||||
console.error('err', e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
user.date_tokenreg = tools.AddDate(new Date(), 2);
|
||||
user.date_tokenreg = tools.AddDate(new Date(), 1);
|
||||
|
||||
return await user.save().then(() => {
|
||||
return user.tokenreg;
|
||||
});
|
||||
|
||||
} else {
|
||||
return user.tokenreg;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3535,6 +3549,31 @@ UserSchema.statics.getLastOnlineUsers = async function (idapp) {
|
||||
|
||||
};
|
||||
|
||||
UserSchema.statics.getLastSharedLink = async function (idapp) {
|
||||
const User = this;
|
||||
|
||||
const lastn = 10;
|
||||
|
||||
return await User.find(
|
||||
{
|
||||
idapp,
|
||||
$or: [
|
||||
{ deleted: { $exists: false } },
|
||||
{ deleted: { $exists: true, $eq: false } }],
|
||||
},
|
||||
{
|
||||
username: 1,
|
||||
name: 1,
|
||||
surname: 1,
|
||||
lasttimeonline: 1,
|
||||
'profile.img': 1,
|
||||
index: 1,
|
||||
}).sort({ date_tokenreg: -1 }).limit(lastn).then((arr) => {
|
||||
return arr;
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
UserSchema.statics.getDiffusoriUsers = async function (idapp) {
|
||||
const User = this;
|
||||
|
||||
@@ -4242,7 +4281,7 @@ UserSchema.statics.tooManyReqPassword = async function (idapp, email, set) {
|
||||
|
||||
await User.findOneAndUpdate({ _id: user._id }, { $set: { retry_pwd: user.retry_pwd } });
|
||||
}
|
||||
return user.retry_pwd > maxnum ;
|
||||
return user.retry_pwd > maxnum;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user