Added ability to change a deliverables type
This commit is contained in:
1 parent
86741878c6
commit
ba8a3400ec
2 files changed
+14
-1
No files matched your search
@@ -63,9 +63,12 @@ class DeliverablesController < ApplicationController
|
|||||||
end
|
end
|
||||||
|
|
||||||
def update
|
def update
|
||||||
# TODO: Handle type change
|
|
||||||
@deliverable = Deliverable.find(params[:deliverable_id])
|
@deliverable = Deliverable.find(params[:deliverable_id])
|
||||||
|
|
||||||
|
if params[:deliverable][:type] != @deliverable.class
|
||||||
|
@deliverable = @deliverable.change_type(params[:deliverable][:type])
|
||||||
|
end
|
||||||
|
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
if @deliverable.update_attributes(params[:deliverable])
|
if @deliverable.update_attributes(params[:deliverable])
|
||||||
@flash = l(:notice_successful_create)
|
@flash = l(:notice_successful_create)
|
||||||
|
|||||||
@@ -15,6 +15,16 @@ class Deliverable < ActiveRecord::Base
|
|||||||
|
|
||||||
return version.fixed_issues.size
|
return version.fixed_issues.size
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def change_type(to)
|
||||||
|
if [FixedDeliverable.name, HourlyDeliverable.name].include?(to)
|
||||||
|
self.type = to
|
||||||
|
self.save!
|
||||||
|
return Deliverable.find(self.id)
|
||||||
|
else
|
||||||
|
return self
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def score
|
def score
|
||||||
return self.progress - self.budget_ratio
|
return self.progress - self.budget_ratio
|
||||||
|
|||||||
Reference in new issue
Block a user