diff --git a/app/assets/javascripts/admin/customers/controllers/customers_controller.js.coffee b/app/assets/javascripts/admin/customers/controllers/customers_controller.js.coffee index ada3eb2b0e..c8967780dc 100644 --- a/app/assets/javascripts/admin/customers/controllers/customers_controller.js.coffee +++ b/app/assets/javascripts/admin/customers/controllers/customers_controller.js.coffee @@ -1,4 +1,4 @@ -angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filter, Customers, TagRuleResource, CurrentShop, RequestMonitor, Columns, pendingChanges, shops, availableCountries) -> +angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filter, Customers, TagRuleResource, CurrentShop, RequestMonitor, Columns, SortOptions, pendingChanges, shops, availableCountries) -> $scope.shops = shops $scope.availableCountries = availableCountries $scope.RequestMonitor = RequestMonitor @@ -6,9 +6,7 @@ angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filt $scope.customerLimit = 20 $scope.customers = Customers.all $scope.columns = Columns.columns - $scope.sorting = - predicate: "" - reverse: true + $scope.sorting = SortOptions $scope.confirmRefresh = (event) -> event.preventDefault() unless pendingChanges.unsavedCount() == 0 || confirm(t("unsaved_changes_warning")) diff --git a/app/assets/javascripts/admin/index_utils/services/sort_options.js.coffee b/app/assets/javascripts/admin/index_utils/services/sort_options.js.coffee new file mode 100644 index 0000000000..5c3f38fef4 --- /dev/null +++ b/app/assets/javascripts/admin/index_utils/services/sort_options.js.coffee @@ -0,0 +1,4 @@ +angular.module("admin.indexUtils").factory 'SortOptions', -> + new class SortOptions + predicate: "" + reverse: true diff --git a/app/assets/javascripts/admin/line_items/controllers/line_items_controller.js.coffee b/app/assets/javascripts/admin/line_items/controllers/line_items_controller.js.coffee index 4ddee58c48..ecc567c7cc 100644 --- a/app/assets/javascripts/admin/line_items/controllers/line_items_controller.js.coffee +++ b/app/assets/javascripts/admin/line_items/controllers/line_items_controller.js.coffee @@ -1,4 +1,4 @@ -angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout, $http, $q, StatusMessage, Columns, Dereferencer, Orders, LineItems, Enterprises, OrderCycles, VariantUnitManager, RequestMonitor) -> +angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout, $http, $q, StatusMessage, Columns, SortOptions, Dereferencer, Orders, LineItems, Enterprises, OrderCycles, VariantUnitManager, RequestMonitor) -> $scope.initialized = false $scope.RequestMonitor = RequestMonitor $scope.filteredLineItems = [] @@ -10,9 +10,7 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout, $scope.selectedUnitsVariant = {} $scope.sharedResource = false $scope.columns = Columns.columns - $scope.sorting = - predicate: "" - reverse: true + $scope.sorting = SortOptions $scope.confirmRefresh = -> LineItems.allSaved() || confirm(t("unsaved_changes_warning")) diff --git a/spec/javascripts/unit/admin/index_utils/services/sort_options_spec.js.coffee b/spec/javascripts/unit/admin/index_utils/services/sort_options_spec.js.coffee new file mode 100644 index 0000000000..90fd34cf02 --- /dev/null +++ b/spec/javascripts/unit/admin/index_utils/services/sort_options_spec.js.coffee @@ -0,0 +1,15 @@ +describe "SortOptions service", -> + SortOptions = null + + beforeEach -> + module 'admin.indexUtils' + inject (_SortOptions_) -> + SortOptions = _SortOptions_ + + describe "initialising predicate", -> + it "sets predicate to blank", -> + expect(SortOptions.predicate).toEqual "" + + describe "initialising reverse", -> + it "sets reverse to true", -> + expect(SortOptions.reverse).toBe true