Mercurial > hg > soundsoftware-site
diff app/models/version.rb @ 1464:261b3d9a4903 redmine-2.4
Update to Redmine 2.4 branch rev 12663
author | Chris Cannam |
---|---|
date | Tue, 14 Jan 2014 14:37:42 +0000 |
parents | 433d4f72a19b |
children | e248c7af89ec |
line wrap: on
line diff
--- a/app/models/version.rb Fri Jun 14 09:05:06 2013 +0100 +++ b/app/models/version.rb Tue Jan 14 14:37:42 2014 +0000 @@ -1,5 +1,5 @@ # Redmine - project management software -# Copyright (C) 2006-2012 Jean-Philippe Lang +# Copyright (C) 2006-2013 Jean-Philippe Lang # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -30,25 +30,25 @@ validates_presence_of :name validates_uniqueness_of :name, :scope => [:project_id] validates_length_of :name, :maximum => 60 - validates_format_of :effective_date, :with => /^\d{4}-\d{2}-\d{2}$/, :message => :not_a_date, :allow_nil => true + validates :effective_date, :date => true validates_inclusion_of :status, :in => VERSION_STATUSES validates_inclusion_of :sharing, :in => VERSION_SHARINGS - validate :validate_version scope :named, lambda {|arg| where("LOWER(#{table_name}.name) = LOWER(?)", arg.to_s.strip)} - scope :open, where(:status => 'open') + scope :open, lambda { where(:status => 'open') } scope :visible, lambda {|*args| includes(:project).where(Project.allowed_to_condition(args.first || User.current, :view_issues)) } - safe_attributes 'name', + safe_attributes 'name', 'description', 'effective_date', 'due_date', 'wiki_page_title', 'status', 'sharing', - 'custom_field_values' + 'custom_field_values', + 'custom_fields' # Returns true if +user+ or current user is allowed to view the version def visible?(user=User.current) @@ -97,10 +97,10 @@ end def behind_schedule? - if completed_pourcent == 100 + if completed_percent == 100 return false elsif due_date && start_date - done_date = start_date + ((due_date - start_date+1)* completed_pourcent/100).floor + done_date = start_date + ((due_date - start_date+1)* completed_percent/100).floor return done_date <= Date.today else false # No issues so it's not late @@ -109,7 +109,7 @@ # Returns the completion percentage of this version based on the amount of open/closed issues # and the time spent on the open issues. - def completed_pourcent + def completed_percent if issues_count == 0 0 elsif open_issues_count == 0 @@ -119,8 +119,14 @@ end end + # TODO: remove in Redmine 3.0 + def completed_pourcent + ActiveSupport::Deprecation.warn "Version#completed_pourcent is deprecated and will be removed in Redmine 3.0. Please use #completed_percent instead." + completed_percent + end + # Returns the percentage of issues that have been marked as 'closed'. - def closed_pourcent + def closed_percent if issues_count == 0 0 else @@ -128,6 +134,12 @@ end end + # TODO: remove in Redmine 3.0 + def closed_pourcent + ActiveSupport::Deprecation.warn "Version#closed_pourcent is deprecated and will be removed in Redmine 3.0. Please use #closed_percent instead." + closed_percent + end + # Returns true if the version is overdue: due date reached and some open issues def overdue? effective_date && (effective_date < Date.today) && (open_issues_count > 0) @@ -275,10 +287,4 @@ progress end end - - def validate_version - if effective_date.nil? && @attributes['effective_date'].present? - errors.add :effective_date, :not_a_date - end - end end