From bd0c2a74fcd10ab03fbf1e92ad80ca36b410ec4b Mon Sep 17 00:00:00 2001 From: Robin Ward <robin.ward@gmail.com> Date: Thu, 6 Feb 2014 14:37:08 -0500 Subject: [PATCH] Return a promise from `Discourse.Group.findAll()` --- .../admin/controllers/admin_groups_controller.js | 7 ++++--- app/assets/javascripts/discourse/models/group.js | 8 +++----- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/app/assets/javascripts/admin/controllers/admin_groups_controller.js b/app/assets/javascripts/admin/controllers/admin_groups_controller.js index bf0f47fb7..6940ba931 100644 --- a/app/assets/javascripts/admin/controllers/admin_groups_controller.js +++ b/app/assets/javascripts/admin/controllers/admin_groups_controller.js @@ -1,6 +1,5 @@ Discourse.AdminGroupsController = Ember.Controller.extend({ itemController: 'adminGroup', - aliasLevels: null, actions: { edit: function(group){ @@ -13,8 +12,10 @@ Discourse.AdminGroupsController = Ember.Controller.extend({ self.set('refreshingAutoGroups', true); Discourse.ajax('/admin/groups/refresh_automatic_groups', {type: 'POST'}).then(function() { - self.set('model', Discourse.Group.findAll()); - self.set('refreshingAutoGroups', false); + return Discourse.Group.findAll().then(function(groups) { + self.set('model', groups); + self.set('refreshingAutoGroups', false); + }); }); }, diff --git a/app/assets/javascripts/discourse/models/group.js b/app/assets/javascripts/discourse/models/group.js index 7ab7c95e0..105a30117 100644 --- a/app/assets/javascripts/discourse/models/group.js +++ b/app/assets/javascripts/discourse/models/group.js @@ -122,15 +122,13 @@ Discourse.Group = Discourse.Model.extend({ Discourse.Group.reopenClass({ findAll: function(){ - var list = Discourse.SelectableArray.create(); - - Discourse.ajax("/admin/groups.json").then(function(groups){ + return Discourse.ajax("/admin/groups.json").then(function(groups){ + var list = Discourse.SelectableArray.create(); _.each(groups,function(group){ list.addObject(Discourse.Group.create(group)); }); + return list; }); - - return list; }, aliasLevelOptions: function() {