diff options
Diffstat (limited to 'ui/imports/ui/components/alarm-icons/alarm-icons.js')
-rw-r--r-- | ui/imports/ui/components/alarm-icons/alarm-icons.js | 31 |
1 files changed, 28 insertions, 3 deletions
diff --git a/ui/imports/ui/components/alarm-icons/alarm-icons.js b/ui/imports/ui/components/alarm-icons/alarm-icons.js index 5c7af31..e86f8d8 100644 --- a/ui/imports/ui/components/alarm-icons/alarm-icons.js +++ b/ui/imports/ui/components/alarm-icons/alarm-icons.js @@ -13,6 +13,9 @@ import '/imports/ui/components/breadcrumb/breadcrumb'; import { Messages } from '/imports/api/messages/messages'; import { Roles } from 'meteor/alanning:roles'; +import { ReactiveDict } from 'meteor/reactive-dict'; + +import { Configurations } from '/imports/api/configurations/configurations'; import './alarm-icons.html'; @@ -23,10 +26,24 @@ import './alarm-icons.html'; Template.alarmIcons.onCreated(function () { let instance = this; + instance.state = new ReactiveDict(); + instance.state.setDefault({ + msgsViewBackDelta: 1 + }); + instance.autorun(function () { - instance.subscribe('messages/count?level', 'info'); - instance.subscribe('messages/count?level', 'warning'); - instance.subscribe('messages/count?level', 'error'); + instance.subscribe('configurations?user'); + Configurations.find({user_id: Meteor.userId()}).forEach((conf) => { + instance.state.set('msgsViewBackDelta', conf.messages_view_backward_delta); + }); + }); + + instance.autorun(function () { + let msgsViewBackDelta = instance.state.get('msgsViewBackDelta'); + + instance.subscribe('messages/count?backDelta&level', msgsViewBackDelta, 'info'); + instance.subscribe('messages/count?backDelta&level', msgsViewBackDelta, 'warning'); + instance.subscribe('messages/count?backDelta&level', msgsViewBackDelta, 'error'); }); }); @@ -50,4 +67,12 @@ Template.alarmIcons.helpers({ errorsCount: function(){ return Messages.find({level:'error'}).count(); }, + + msgCounterName: function (level) { + let instance = Template.instance(); + let msgsViewBackDelta = instance.state.get('msgsViewBackDelta'); + let counterName = `messages/count?backDelta=${msgsViewBackDelta}&level=${level}`; + + return counterName; + } }); |