Sha256: ff68ec9b0003c5bc6a918460d710a82416a6c7413f8e4be423f98b8599e02e88
Contents?: true
Size: 1.47 KB
Versions: 18
Compression:
Stored size: 1.47 KB
Contents
module Maglove module Widgets class Slider < Base def identifier "slider" end def defaults { slides: "3", height: "auto", margin_bottom: "0px", background_color: "#EEEEEE", buttons_position: "bottom", autoplay: "true", autoplay_timeout: "3000" } end def slider_options data = { class: slider_classes, autoplay: @options[:autoplay], autoplay_timeout: @options[:autoplay_timeout] } { class: "owl-carousel", style: slider_styles, data: data } end def slider_styles style_string @options, :margin, :height, :background_color do |sb| sb.add(:min_height, "120px") sb.add(:overflow, "hidden") end end def slider_classes classes = ["owl-carousel", "owl-loaded", "owl-text-select-on", "owl-theme"] classes.push("position-#{@options[:buttons_position]}") unless @options[:buttons_position].empty? classes.join(" ") end module Helpers def slider_widget(options = {}, &block) widget_block(Widgets::Slider.new(options)) do |widget| haml_tag :div, widget.slider_options do yield if block end end end def slider_item(options = {}, &block) haml_tag :div, class: "item" do yield if block drop_container end end end end end end
Version data entries
18 entries across 18 versions & 1 rubygems