Refactor for better order marking buttons

This commit is contained in:
2015-02-21 23:31:49 +01:00
parent f082bdf191
commit 0ccfe07e13
14 changed files with 74 additions and 58 deletions
@@ -18,19 +18,19 @@ App.List = DS.Model.extend
section: DS.belongsTo('section')
section_id: attr('string')
active: ( -> @get('state') is 'active' ).property('state')
markClosed: ->
isClosed: ->
@set('state', 'closed')
#@set 'has_active_orders', false
@set 'table', null
@markHelped()
@markIsPaid()
markHelped: ->
@isHelped()
@isPaid()
iskHelped: ->
@set 'needs_help', false
markNeedsHelp: ->
isNeedingHelp: ->
@set 'needs_help', true
markNeedsPayment: ->
isNeedingPayment: ->
@set 'needs_payment', true
markIsPaid: ->
isPaid: ->
@set 'needs_payment', false
relevant_orders: (-> @get('orders').filter((o)->o.get('state') isnt 'cancelled')).property('orders.@each.state')
active_orders: (-> @get('orders').filter((o)->o.get('state') is 'placed' or o.get('state') is 'active')).property('orders.@each.state')
@@ -12,19 +12,24 @@ App.Order = DS.Model.extend
placed: (-> @get('state') == 'placed').property('state')
needs_supplier_attention: (-> (@get('state') == 'placed') || (@get('state') == 'active')).property('state')
#display: (->
#return '' unless @get('product_orders')
#@get('product_orders').map((po)-> "#{po.product_name} (#{po.quantity})").join(',')
#).property('product_orders')
markClosed: ->
isClosed: ->
@set 'state', 'closed'
markCancelled: ->
isCancelled: ->
@set 'state', 'cancelled'
markDelivered: ->
@set 'state', 'closed'
markActive: ->
isDelivered: ->
@set 'state', 'delivered'
isActive: ->
@set 'state', 'active'
mark_active: ->
#$.post('/supplier/mark_order_in_process', order_id: id)
Ember.$.post Routes.mark_in_process_suppliers_order_path @get('id')
@isActive()
mark_delivered: ->
Ember.$.post Routes.mark_delivered_suppliers_order_path @get('id')
@isDelivered()
mark_cancelled: ->
Ember.$.post Routes.cancel_suppliers_order_path @get('id')
@isCancelled()
total: (->
@get('product_orders').getEach('total').reduce(((sum, total) -> sum + total), 0)
).property('product_orders.@each.total')