Vulcan/client/views/notifications/notifications.js

34 lines
1,019 B
JavaScript

Template.notifications.helpers({
notifications: function(){
return Notifications.find({userId: Meteor.userId()}, {sort: {timestamp: -1}});
},
notification_count: function(){
var notifications=Notifications.find({userId: Meteor.userId(), read: false}).fetch();
if(notifications.length==0){
return i18n.t('No notifications');
}else if(notifications.length==1){
return i18n.t('1 notification');
}else{
return notifications.length+' '+i18n.t('notifications');
}
},
notification_class: function(){
var notifications=Notifications.find({userId: Meteor.userId(), read: false}).fetch();
if(notifications.length==0)
return 'no-notifications';
}
});
Template.notifications.events({
'click .notifications-toggle': function(e){
e.preventDefault();
$('body').toggleClass('notifications-open');
},
'click .mark-as-read': function(){
Meteor.call('markAllNotificationsAsRead',
function(error, result){
error && console.log(error);
}
);
}
})