From 69ff0e48b4b50ad3df78dcb4f52915eef6850de9 Mon Sep 17 00:00:00 2001 From: Robin Ward Date: Thu, 1 Dec 2016 11:33:33 -0500 Subject: [PATCH] Remove `SortedMixin` --- .../admin/controllers/admin-user-fields.js.es6 | 16 ++++++---------- .../javascripts/admin/templates/user-fields.hbs | 6 +++--- .../controllers/reorder-categories.js.es6 | 10 ++-------- 3 files changed, 11 insertions(+), 21 deletions(-) diff --git a/app/assets/javascripts/admin/controllers/admin-user-fields.js.es6 b/app/assets/javascripts/admin/controllers/admin-user-fields.js.es6 index 70963a147e5..6b106b075d8 100644 --- a/app/assets/javascripts/admin/controllers/admin-user-fields.js.es6 +++ b/app/assets/javascripts/admin/controllers/admin-user-fields.js.es6 @@ -6,12 +6,8 @@ export default Ember.Controller.extend({ fieldTypes: null, createDisabled: Em.computed.gte('model.length', MAX_FIELDS), - arrangedContent: function() { - return Ember.ArrayProxy.extend(Ember.SortableMixin).create({ - sortProperties: ['position'], - content: this.get('model') - }); - }.property('model'), + fieldSortOrder: ['position'], + sortedFields: Ember.computed.sort('model', 'fieldSortOrder'), actions: { createField() { @@ -20,9 +16,9 @@ export default Ember.Controller.extend({ }, moveUp(f) { - const idx = this.get('arrangedContent').indexOf(f); + const idx = this.get('sortedFields').indexOf(f); if (idx) { - const prev = this.get('arrangedContent').objectAt(idx-1); + const prev = this.get('sortedFields').objectAt(idx-1); const prevPos = prev.get('position'); prev.update({ position: f.get('position') }); @@ -31,9 +27,9 @@ export default Ember.Controller.extend({ }, moveDown(f) { - const idx = this.get('arrangedContent').indexOf(f); + const idx = this.get('sortedFields').indexOf(f); if (idx > -1) { - const next = this.get('arrangedContent').objectAt(idx+1); + const next = this.get('sortedFields').objectAt(idx+1); const nextPos = next.get('position'); next.update({ position: f.get('position') }); diff --git a/app/assets/javascripts/admin/templates/user-fields.hbs b/app/assets/javascripts/admin/templates/user-fields.hbs index 3a89a0e06e9..72e4933052c 100644 --- a/app/assets/javascripts/admin/templates/user-fields.hbs +++ b/app/assets/javascripts/admin/templates/user-fields.hbs @@ -4,11 +4,11 @@

{{i18n 'admin.user_fields.help'}}

{{#if model}} - {{#each arrangedContent as |uf|}} + {{#each sortedFields as |uf|}} {{admin-user-field-item userField=uf fieldTypes=fieldTypes - firstField=arrangedContent.firstObject - lastField=arrangedContent.lastObject + firstField=sortedFields.firstObject + lastField=sortedFields.lastObject destroyAction="destroy" moveUpAction="moveUp" moveDownAction="moveDown"}} diff --git a/app/assets/javascripts/discourse/controllers/reorder-categories.js.es6 b/app/assets/javascripts/discourse/controllers/reorder-categories.js.es6 index 18a000a3884..c975eb5bfb3 100644 --- a/app/assets/javascripts/discourse/controllers/reorder-categories.js.es6 +++ b/app/assets/javascripts/discourse/controllers/reorder-categories.js.es6 @@ -5,8 +5,6 @@ import { popupAjaxError } from 'discourse/lib/ajax-error'; import { on, default as computed } from "ember-addons/ember-computed-decorators"; import Ember from 'ember'; -const SortableArrayProxy = Ember.ArrayProxy.extend(Ember.SortableMixin); - export default Ember.Controller.extend(ModalFunctionality, Ember.Evented, { @on('init') @@ -20,12 +18,8 @@ export default Ember.Controller.extend(ModalFunctionality, Ember.Evented, { return categories.map(c => bufProxy.create({ content: c })); }, - categoriesOrdered: function() { - return SortableArrayProxy.create({ - sortProperties: ['content.position'], - content: this.get('categoriesBuffered') - }); - }.property('categoriesBuffered'), + categoriesSorting: ['position'], + categoriesOrdered: Ember.computed.sort('categoriesBuffered', 'categoriesSorting'), showFixIndices: function() { const cats = this.get('categoriesOrdered');