Merge branch 'master' into 3901-component-rendering-errors
authorTim Pierce <twp@curoverse.com>
Fri, 26 Sep 2014 19:42:12 +0000 (15:42 -0400)
committerTim Pierce <twp@curoverse.com>
Fri, 26 Sep 2014 19:42:12 +0000 (15:42 -0400)
Conflicts:
apps/workbench/app/helpers/pipeline_instances_helper.rb

1  2 
apps/workbench/app/helpers/pipeline_instances_helper.rb
apps/workbench/app/views/pipeline_instances/_running_component.html.erb

index 7c6e5f01baaf4bd1f63b7f848fd572c96b10459e,ae8384eeeab84cb74d2e590f2300629ed1ccc6c9..06d61e033f12caeb36fc4ed01596c1952e439fbb
@@@ -102,16 -102,21 +102,28 @@@ module PipelineInstancesHelpe
        end
        if c[:job] and c[:job][:uuid] and job[c[:job][:uuid]]
          pj[:job] = job[c[:job][:uuid]]
 -      else
 -        pj[:job] = c[:job].is_a?(Hash) ? c[:job] : {}
 -
 +      elsif c[:job].is_a?(Hash)
 +        pj[:job] = c[:job]
 +        if pj[:job][:started_at].is_a? String
 +          pj[:job][:started_at] = Time.parse(pj[:job][:started_at])
 +        end
 +        if pj[:job][:finished_at].is_a? String
 +          pj[:job][:finished_at] = Time.parse(pj[:job][:finished_at])
 +        end
+         # If necessary, figure out the state based on the other fields.
+         pj[:job][:state] ||= if pj[:job][:cancelled_at]
+                                "Cancelled"
+                              elsif pj[:job][:success] == false
+                                "Failed"
+                              elsif pj[:job][:success] == true
+                                "Complete"
+                              elsif pj[:job][:running] == true
+                                "Running"
+                              else
+                                "Queued"
+                              end
 +      else
 +        pj[:job] = {}
        end
        pj[:percent_done] = 0
        pj[:percent_running] = 0