Files
openfoodnetwork/app/assets/javascripts/admin/services/variant_unit_manager.js.coffee

35 lines
1.0 KiB
CoffeeScript

angular.module("admin.products").factory "VariantUnitManager", ->
class VariantUnitManager
@getScale = (value, unitType) ->
scaledValue = null
validScales = []
unitScales = VariantUnitManager.unitScales(unitType)
validScales.unshift scale for scale in unitScales when value/scale >= 1
if validScales.length > 0
validScales[0]
else
unitScales[0]
@getUnitName: (scale, unitType) ->
unitNames =
'weight': {1.0: 'g', 1000.0: 'kg', 1000000.0: 'T'}
'volume': {0.001: 'mL', 1.0: 'L', 1000.0: 'kL'}
unitNames[unitType][scale]
@unitScales: (unitType) ->
unitScales =
'weight': [1.0, 1000.0, 1000000.0]
'volume': [0.001, 1.0, 1000.0]
unitScales[unitType]
@variant_unit_options: [
["Weight (g)", "weight_1"],
["Weight (kg)", "weight_1000"],
["Weight (T)", "weight_1000000"],
["Volume (mL)", "volume_0.001"],
["Volume (L)", "volume_1"],
["Volume (kL)", "volume_1000"],
["Items", "items"]
]