| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 | BlazeComponent.extendComponent({  onCreated() {    this.rulesCurrentTab = new ReactiveVar('rulesList');    this.ruleName = new ReactiveVar('');    this.triggerVar = new ReactiveVar();    this.ruleId = new ReactiveVar();  },  setTrigger() {    this.rulesCurrentTab.set('trigger');  },  sanitizeObject(obj) {    Object.keys(obj).forEach(key => {      if (obj[key] === '' || obj[key] === undefined) {        obj[key] = '*';      }    });  },  setRulesList() {    this.rulesCurrentTab.set('rulesList');  },  setAction() {    this.rulesCurrentTab.set('action');  },  setRuleDetails() {    this.rulesCurrentTab.set('ruleDetails');  },  events() {    return [      {        'click .js-delete-rule'() {          const rule = this.currentData();          Rules.remove(rule._id);          Actions.remove(rule.actionId);          Triggers.remove(rule.triggerId);        },        'click .js-goto-trigger'(event) {          event.preventDefault();          const ruleTitle = this.find('#ruleTitle').value;          if (ruleTitle !== undefined && ruleTitle !== '') {            this.find('#ruleTitle').value = '';            this.ruleName.set(ruleTitle);            this.setTrigger();          }        },        'click .js-goto-action'(event) {          event.preventDefault();          // Add user to the trigger          const username = $(event.currentTarget.offsetParent)            .find('.user-name')            .val();          let trigger = this.triggerVar.get();          trigger.userId = '*';          if (username !== undefined) {            const userFound = Users.findOne({ username });            if (userFound !== undefined) {              trigger.userId = userFound._id;              this.triggerVar.set(trigger);            }          }          // Sanitize trigger          trigger = this.triggerVar.get();          this.sanitizeObject(trigger);          this.triggerVar.set(trigger);          this.setAction();        },        'click .js-show-user-field'(event) {          event.preventDefault();          $(event.currentTarget.offsetParent)            .find('.user-details')            .removeClass('hide-element');        },        'click .js-goto-rules'(event) {          event.preventDefault();          this.setRulesList();        },        'click .js-goback'(event) {          event.preventDefault();          if (            this.rulesCurrentTab.get() === 'trigger' ||            this.rulesCurrentTab.get() === 'ruleDetails'          ) {            this.setRulesList();          }          if (this.rulesCurrentTab.get() === 'action') {            this.setTrigger();          }        },        'click .js-goto-details'(event) {          event.preventDefault();          const rule = this.currentData();          this.ruleId.set(rule._id);          this.setRuleDetails();        },      },    ];  },}).register('rulesMain');
 |