mirror of
https://github.com/wekan/wekan.git
synced 2025-04-22 04:57:07 -04:00
- [Improve notifications](https://github.com/wekan/wekan/pull/1948).
Thanks to Akuket ! Closes #1304
This commit is contained in:
parent
a90f648d5e
commit
e9f8e150e7
6 changed files with 3 additions and 60 deletions
|
@ -17,7 +17,6 @@ template(name="memberMenuPopup")
|
|||
li: a.js-change-avatar {{_ 'edit-avatar'}}
|
||||
li: a.js-change-password {{_ 'changePasswordPopup-title'}}
|
||||
li: a.js-change-language {{_ 'changeLanguagePopup-title'}}
|
||||
li: a.js-edit-notification {{_ 'editNotificationPopup-title'}}
|
||||
if currentUser.isAdmin
|
||||
li: a.js-go-setting(href="{{pathFor 'setting'}}") {{_ 'admin-panel'}}
|
||||
hr
|
||||
|
@ -50,23 +49,6 @@ template(name="editProfilePopup")
|
|||
input.js-profile-email(type="email" value="{{emails.[0].address}}" readonly)
|
||||
input.primary.wide(type="submit" value="{{_ 'save'}}")
|
||||
|
||||
template(name="editNotificationPopup")
|
||||
ul.pop-over-list
|
||||
li
|
||||
a.js-toggle-tag-notify-watch
|
||||
i.fa.fa-eye.colorful
|
||||
| {{_ 'watching'}}
|
||||
if hasTag "notify-watch"
|
||||
i.fa.fa-check
|
||||
span.sub-name {{_ 'notify-watch'}}
|
||||
li
|
||||
a.js-toggle-tag-notify-participate
|
||||
i.fa.fa-bell.colorful
|
||||
| {{_ 'tracking'}}
|
||||
if hasTag "notify-participate"
|
||||
i.fa.fa-check
|
||||
span.sub-name {{_ 'notify-participate'}}
|
||||
|
||||
template(name="changePasswordPopup")
|
||||
+atForm(state='changePwd')
|
||||
|
||||
|
|
|
@ -9,7 +9,6 @@ Template.memberMenuPopup.events({
|
|||
'click .js-change-avatar': Popup.open('changeAvatar'),
|
||||
'click .js-change-password': Popup.open('changePassword'),
|
||||
'click .js-change-language': Popup.open('changeLanguage'),
|
||||
'click .js-edit-notification': Popup.open('editNotification'),
|
||||
'click .js-logout'(evt) {
|
||||
evt.preventDefault();
|
||||
|
||||
|
@ -89,25 +88,6 @@ Template.editProfilePopup.events({
|
|||
},
|
||||
});
|
||||
|
||||
Template.editNotificationPopup.helpers({
|
||||
hasTag(tag) {
|
||||
const user = Meteor.user();
|
||||
return user && user.hasTag(tag);
|
||||
},
|
||||
});
|
||||
|
||||
// we defined github like rules, see: https://github.com/settings/notifications
|
||||
Template.editNotificationPopup.events({
|
||||
'click .js-toggle-tag-notify-participate'() {
|
||||
const user = Meteor.user();
|
||||
if (user) user.toggleTag('notify-participate');
|
||||
},
|
||||
'click .js-toggle-tag-notify-watch'() {
|
||||
const user = Meteor.user();
|
||||
if (user) user.toggleTag('notify-watch');
|
||||
},
|
||||
});
|
||||
|
||||
// XXX For some reason the useraccounts autofocus isnt working in this case.
|
||||
// See https://github.com/meteor-useraccounts/core/issues/384
|
||||
Template.changePasswordPopup.onRendered(function () {
|
||||
|
|
|
@ -143,18 +143,6 @@ if (Meteor.isServer) {
|
|||
}
|
||||
if (board) {
|
||||
const watchingUsers = _.pluck(_.where(board.watchers, {level: 'watching'}), 'userId');
|
||||
const trackingUsers = _.pluck(_.where(board.watchers, {level: 'tracking'}), 'userId');
|
||||
const mutedUsers = _.pluck(_.where(board.watchers, {level: 'muted'}), 'userId');
|
||||
switch(board.getWatchDefault()) {
|
||||
case 'muted':
|
||||
participants = _.intersection(participants, trackingUsers);
|
||||
watchers = _.intersection(watchers, trackingUsers);
|
||||
break;
|
||||
case 'tracking':
|
||||
participants = _.difference(participants, mutedUsers);
|
||||
watchers = _.difference(watchers, mutedUsers);
|
||||
break;
|
||||
}
|
||||
watchers = _.union(watchers, watchingUsers || []);
|
||||
}
|
||||
|
||||
|
|
|
@ -116,6 +116,7 @@ if (Meteor.isServer) {
|
|||
url: FlowRouter.url('sign-up'),
|
||||
};
|
||||
const lang = author.getLanguage();
|
||||
|
||||
Email.send({
|
||||
to: icode.email,
|
||||
from: Accounts.emailTemplates.from,
|
||||
|
|
|
@ -89,10 +89,6 @@ Users.attachSchema(new SimpleSchema({
|
|||
type: [String],
|
||||
optional: true,
|
||||
},
|
||||
'profile.tags': {
|
||||
type: [String],
|
||||
optional: true,
|
||||
},
|
||||
'profile.icode': {
|
||||
type: String,
|
||||
optional: true,
|
||||
|
|
|
@ -25,16 +25,12 @@ Notifications = {
|
|||
participants.forEach((userId) => {
|
||||
if (userMap[userId]) return;
|
||||
const user = Users.findOne(userId);
|
||||
if (user && user.hasTag('notify-participate')) {
|
||||
userMap[userId] = user;
|
||||
}
|
||||
userMap[userId] = user;
|
||||
});
|
||||
watchers.forEach((userId) => {
|
||||
if (userMap[userId]) return;
|
||||
const user = Users.findOne(userId);
|
||||
if (user && user.hasTag('notify-watch')) {
|
||||
userMap[userId] = user;
|
||||
}
|
||||
userMap[userId] = user;
|
||||
});
|
||||
return _.map(userMap, (v) => v);
|
||||
},
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue