diff --git a/app/models/kase.rb b/app/models/kase.rb index 8dd0b93..8b140e4 100644 --- a/app/models/kase.rb +++ b/app/models/kase.rb @@ -19,10 +19,17 @@ class Kase < ActiveRecord::Base VALID_COUNTIES = {'Clackamas' => 'C', 'Multnomah' => 'M', 'Washington' => 'W'} validates_presence_of :customer_id - validates_presence_of :referral_type - validates_presence_of :funding_source + validates :open_date, :date => { :before_or_equal_to => Proc.new { Date.today } } + validates_presence_of :referral_source + validates_presence_of :referral_type_id + validates_presence_of :funding_source_id + validates :close_date, :date => { :after => :open_date, :before_or_equal_to => Proc.new { Date.today } }, :allow_blank => true validates_presence_of :disposition + validates_presence_of :close_date, :if => Proc.new {|kase| kase.disposition.name != "In Progress" } validates_inclusion_of :county, :in => VALID_COUNTIES.values + validate do |kase| + kase.errors[:disposition_id] << "cannot be 'In Progress' if case is closed" if kase.close_date.present? && kase.disposition.name == 'In Progress' + end scope :assigned_to, lambda {|user| where(:user_id => user.id) } scope :not_assigned_to, lambda {|user| where('user_id <> ?',user.id)} diff --git a/app/views/kases/_form.html.erb b/app/views/kases/_form.html.erb index e87a45b..0e2e976 100644 --- a/app/views/kases/_form.html.erb +++ b/app/views/kases/_form.html.erb @@ -26,7 +26,7 @@
  • <%= f.label :referral_type_id, "Referral Source Type" %> - <%= f.collection_select :referral_type_id, @referral_types, :id, :name %> + <%= f.collection_select :referral_type_id, @referral_types, :id, :name, :prompt => '' %>
  • diff --git a/public/stylesheets/style.css b/public/stylesheets/style.css index b1949eb..4de6e39 100644 --- a/public/stylesheets/style.css +++ b/public/stylesheets/style.css @@ -998,7 +998,7 @@ body.kases #page-header { position: relative; } -body.kases.show .delete.kase { +body.kases .delete.kase { position: absolute; top: 8px; right: 10px;