# The User Log Add Item Form class UserLogsAddItem < Netzke::Basepack::Form def configure(c) super c.model = 'ActsAsLoggable::Log' #figure out a better way to do this bike_store = Bike.all.map { |b| [b.id, b.shop_id] } current_user ||= User.find_by_id(session[:selected_user_id]) || controller.current_user bike_id = current_user.bike.nil? ? nil : current_user.bike.id c.items = [ { :no_binding => true, :xtype => 'displayfield', :fieldLabel => "Log for:", :value => "#{current_user.to_s}"}, { :id => :user_logs_add_form_start, :name => :start_date}, { :id => :user_logs_add_form_hours, :no_binding => true, :name => :hours, :xtype => 'field', :fieldLabel => "Hours:", :value => 0 }, { :id => :user_logs_add_form_end, :name => :end_date, :hidden => true }, { :name => :description}, #had to hack acts_as_loggable/log.rb to get this to work { :name => :user_action__action, :field_label => 'Action'}, { :name => :for_bike, :checkboxName => :copy_log, :inputValue => true, :title => "Copy description to a Bike's History?", :xtype => 'fieldset', :checkboxToggle => true, :collapsed => true, :items => [ {:xtype => 'combo', :no_binding => true, :name => :copy_id, :title => 'Bike', :fieldLabel => 'Bike', :store => bike_store, :value => bike_id} ] } ] end js_configure do |c| c.mixin :init_component end end