[#6441] Block logging time on closed contracts or deliverables

This commit is contained in:
Eric Davis
2011-08-08 13:46:28 -07:00
parent 5e2e309304
commit 953587ce46
6 changed files with 186 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
module RedmineContracts
module Patches
module TimeEntryPatch
def self.included(base)
base.extend(ClassMethods)
base.send(:include, InstanceMethods)
base.class_eval do
unloadable
validate :validate_deliverable_status
validate :validate_contract_status
def validate_deliverable_status
if issue.present? && issue.deliverable.present?
errors.add_to_base(:cant_to_closed_deliverable) if issue.deliverable.closed?
end
end
def validate_contract_status
if issue.present? && issue.deliverable.present? && issue.deliverable.contract.present?
errors.add_to_base(:cant_to_closed_contract) if issue.deliverable.contract.closed?
end
end
end
end
module ClassMethods
end
module InstanceMethods
end
end
end
end