Class: Integral::Widgets::SwiperList
- Inherits:
-
Object
- Object
- Integral::Widgets::SwiperList
- Defined in:
- lib/integral/widgets/swiper_list.rb
Overview
Outputs swiper lists
Example Widget Markup <p class=‘integral-widget’ data-widget-type=‘swiper_list’ data-widget-value-list_id=‘1337’ data-widget-value-slide_view_path=‘shared/my_swiper_slide’>
Class Method Summary collapse
-
.default_options ⇒ Object
Default widget options.
-
.render(options = {}) ⇒ Object
Render a swiper list.
Class Method Details
.default_options ⇒ Object
Default widget options
33 34 35 36 37 |
# File 'lib/integral/widgets/swiper_list.rb', line 33 def self. { slide_view_path: 'integral/shared/record_card' } end |
.render(options = {}) ⇒ Object
Render a swiper list
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/integral/widgets/swiper_list.rb', line 10 def self.render( = {}) = .reverse_merge() list_id = [:list_id] raise ArgumentError, 'list_id must be provided as a widget value' unless list_id.present? list = Integral::List.find_by_id(list_id) # TODO: Move most of these options up to SwiperListRenderer as defaults (?) list_opts = { item_renderer: Integral::PartialListItemRenderer, html_classes: '', item_renderer_opts: { partial_path: [:slide_view_path], wrapper_element: 'div', html_classes: 'swiper-slide', image_version: :small } } Integral::SwiperListRenderer.render(list, list_opts) end |