|
@@ -88,3 +88,26 @@ _.each(redirections, (newPath, oldPath) => {
|
|
|
}],
|
|
|
});
|
|
|
});
|
|
|
+
|
|
|
+// As it is not possible to use template helpers in the page <head> we create a
|
|
|
+// reactive function whose role is to set any page-specific tag in the <head>
|
|
|
+// using the `kadira:dochead` package. Currently we only use it to display the
|
|
|
+// board title if we are in a board page (see #364) but we may want to support
|
|
|
+// some <meta> tags in the future.
|
|
|
+const appTitle = 'Wekan';
|
|
|
+
|
|
|
+// XXX The `Meteor.startup` should not be necessary -- we don't need to wait for
|
|
|
+// the complete DOM to be ready to call `DocHead.setTitle`. But the problem is
|
|
|
+// that the global variable `Boards` is undefined when this file loads so we
|
|
|
+// wait a bit until hopefully all files are loaded. This will be fixed in a
|
|
|
+// clean way once Meteor will support ES6 modules -- hopefully in Meteor 1.3.
|
|
|
+Meteor.startup(() => {
|
|
|
+ Tracker.autorun(() => {
|
|
|
+ const currentBoard = Boards.findOne(Session.get('currentBoard'));
|
|
|
+ const titleStack = [appTitle];
|
|
|
+ if (currentBoard) {
|
|
|
+ titleStack.push(currentBoard.title);
|
|
|
+ }
|
|
|
+ DocHead.setTitle(titleStack.reverse().join(' - '));
|
|
|
+ });
|
|
|
+});
|