Class: BootstrapMediaObjectResourceRenderer

Inherits:
ResourceRenderer::ResourceRenderer::Base show all
Defined in:
app/resource_renderers/bootstrap_media_object_resource_renderer.rb

Instance Attribute Summary

Attributes inherited from ResourceRenderer::ResourceRenderer::Base

#helper, #resource

Instance Method Summary collapse

Methods inherited from ResourceRenderer::ResourceRenderer::Base

#association, #display, #initialize, #render, #resource_class

Constructor Details

This class inherits a constructor from ResourceRenderer::ResourceRenderer::Base

Instance Method Details

#media_object(options = {}) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'app/resource_renderers/bootstrap_media_object_resource_renderer.rb', line 2

def media_object(options = {})
  options.reverse_merge!(title_method: :title, body_method: :body, image_method: :image, image_url_method: :url, body: nil, title: nil)
  title            = options.delete(:title)
  title_method     = options.delete(:title_method)
  body_method      = options.delete(:body_method)
  body             = options.delete(:body)
  image_method     = options.delete(:image_method)
  image_url_method = options.delete(:image_url_method)
  image_url        = options.delete(:image_url)

  locals = {
    title: title || @resource.send(title_method),
    body:  body || @resource.send(body_method),
    image_src: image_url || @resource.send(image_method).send(image_url_method),
    link_href: helper.url_for(@resource)
  }

  helper.render partial: 'resource_renderers/bootstrap_media_object_resource_renderer', locals: locals
end