page-title.js 960 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import Ember from 'ember';
  2. export default Ember.Service.extend({
  3. indexTitle: '',
  4. forumName: '',
  5. init: function() {
  6. this.setProperties({
  7. 'indexTitle': this.get('settings.forum_index_title'),
  8. 'forumName': this.get('settings.forum_name')
  9. });
  10. },
  11. setTitle: 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('forumName');
  23. document.title = complete_title;
  24. },
  25. setPlaceholderTitle: function() {
  26. document.title = this.get('forumName');
  27. },
  28. setIndexTitle: function() {
  29. document.title = this.get('indexTitle') || this.get('forumName');
  30. }
  31. });