2872: Merge branch 'master' into 2872-folder-nav
[arvados.git] / apps / workbench / app / models / pipeline_instance.rb
index f6dbf4003fbbe41961ae2601f9d85b39d58dc1d2..c3b14755f3fb6f8dbdf77d3630e689797cca8eea 100644 (file)
@@ -1,6 +1,18 @@
 class PipelineInstance < ArvadosBase
   attr_accessor :pipeline_template
 
+  def self.goes_in_projects?
+    true
+  end
+
+  def content_summary
+    begin
+      PipelineTemplate.find(pipeline_template_uuid).name
+    rescue
+      super
+    end
+  end
+
   def update_job_parameters(new_params)
     self.components[:steps].each_with_index do |step, i|
       step[:params].each do |param|
@@ -16,12 +28,18 @@ class PipelineInstance < ArvadosBase
       end
     end
   end
-
-  def attribute_editable?(attr)
-    attr == 'name'
+  
+  def attribute_editable? attr, *args
+    super && (attr.to_sym == :name ||
+              (attr.to_sym == :components and
+               (self.state == 'New' || self.state == 'Ready')))
   end
 
   def attributes_for_display
     super.reject { |k,v| k == 'components' }
   end
+
+  def self.creatable?
+    false
+  end
 end