Ember temp commit

This commit is contained in:
2013-09-24 08:47:30 +02:00
parent ebbb5dedfc
commit 5650ada04c
71 changed files with 595 additions and 66 deletions
+28 -20
View File
@@ -1,15 +1,16 @@
class List
include SimplyStored::Couch
include ActiveModel::SerializerSupport
per_page_method :limit_value #kaminari
property :state, default: 'active' # active, #closed
property :needs_help, type: :boolean, default: false
property :needs_payment, type: :boolean, default: false
property :closed_at, type: Time
property :join_requests, type: Array, default: []
property :price, type: Float
property :is_payed, type: :boolean, default: false
property :payed_at, type: Time
property :is_paid, type: :boolean, default: false
property :paid_at, type: Time
has_many :orders, dependent: :destroy
belongs_to :table
@@ -121,11 +122,6 @@ class List
database.view(for_supplier_view({startkey: [supplier.id, range.last], endkey: [supplier.id, range.first], include_docs: true, reduce: false, descending: true}.merge(options)))
end
def mark_as_payed
self.is_payed = true
self.payed_at = Time.now
end
def close!
orders.include_relation(:product_orders)
set_price
@@ -142,6 +138,16 @@ class List
end
end
def needs_help!
self.needs_help = true
if save
for user_id in user_ids
broadcast_user user_id, 'list_needs_help', id: id
end
broadcast_supplier(supplier_id, 'list_needs_help', id: id)
end
end
def is_helped!
self.needs_help = false
if save
@@ -162,6 +168,18 @@ class List
end
end
def is_paid!
self.is_paid = true
self.paid_at ||= Time.now
if save
for user_id in user_ids
broadcast_user user_id, 'list_is_paid', id: id
end
broadcast_supplier supplier_id, 'list_is_paid', id: id
end
end
def move_to_table! to_table
UserTableMove.create list: self, from_table_id: table_id, to_table: to_table
from_table = self.table_id.try(:dup)
@@ -180,16 +198,6 @@ class List
end
end
def needs_help!
self.needs_help = true
if save
for user_id in user_ids
broadcast_user user_id, 'list_needs_help', id: id
end
broadcast_supplier(supplier_id, 'list_needs_help', id: id)
end
end
def approve_join_request_for_user!(user)
if join_requests.include?(user.id)
join_requests.delete(user.id)
@@ -271,8 +279,8 @@ class List
for user_id in user_ids
broadcast_user user_id, 'new_order', order: order.with_products_as_json, total_amount: price
end
broadcast_supplier supplier.id, 'new_order', order.with_products_as_json
broadcast_supplier supplier.id, 'list_update', with_info_as_json
broadcast_supplier supplier.id, 'list_update', list: with_info_as_json
broadcast_supplier supplier.id, 'new_order', order: order.with_products_as_json
order
end