Velocipede's User, Sales, and Bike Inventory Web App
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

39 lines
1.3 KiB

class UserTransactions < Netzke::Basepack::Grid
def configure(c)
super
c.model = "Transaction"
c.title = "Transactions"
c.scope = lambda { |rel| rel.where(:customer_id => controller.current_user.id, :customer_type => 'User');}
c.data_store = { auto_load: true }
c.columns = [
:amount,
:item,
{ :name => :bike__shop_id},
{ :name => :vendor, :getter => lambda { |rec|
user = rec.vendor
user.nil? ? "" : "#{user.first_name} #{user.last_name}"
}
},
{ :name => :customer, :getter => lambda { |rec|
user = rec.customer
user.nil? ? "" : "#{user.first_name} #{user.last_name}"
}
},
:created_at
]
c.prohibit_update = true if cannot? :update, Transaction
c.prohibit_create = true if cannot? :create, Transaction
c.prohibit_delete = true if cannot? :delete, Transaction
end
#override with nil to remove actions
def default_bbar
bbar = [ :search ]
bbar.concat [ :apply ] if can? :update, Transaction
bbar.concat [ :add_in_form ] if can? :create, Transaction
bbar
end
end