document-title.js 748 B

123456789101112131415161718192021222324252627282930313233
  1. import Ember from 'ember';
  2. export default Ember.Mixin.create({
  3. title: function(key, value) {
  4. // setter
  5. if (arguments.length > 1) {
  6. this._changeTitle(value);
  7. }
  8. // getter
  9. return document.title;
  10. }.property(),
  11. _changeTitle: function(title) {
  12. if (typeof title === 'string') {
  13. title = {title: title};
  14. }
  15. var complete_title = title.title;
  16. if (typeof title.page !== 'undefined') {
  17. complete_title += ' (' + interpolate(gettext('page %(page)s'), {page:title.page}, true) + ')';
  18. }
  19. if (typeof title.parent !== 'undefined') {
  20. complete_title += ' | ' + title.parent;
  21. }
  22. complete_title += ' | ' + this.get('settings.forum_name');
  23. document.title = complete_title;
  24. }
  25. });