123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- Meteor.subscribe('boards');
- var boardSubsManager = new SubsManager();
- Router.route('/boards', {
- name: 'Boards',
- template: 'boards',
- authenticated: true,
- onBeforeAction: function() {
- Session.set('currentBoard', '');
- Filter.reset();
- this.next();
- }
- });
- Router.route('/boards/:_id/:slug', {
- name: 'Board',
- template: 'board',
- onAfterAction: function() {
- // XXX We probably shouldn't rely on Session
- Session.set('sidebarIsOpen', true);
- Session.set('currentWidget', 'home');
- Session.set('menuWidgetIsOpen', false);
- },
- waitOn: function() {
- var params = this.params;
- Session.set('currentBoard', params._id);
- Session.set('currentCard', null);
- return boardSubsManager.subscribe('board', params._id, params.slug);
- },
- data: function() {
- return Boards.findOne(this.params._id);
- }
- });
- Router.route('/boards/:boardId/:slug/:cardId', {
- name: 'Card',
- template: 'board',
- onAfterAction: function() {
- Tracker.nonreactive(function() {
- if (! Session.get('currentCard') && typeof Sidebar !== 'undefined') {
- Sidebar.hide();
- }
- });
- var params = this.params;
- Session.set('currentBoard', params.boardId);
- Session.set('currentCard', params.cardId);
- },
- waitOn: function() {
- var params = this.params;
- return boardSubsManager.subscribe('board', params.boardId, params.slug);
- },
- data: function() {
- return Boards.findOne(this.params.boardId);
- }
- });
|