Sha256: 07fa696cd99909406ac2005006d97334c9519a817ab9a059fe8c9763d5b05f51

Contents?: true

Size: 1.1 KB

Versions: 1

Compression:

Stored size: 1.1 KB

Contents

class Tramway::Landing::BlockForm < ::Tramway::Core::ExtendedApplicationForm
  properties :title,
    :background,
    :view_state,
    :block_type,
    :position,
    :navbar_link,
    :anchor,
    :description,
    :link_object_type,
    :link_object_id,
    :button_title,
    :button_link,
    :view_name

  def initialize(object = nil)
    super(object).tap do
      form_properties title: :string,
        background: :file,
        position: :numeric,
        block_type: :default,
        navbar_link: :default,
        anchor: :string,
        description: :ckeditor,
        link_object_type: :default,
        link_object_id: :numeric,
        button_title: :string,
        button_link: :string,
        view_name: :string
    end
  end

  def button_title
    model.button ||= {}
    model.button['title'] || ""
  end

  def button_link
    model.button ||= {}
    model.button['link'] || ""
  end

  def button_title=(value)
    model.button ||= {}
    model.button[:title] = value
    model.save
  end

  def button_link=(value)
    model.button ||= {}
    model.button[:link] = value
    model.save
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tramway-landing-1.8 app/forms/tramway/landing/block_form.rb