123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- BlazeComponent.extendComponent({
- editTitle(evt) {
- evt.preventDefault();
- const newTitle = this.childComponents('inlinedForm')[0].getValue().trim();
- const list = this.currentData();
- if (newTitle) {
- list.rename(newTitle.trim());
- }
- },
- isWatching() {
- const list = this.currentData();
- return list.findWatcher(Meteor.userId());
- },
- events() {
- return [{
- 'click .js-open-list-menu': Popup.open('listAction'),
- submit: this.editTitle,
- }];
- },
- }).register('listHeader');
- Template.listActionPopup.helpers({
- isWatching() {
- return this.findWatcher(Meteor.userId());
- },
- });
- Template.listActionPopup.events({
- 'click .js-add-card'() {
- const listDom = document.getElementById(`js-list-${this._id}`);
- const listComponent = BlazeComponent.getComponentForElement(listDom);
- listComponent.openForm({ position: 'top' });
- Popup.close();
- },
- 'click .js-list-subscribe'() {},
- 'click .js-select-cards'() {
- const cardIds = this.allCards().map((card) => card._id);
- MultiSelection.add(cardIds);
- Popup.close();
- },
- 'click .js-toggle-watch-list'() {
- const currentList = this;
- const level = currentList.findWatcher(Meteor.userId()) ? null : 'watching';
- Meteor.call('watch', 'list', currentList._id, level, (err, ret) => {
- if (!err && ret) Popup.close();
- });
- },
- 'click .js-close-list'(evt) {
- evt.preventDefault();
- this.archive();
- Popup.close();
- },
- 'click .js-remove-list'(evt) {
- const currentList = this;
- evt.preventDefault();
- Lists.remove(currentList._id);
- },
- });
|