diff --git a/app/assets/javascripts/discourse/components/mobile-nav.js.es6 b/app/assets/javascripts/discourse/components/mobile-nav.js.es6 new file mode 100644 index 000000000..939e3010f --- /dev/null +++ b/app/assets/javascripts/discourse/components/mobile-nav.js.es6 @@ -0,0 +1,38 @@ +export default Ember.Component.extend({ + + _init: function(){ + if (!this.get('site.mobileView')) { + var classes = this.get('desktopClass'); + if (classes) { + classes = classes.split(' '); + this.set('classNames', classes); + } + } + }.on('init'), + + tagName: 'ul', + + classNames: ['mobile-nav'], + + currentPathChanged: function(){ + this.set('expanded', false); + Em.run.next(() => this._updateSelectedHtml()); + }.observes('currentPath'), + + _updateSelectedHtml(){ + const active = this.$('.active'); + if (active && active.html) { + this.set('selectedHtml', active.html()); + } + }, + + didInsertElement(){ + this._updateSelectedHtml(); + }, + + actions: { + toggleExpanded(){ + this.toggleProperty('expanded'); + } + } +}); diff --git a/app/assets/javascripts/discourse/controllers/user-activity.js.es6 b/app/assets/javascripts/discourse/controllers/user-activity.js.es6 index 59c6b6dd8..55ab7846c 100644 --- a/app/assets/javascripts/discourse/controllers/user-activity.js.es6 +++ b/app/assets/javascripts/discourse/controllers/user-activity.js.es6 @@ -3,7 +3,7 @@ import { exportUserArchive } from 'discourse/lib/export-csv'; export default Ember.Controller.extend({ userActionType: null, needs: ["application", "user"], - + currentPath: Em.computed.alias('controllers.application.currentPath'), viewingSelf: Em.computed.alias("controllers.user.viewingSelf"), showBookmarks: Em.computed.alias("controllers.user.showBookmarks"), diff --git a/app/assets/javascripts/discourse/controllers/user-notifications.js.es6 b/app/assets/javascripts/discourse/controllers/user-notifications.js.es6 index 85865c16e..c06137a9e 100644 --- a/app/assets/javascripts/discourse/controllers/user-notifications.js.es6 +++ b/app/assets/javascripts/discourse/controllers/user-notifications.js.es6 @@ -7,6 +7,8 @@ export default Ember.ArrayController.extend({ showDismissButton: Ember.computed.gt('user.total_unread_notifications', 0), + currentPath: Em.computed.alias('controllers.application.currentPath'), + actions: { resetNew: function() { Discourse.ajax('/notifications/mark-read', { method: 'PUT' }).then(() => { diff --git a/app/assets/javascripts/discourse/controllers/user-private-messages.js.es6 b/app/assets/javascripts/discourse/controllers/user-private-messages.js.es6 index eb8d13c72..73c8ff293 100644 --- a/app/assets/javascripts/discourse/controllers/user-private-messages.js.es6 +++ b/app/assets/javascripts/discourse/controllers/user-private-messages.js.es6 @@ -3,11 +3,11 @@ import Topic from 'discourse/models/topic'; export default Ember.Controller.extend({ - needs: ["user-topics-list", "user"], + needs: ["application", "user-topics-list", "user"], pmView: false, - viewingSelf: Em.computed.alias("controllers.user.viewingSelf"), + viewingSelf: Em.computed.alias('controllers.user.viewingSelf'), isGroup: Em.computed.equal('pmView', 'groups'), - + currentPath: Em.computed.alias('controllers.application.currentPath'), selected: Em.computed.alias('controllers.user-topics-list.selected'), bulkSelectEnabled: Em.computed.alias('controllers.user-topics-list.bulkSelectEnabled'), diff --git a/app/assets/javascripts/discourse/controllers/user.js.es6 b/app/assets/javascripts/discourse/controllers/user.js.es6 index 64202d098..24b26957d 100644 --- a/app/assets/javascripts/discourse/controllers/user.js.es6 +++ b/app/assets/javascripts/discourse/controllers/user.js.es6 @@ -6,7 +6,8 @@ import User from 'discourse/models/user'; export default Ember.Controller.extend(CanCheckEmails, { indexStream: false, userActionType: null, - needs: ['user-notifications', 'user-topics-list'], + needs: ['application','user-notifications', 'user-topics-list'], + currentPath: Em.computed.alias('controllers.application.currentPath'), @computed("content.username") viewingSelf(username) { diff --git a/app/assets/javascripts/discourse/templates/components/mobile-nav.hbs b/app/assets/javascripts/discourse/templates/components/mobile-nav.hbs new file mode 100644 index 000000000..889d9eead --- /dev/null +++ b/app/assets/javascripts/discourse/templates/components/mobile-nav.hbs @@ -0,0 +1 @@ +{{yield}} diff --git a/app/assets/javascripts/discourse/templates/mobile/components/mobile-nav.hbs b/app/assets/javascripts/discourse/templates/mobile/components/mobile-nav.hbs new file mode 100644 index 000000000..6b46d500e --- /dev/null +++ b/app/assets/javascripts/discourse/templates/mobile/components/mobile-nav.hbs @@ -0,0 +1,4 @@ +