mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Index variant overrides by hub_id x variant_id
This commit is contained in:
@@ -3,4 +3,6 @@ angular.module("ofn.admin").factory "VariantOverrides", (variantOverrides, Index
|
||||
variantOverrides: {}
|
||||
|
||||
constructor: ->
|
||||
@variantOverrides = Indexer.index variantOverrides, 'variant_id'
|
||||
for vo in variantOverrides
|
||||
@variantOverrides[vo.hub_id] ||= {}
|
||||
@variantOverrides[vo.hub_id][vo.variant_id] = vo
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
%td
|
||||
%td {{ variant.options_text }}
|
||||
%td
|
||||
%input{name: 'variant-overrides-{{ variant.id }}-price', type: 'text', ng: {model: 'variantOverrides[variant.id].price'}, placeholder: '{{ variant.price }}'}
|
||||
%input{name: 'variant-overrides-{{ variant.id }}-price', type: 'text', ng: {model: 'variantOverrides[hub.id][variant.id].price'}, placeholder: '{{ variant.price }}'}
|
||||
|
||||
%td
|
||||
%input{name: 'variant-overrides-{{ variant.id }}-count-on-hand', type: 'text', ng: {model: 'variantOverrides[variant.id].count_on_hand'}, placeholder: '{{ variant.on_hand }}'}
|
||||
%input{name: 'variant-overrides-{{ variant.id }}-count-on-hand', type: 'text', ng: {model: 'variantOverrides[hub.id][variant.id].count_on_hand'}, placeholder: '{{ variant.on_hand }}'}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
describe "VariantOverrides service", ->
|
||||
VariantOverrides = null
|
||||
variantOverrides = [
|
||||
{id: 1, hub_id: 10, variant_id: 100, price: 1, count_on_hand: 1}
|
||||
{id: 2, hub_id: 10, variant_id: 200, price: 2, count_on_hand: 2}
|
||||
{id: 3, hub_id: 20, variant_id: 300, price: 3, count_on_hand: 3}
|
||||
]
|
||||
|
||||
beforeEach ->
|
||||
module "ofn.admin"
|
||||
module ($provide) ->
|
||||
$provide.value "variantOverrides", variantOverrides
|
||||
null
|
||||
|
||||
beforeEach inject (_VariantOverrides_) ->
|
||||
VariantOverrides = _VariantOverrides_
|
||||
|
||||
it "indexes variant overrides by hub_id -> variant_id", ->
|
||||
expect(VariantOverrides.variantOverrides).toEqual
|
||||
10:
|
||||
100: {id: 1, hub_id: 10, variant_id: 100, price: 1, count_on_hand: 1}
|
||||
200: {id: 2, hub_id: 10, variant_id: 200, price: 2, count_on_hand: 2}
|
||||
20:
|
||||
300: {id: 3, hub_id: 20, variant_id: 300, price: 3, count_on_hand: 3}
|
||||
Reference in New Issue
Block a user