From 9bbdacc79a89667e0d6f1ed30c415e5350ad468b Mon Sep 17 00:00:00 2001 From: Liming Xie Date: Tue, 5 Jan 2016 23:26:02 +0800 Subject: Add notification, allow watch boards / lists / cards --- client/components/users/userHeader.jade | 18 ++++++++++++++++++ client/components/users/userHeader.js | 20 ++++++++++++++++++++ 2 files changed, 38 insertions(+) (limited to 'client/components/users') diff --git a/client/components/users/userHeader.jade b/client/components/users/userHeader.jade index 8e988c8e..cae768fb 100644 --- a/client/components/users/userHeader.jade +++ b/client/components/users/userHeader.jade @@ -15,6 +15,7 @@ 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'}} hr ul.pop-over-list li: a.js-logout {{_ 'log-out'}} @@ -32,6 +33,23 @@ template(name="editProfilePopup") input.js-profile-initials(type="text" value=profile.initials) 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-user.colorful + | {{_ 'tracking'}} + if hasTag "notify-participate" + i.fa.fa-check + span.sub-name {{_ 'notify-participate'}} + template(name="changePasswordPopup") +atForm(state='changePwd') diff --git a/client/components/users/userHeader.js b/client/components/users/userHeader.js index a478da0c..10fdf699 100644 --- a/client/components/users/userHeader.js +++ b/client/components/users/userHeader.js @@ -8,6 +8,7 @@ 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(); @@ -33,6 +34,25 @@ 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() { -- cgit v1.2.3-1-g7c22