From 019191a944641bcb3458c72c16e7bcbb96efc5eb Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan Date: Wed, 19 Aug 2015 09:31:09 +0800 Subject: [PATCH 1/2] FIX: undoDeleteState() should restore delete button. --- app/assets/javascripts/discourse/models/post.js.es6 | 1 + 1 file changed, 1 insertion(+) diff --git a/app/assets/javascripts/discourse/models/post.js.es6 b/app/assets/javascripts/discourse/models/post.js.es6 index c8c4b400ffd..8c12025ee4e 100644 --- a/app/assets/javascripts/discourse/models/post.js.es6 +++ b/app/assets/javascripts/discourse/models/post.js.es6 @@ -220,6 +220,7 @@ const Post = RestModel.extend({ cooked: this.get('oldCooked'), version: this.get('version') - 1, can_recover: false, + can_delete: true, user_deleted: false }); } From 33260f320311ca4dc87277e7427aec93bddcaa10 Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan Date: Wed, 19 Aug 2015 10:44:32 +0800 Subject: [PATCH 2/2] FIX: Errors raised for recovering post not being handled. --- app/assets/javascripts/discourse/models/post.js.es6 | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/discourse/models/post.js.es6 b/app/assets/javascripts/discourse/models/post.js.es6 index 8c12025ee4e..51e586014ea 100644 --- a/app/assets/javascripts/discourse/models/post.js.es6 +++ b/app/assets/javascripts/discourse/models/post.js.es6 @@ -162,7 +162,9 @@ const Post = RestModel.extend({ // Recover a deleted post recover() { - const post = this; + const post = this, + initProperties = post.getProperties('deleted_at', 'deleted_by', 'user_deleted', 'can_delete'); + post.setProperties({ deleted_at: null, deleted_by: null, @@ -178,6 +180,9 @@ const Post = RestModel.extend({ can_delete: true, version: data.version }); + }).catch(function(error) { + popupAjaxError(error); + post.setProperties(initProperties); }); },