Sha256: fe29bc58da8b7afe93777a31b207a27b66f9981ecae758fc38e1faf0144bde9e

Contents?: true

Size: 1.58 KB

Versions: 60

Compression:

Stored size: 1.58 KB

Contents

require 'rbbt/util/open'

require 'haml'
module WorkflowRESTHelpers

  def workflow_render(template, workflow = nil, task = nil, params = {})
    workflow = consume_parameter(:workflow, params) if workflow.nil?
    task     = consume_parameter(:task, params) if workflow.nil?
    job      = consume_parameter(:job, params) if job.nil?

    template_file = locate_workflow_template(template, workflow, task)

    locals = params.dup
    locals[:workflow] = workflow if workflow
    locals[:task]     = task if task

    if layout
      layout_file = workflow.libdir.www.views[workflow.to_s]["layout.haml"] if workflow.libdir
      layout_file = locate_template("layout") unless layout_file and layout_file.exists?
    else
      layout_file = nil
    end

    if job 
      locals[:job]      = job 
      @step = job
      cache_type = execution_type(workflow, task)
      cache_file = job.file('html')
      render(template_file, locals, layout_file, [task,workflow,job.name] * "-", :cache_type => cache_type, :cache_file => cache_file)
    else
      render(template_file, locals, layout_file, [workflow, task, template_file].compact * "-", :cache_type => :async )
    end
  end

  def workflow_partial(template, workflow = nil, task = nil, params = {})
    workflow = consume_parameter(:workflow, params) if workflow.nil?
    task     = consume_parameter(:task, params) if workflow.nil?

    template_file = locate_workflow_template(template, workflow, task)

    locals = params.dup
    locals[:workflow] = workflow if workflow
    locals[:task]     = task if task

    render_partial(template_file, locals)
  end
end

Version data entries

60 entries across 60 versions & 1 rubygems

Version Path
rbbt-rest-1.8.8 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.8.7 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.8.6 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.8.5 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.8.4 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.8.3 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.8.2 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.8.1 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.8.0 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.20 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.19 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.18 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.17 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.16 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.15 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.14 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.13 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.12 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.11 lib/rbbt/rest/workflow/render.rb
rbbt-rest-1.7.10 lib/rbbt/rest/workflow/render.rb