diff --git a/app/assets/javascripts/discourse/controllers/composer.js.es6 b/app/assets/javascripts/discourse/controllers/composer.js.es6
index 9a8aa809d29..c5e69a45a17 100644
--- a/app/assets/javascripts/discourse/controllers/composer.js.es6
+++ b/app/assets/javascripts/discourse/controllers/composer.js.es6
@@ -404,7 +404,6 @@ export default Ember.Controller.extend({
save(force) {
const composer = this.get('model');
- const self = this;
// Clear the warning state if we're not showing the checkbox anymore
if (!this.get('showWarning')) {
@@ -437,10 +436,10 @@ export default Ember.Controller.extend({
buttons.push({
"label": I18n.t("composer.reply_here") + "
" + currentTopic.get('fancyTitle') + "
",
"class": "btn btn-reply-here",
- "callback": function() {
+ callback: () => {
composer.set('topic', currentTopic);
composer.set('post', null);
- self.save(true);
+ this.save(true);
}
});
}
@@ -448,9 +447,7 @@ export default Ember.Controller.extend({
buttons.push({
"label": I18n.t("composer.reply_original") + "
" + this.get('model.topic.fancyTitle') + "
",
"class": "btn-primary btn-reply-on-original",
- "callback": function() {
- self.save(true);
- }
+ callback: () => this.save(true)
});
bootbox.dialog(message, buttons, { "classes": "reply-where-modal" });
@@ -471,29 +468,32 @@ export default Ember.Controller.extend({
}
});
- const promise = composer.save({ imageSizes, editReason: this.get("editReason")}).then(function(result) {
+ const promise = composer.save({ imageSizes, editReason: this.get("editReason")}).then(result=> {
if (result.responseJson.action === "enqueued") {
- self.send('postWasEnqueued', result.responseJson);
- self.destroyDraft();
- self.close();
- self.appEvents.trigger('post-stream:refresh');
+ this.send('postWasEnqueued', result.responseJson);
+ this.destroyDraft();
+ this.close();
+ this.appEvents.trigger('post-stream:refresh');
return result;
}
// If user "created a new topic/post" or "replied as a new topic" successfully, remove the draft.
- if (result.responseJson.action === "create_post" || self.get('replyAsNewTopicDraft')) {
- self.destroyDraft();
+ if (result.responseJson.action === "create_post" || this.get('replyAsNewTopicDraft')) {
+ this.destroyDraft();
}
- if (self.get('model.action') === 'edit') {
- self.appEvents.trigger('post-stream:refresh', { id: parseInt(result.responseJson.id) });
+ if (this.get('model.action') === 'edit') {
+ this.appEvents.trigger('post-stream:refresh', { id: parseInt(result.responseJson.id) });
+ if (result.responseJson.post.post_number === 1) {
+ this.appEvents.trigger('header:show-topic', composer.get('topic'));
+ }
} else {
- self.appEvents.trigger('post-stream:refresh');
+ this.appEvents.trigger('post-stream:refresh');
}
if (result.responseJson.action === "create_post") {
- self.appEvents.trigger('post:highlight', result.payload.post_number);
+ this.appEvents.trigger('post:highlight', result.payload.post_number);
}
- self.close();
+ this.close();
const currentUser = Discourse.User.current();
if (composer.get('creatingTopic')) {
@@ -510,9 +510,9 @@ export default Ember.Controller.extend({
}
}
- }).catch(function(error) {
+ }).catch(error => {
composer.set('disableDrafts', false);
- self.appEvents.one('composer:will-open', () => bootbox.alert(error));
+ this.appEvents.one('composer:will-open', () => bootbox.alert(error));
});
if (this.get('application.currentRouteName').split('.')[0] === 'topic' &&
diff --git a/app/assets/javascripts/discourse/models/composer.js.es6 b/app/assets/javascripts/discourse/models/composer.js.es6
index 79ed585bbd4..111a21e7bc3 100644
--- a/app/assets/javascripts/discourse/models/composer.js.es6
+++ b/app/assets/javascripts/discourse/models/composer.js.es6
@@ -552,8 +552,7 @@ const Composer = RestModel.extend({
post.get('post_number') === 1 &&
this.get('topic.details.can_edit')) {
const topicProps = this.getProperties(Object.keys(_edit_topic_serializer));
-
- promise = Topic.update(this.get('topic'), topicProps);
+ promise = Topic.update(this.get('topic'), topicProps);
} else {
promise = Ember.RSVP.resolve();
}