diff --git a/app/assets/javascripts/discourse/mixins/scroll_top.js b/app/assets/javascripts/discourse/mixins/scroll_top.js index da92d81bf..9ec896ccc 100644 --- a/app/assets/javascripts/discourse/mixins/scroll_top.js +++ b/app/assets/javascripts/discourse/mixins/scroll_top.js @@ -7,7 +7,6 @@ @module Discourse **/ Discourse.ScrollTop = Em.Mixin.create({ - _scrollTop: function() { Em.run.schedule('afterRender', function() { $(document).scrollTop(0); diff --git a/app/assets/javascripts/discourse/views/preferences-about.js.es6 b/app/assets/javascripts/discourse/views/preferences-about.js.es6 new file mode 100644 index 000000000..63d6600eb --- /dev/null +++ b/app/assets/javascripts/discourse/views/preferences-about.js.es6 @@ -0,0 +1,11 @@ +export default Ember.View.extend({ + templateName: 'user/about', + classNames: ['user-preferences'], + + _focusAbout: function() { + var self = this; + Ember.run.schedule('afterRender', function() { + self.$('textarea').focus(); + }); + }.on('didInsertElement') +}); diff --git a/app/assets/javascripts/discourse/views/preferences-email.js.es6 b/app/assets/javascripts/discourse/views/preferences-email.js.es6 new file mode 100644 index 000000000..766a8c90a --- /dev/null +++ b/app/assets/javascripts/discourse/views/preferences-email.js.es6 @@ -0,0 +1,9 @@ +export default Em.View.extend({ + templateName: 'user/email', + classNames: ['user-preferences'], + _focusField: function() { + Em.run.schedule('afterRender', function() { + $('#change_email').focus(); + }); + }.on('didInsertElement') +}); diff --git a/app/assets/javascripts/discourse/views/user/preferences_username_view.js b/app/assets/javascripts/discourse/views/preferences-username.js.es6 similarity index 50% rename from app/assets/javascripts/discourse/views/user/preferences_username_view.js rename to app/assets/javascripts/discourse/views/preferences-username.js.es6 index c553fa8c0..e28961e6e 100644 --- a/app/assets/javascripts/discourse/views/user/preferences_username_view.js +++ b/app/assets/javascripts/discourse/views/preferences-username.js.es6 @@ -1,18 +1,12 @@ -/** - This view handles rendering of a user's username preferences - - @class PreferencesUsernameView - @extends Discourse.View - @namespace Discourse - @module Discourse -**/ -Discourse.PreferencesUsernameView = Discourse.View.extend({ +export default Ember.View.extend({ templateName: 'user/username', classNames: ['user-preferences'], - didInsertElement: function() { - return $('#change_username').focus(); - }, + _focusUsername: function() { + Em.run.schedule('afterRender', function() { + $('#change_username').focus(); + }); + }.on('didInsertElement'), keyDown: function(e) { if (e.keyCode === 13) { @@ -24,7 +18,4 @@ Discourse.PreferencesUsernameView = Discourse.View.extend({ } } } - }); - - diff --git a/app/assets/javascripts/discourse/views/user/preferences_view.js b/app/assets/javascripts/discourse/views/preferences.js.es6 similarity index 59% rename from app/assets/javascripts/discourse/views/user/preferences_view.js rename to app/assets/javascripts/discourse/views/preferences.js.es6 index de34a7cbf..597f88fd7 100644 --- a/app/assets/javascripts/discourse/views/user/preferences_view.js +++ b/app/assets/javascripts/discourse/views/preferences.js.es6 @@ -1,4 +1,4 @@ -Discourse.PreferencesView = Discourse.View.extend({ +export default Ember.View.extend({ templateName: 'user/preferences', classNames: ['user-preferences'] }); diff --git a/app/assets/javascripts/discourse/views/user-invited.js.es6 b/app/assets/javascripts/discourse/views/user-invited.js.es6 new file mode 100644 index 000000000..dc4f8dc40 --- /dev/null +++ b/app/assets/javascripts/discourse/views/user-invited.js.es6 @@ -0,0 +1,3 @@ +export default Ember.View.extend({ + templateName: 'user/invited' +}); diff --git a/app/assets/javascripts/discourse/views/user.js.es6 b/app/assets/javascripts/discourse/views/user.js.es6 new file mode 100644 index 000000000..25413955b --- /dev/null +++ b/app/assets/javascripts/discourse/views/user.js.es6 @@ -0,0 +1,11 @@ +export default Ember.View.extend(Discourse.ScrollTop, { + templateName: 'user/user', + userBinding: 'controller.content', + + updateTitle: function() { + var username = this.get('user.username'); + if (username) { + Discourse.set('title', "" + (I18n.t("user.profile")) + " - " + username); + } + }.observes('user.loaded', 'user.username') +}); diff --git a/app/assets/javascripts/discourse/views/user/preferences_about_view.js b/app/assets/javascripts/discourse/views/user/preferences_about_view.js deleted file mode 100644 index 258e64bb6..000000000 --- a/app/assets/javascripts/discourse/views/user/preferences_about_view.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - This view handles rendering of a user's bio editor - - @class PreferencesAboutView - @extends Discourse.View - @namespace Discourse - @module Discourse -**/ -Discourse.PreferencesAboutView = Discourse.View.extend({ - templateName: 'user/about', - classNames: ['user-preferences'], - - didInsertElement: function() { - this.$('textarea').focus(); - } -}); - - diff --git a/app/assets/javascripts/discourse/views/user/preferences_email_view.js b/app/assets/javascripts/discourse/views/user/preferences_email_view.js deleted file mode 100644 index 63031a769..000000000 --- a/app/assets/javascripts/discourse/views/user/preferences_email_view.js +++ /dev/null @@ -1,17 +0,0 @@ -/** - This view handles rendering of a user's email preferences - - @class PreferencesEmailView - @extends Discourse.View - @namespace Discourse - @module Discourse -**/ -Discourse.PreferencesEmailView = Discourse.View.extend({ - templateName: 'user/email', - classNames: ['user-preferences'], - didInsertElement: function() { - return $('#change_email').focus(); - } -}); - - diff --git a/app/assets/javascripts/discourse/views/user/user_invited_view.js b/app/assets/javascripts/discourse/views/user/user_invited_view.js deleted file mode 100644 index 37849ef0f..000000000 --- a/app/assets/javascripts/discourse/views/user/user_invited_view.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - This view handles rendering of a user's invited list - - @class UserInvitedView - @extends Discourse.View - @namespace Discourse - @module Discourse -**/ -Discourse.UserInvitedView = Discourse.View.extend({ - templateName: 'user/invited' -}); - - diff --git a/app/assets/javascripts/discourse/views/user/user_view.js b/app/assets/javascripts/discourse/views/user/user_view.js deleted file mode 100644 index 86c8a5ff5..000000000 --- a/app/assets/javascripts/discourse/views/user/user_view.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - This view handles rendering of a user including the navigational menu - - @class UserView - @extends Discourse.View - @namespace Discourse - @module Discourse -**/ -Discourse.UserView = Discourse.View.extend({ - templateName: 'user/user', - userBinding: 'controller.content', - - updateTitle: function() { - var username; - username = this.get('user.username'); - if (username) { - return Discourse.set('title', "" + (I18n.t("user.profile")) + " - " + username); - } - }.observes('user.loaded', 'user.username'), - - didInsertElement: function() { - window.scrollTo(0, 0); - } - -}); - -