mirror of
https://github.com/plankanban/planka.git
synced 2025-12-21 09:15:51 +03:00
@@ -38,13 +38,23 @@ module.exports = {
|
||||
values.email = values.email.toLowerCase();
|
||||
}
|
||||
|
||||
let isOnlyEmailChange = false;
|
||||
let isOnlyPasswordChange = false;
|
||||
if (_.isNull(values.apiKey)) {
|
||||
Object.assign(values, {
|
||||
apiKeyPrefix: null,
|
||||
apiKeyHash: null,
|
||||
apiKeyCreatedAt: null,
|
||||
});
|
||||
|
||||
delete values.apiKey;
|
||||
}
|
||||
|
||||
let isOnlyPrivateFieldsChange = false;
|
||||
let isOnlyPersonalFieldsChange = false;
|
||||
let isOnlyPasswordChange = false;
|
||||
let isDeactivatedChangeToTrue = false;
|
||||
|
||||
if (!_.isUndefined(values.email) && Object.keys(values).length === 1) {
|
||||
isOnlyEmailChange = true;
|
||||
if (_.difference(Object.keys(values), User.PRIVATE_FIELD_NAMES).length === 0) {
|
||||
isOnlyPrivateFieldsChange = true;
|
||||
}
|
||||
|
||||
if (_.difference(Object.keys(values), User.PERSONAL_FIELD_NAMES).length === 0) {
|
||||
@@ -64,6 +74,10 @@ module.exports = {
|
||||
values.username = values.username.toLowerCase();
|
||||
}
|
||||
|
||||
if (values.apiKeyHash) {
|
||||
values.apiKeyCreatedAt = new Date().toISOString();
|
||||
}
|
||||
|
||||
if (values.isDeactivated && values.isDeactivated !== inputs.record.isDeactivated) {
|
||||
isDeactivatedChangeToTrue = true;
|
||||
}
|
||||
@@ -154,7 +168,7 @@ module.exports = {
|
||||
);
|
||||
});
|
||||
|
||||
if (!isOnlyEmailChange) {
|
||||
if (!isOnlyPrivateFieldsChange) {
|
||||
if (inputs.record.role === User.Roles.ADMIN && user.role !== User.Roles.ADMIN) {
|
||||
const managerProjectIds = await sails.helpers.users.getManagerProjectIds(user.id);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user