From 867947f6b2ddeb38d60f24601d57a6d0e2f61849 Mon Sep 17 00:00:00 2001 From: Andy Brett Date: Sat, 17 Oct 2020 12:42:49 -0700 Subject: [PATCH] refactor availableUnitScales into unitScales --- .../services/variant_unit_manager.js.coffee | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/app/assets/javascripts/admin/products/services/variant_unit_manager.js.coffee b/app/assets/javascripts/admin/products/services/variant_unit_manager.js.coffee index fdddd6efdb..60eb4c3754 100644 --- a/app/assets/javascripts/admin/products/services/variant_unit_manager.js.coffee +++ b/app/assets/javascripts/admin/products/services/variant_unit_manager.js.coffee @@ -29,8 +29,9 @@ angular.module("admin.products").factory "VariantUnitManager", (availableUnits) system: 'metric' @variantUnitOptions: -> + available = availableUnits.split(",") options = for unit_type, _ of @units - for scale in @availableUnitScales(unit_type) + for scale in @unitScales(unit_type, available) name = @getUnitName(scale, unit_type) ["#{I18n.t(unit_type)} (#{name})", "#{unit_type}_#{scale}"] options.push [[I18n.t('items'), 'items']] @@ -53,15 +54,13 @@ angular.module("admin.products").factory "VariantUnitManager", (availableUnits) else '' - @unitScales: (unitType) -> - (parseFloat(scale) for scale in Object.keys(@units[unitType])).sort (a, b) -> - a - b - - @availableUnitScales: (unitType) -> - available = availableUnits.split(",") + @unitScales: (unitType, availableUnits = null) -> + scales = Object.keys(@units[unitType]) units = @units - scales = Object.keys(@units[unitType]).filter (scale) -> - available.includes(units[unitType][scale]['name']) + if availableUnits + scales = scales.filter (scale) -> + availableUnits.includes(units[unitType][scale]['name']) + (parseFloat(scale) for scale in scales).sort (a, b) -> a - b