Class: ArGalleryRenderer

Inherits:
Object
  • Object
show all
Includes:
AgileApplicationHelper, AgileCommonHelper
Defined in:
app/renderers/ar_gallery_renderer.rb

Overview

ArGalleryRenderer renders data for displaying picture gallery on the web page.

Example:

<div id="page">
  <%= agile_render(:ar_gallery) if document.gallery %>
</div>

Instance Attribute Summary

Attributes included from AgileApplicationHelper

#design, #footer_record, #form, #ids, #json_ld, #menu, #menu_item, #options, #page, #page_title, #part, #parts, #record, #site, #tables

Instance Method Summary collapse

Methods included from AgileCommonHelper

agile_choices_for_field, #agile_format_date_time, #agile_format_number, #agile_help_body, #agile_help_button, #agile_help_fields, #agile_help_for_tab, #agile_icon_for_boolean, #agile_name_for_id, #agile_steps_menu_get, #agile_text_for_value, #t, #t_label_for_column, #t_label_for_field, #t_table_name, #url_forward_params

Methods included from AgileApplicationHelper

#_agile_link_to, #_origin, #agile_add2_record_cookie, #agile_add_json_ld, #agile_add_meta_tag, #agile_ajax_link_to, #agile_application_menu, #agile_big_table_choices, #agile_big_table_name_for_value, #agile_choices_for, #agile_choices_for_all_tables, #agile_choices_for_folders, #agile_choices_for_menu, #agile_choices_for_site_policies, #agile_deprecate, #agile_dialog_title, #agile_dont?, #agile_edit_frame, #agile_edit_mode?, #agile_edit_title, #agile_error_messages_for, #agile_flash_messages, #agile_get_json_ld, #agile_get_seo_meta_tags, #agile_get_site, #agile_icon_for_link, #agile_img_alt, #agile_img_alt_tag, #agile_internal_var, #agile_limit_string, #agile_link_for_create, #agile_link_for_edit, #agile_link_for_edit1, #agile_link_menu_tag, #agile_link_to, #agile_menu_class, #agile_new_title, #agile_page_bottom, #agile_page_class, #agile_page_edit_menu, #agile_page_top, #agile_render, #agile_render_part, #agile_submit_tag, #agile_user_can_view, #agile_user_has_role?, #agile_warning_messages_for, #decamelize_type

Constructor Details

#initialize(env, opts = {}) ⇒ ArGalleryRenderer

Object initialization.



41
42
43
44
45
# File 'app/renderers/ar_gallery_renderer.rb', line 41

def initialize( env, opts = {} ) #:nodoc:
  @env  = env
  @opts = opts
  @css  = ''
end

Instance Method Details

#defaultObject

Default ArGallery render method. It will simply put thumbnail pictures side by side and open big picture when clicked on thumbnail.



51
52
53
54
55
56
57
58
59
# File 'app/renderers/ar_gallery_renderer.rb', line 51

def default
  html = '<div class="picture-gallery"><ul>' + new_menu()
  ArGallery.where(doc_id: @opts[:doc_id], doc_type: @opts[:doc_type], active: true).order(:order).each do |picture|
    html += "<li>" + edit_menu(picture)
    html += @env.link_to(@env.image_tag(picture.thumbnail, title: picture.title), picture.picture)
    html += '</li>'
  end
  html += '</ul></div>'
end

#render_cssObject

Return CSS part of code.



72
73
74
# File 'app/renderers/ar_gallery_renderer.rb', line 72

def render_css
  @css
end

#render_htmlObject

Renderer dispatcher. Method returns HTML part of code.



64
65
66
67
# File 'app/renderers/ar_gallery_renderer.rb', line 64

def render_html
  method = @opts[:method] || 'default'
  respond_to?(method) ? send(method) : "Error ArGalleryRenderer: Method #{method} doesn't exist!"
end