diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index c5adfc14..921c982d 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -15,6 +15,21 @@ module ApplicationHelper end end + def show_time(length) + h = length / 60 + min = length - h * 60 + + if h != 0 + if min != 0 + "#{h} h #{min} min" + else + "#{h} h" + end + else + "#{min} min" + end + end + def add_association_link(association_name, form_builder, div_class, html_options = {}) link_to_add_association "Add " + association_name.to_s.singularize, form_builder, div_class, html_options.merge(:class => "assoc btn btn-success") end diff --git a/app/models/event_type.rb b/app/models/event_type.rb index bf5efab3..9bf7d734 100644 --- a/app/models/event_type.rb +++ b/app/models/event_type.rb @@ -2,4 +2,6 @@ class EventType < ActiveRecord::Base attr_accessible :title, :length, :minimum_abstract_length, :maximum_abstract_length belongs_to :conference + + validates :length, :numericality => {:greater_than => 0} end diff --git a/app/views/proposal/_proposal_form.html.haml b/app/views/proposal/_proposal_form.html.haml index d309b55a..6159c54a 100644 --- a/app/views/proposal/_proposal_form.html.haml +++ b/app/views/proposal/_proposal_form.html.haml @@ -14,7 +14,7 @@ %br %br - else - = f.input :event_type_id,:as => :select, :collection => @event_types, :include_blank => false, :label => "Session Type" + = f.input :event_type_id,:as => :select, :collection => @event_types.map {|x| ["#{x.title} - #{show_time(x.length)}", x.id]}, :include_blank => false, :label => "Session Type" = f.input :require_registration = f.input :abstract, :input_html => {:rows => 5, :class => "span11"}, :required => true, :label => "Session Abstract"