Module: Apotomo::Rails::ViewHelper

Defined in:
lib/apotomo/rails/view_helper.rb

Overview

#url_for_event

= url_for_event(:paginate, :page => 2)
#=> http://apotomo.de/mouse/process_event_request?type=paginate&source=mouse&page=2

#widget_id

= widget_id
#=> :mouse

#children

- children.each do |kid|
  = render_widget kid

Instance Method Summary collapse

Instance Method Details

#js_generatorObject

Returns the app JavaScript generator.


21
22
23
# File 'lib/apotomo/rails/view_helper.rb', line 21

def js_generator
  Apotomo.js_generator
end

#multipart_form_to_event(type, options = {}, html_options = {}, &block) ⇒ Object

Creates a form that submits itself via an iFrame and executes the response in the parent window. This is needed to upload files via AJAX.

Better call #form_to_event :multipart => true and stay forward-compatible.


29
30
31
32
33
34
35
# File 'lib/apotomo/rails/view_helper.rb', line 29

def multipart_form_to_event(type, options={}, html_options={}, &block)
  options.reverse_merge!      :apotomo_iframe => true
  html_options.reverse_merge! :target         => :apotomo_iframe, :multipart => true

  # i hate rails:
  concat('<iframe id="apotomo_iframe" name="apotomo_iframe" style="display: none;"></iframe>'.html_safe) << form_tag(url_for_event(type, options), html_options, &block)
end

#widget_div(*args, &block) ⇒ Object

Wraps your widget content in a div. See #widget_tag.


38
39
40
# File 'lib/apotomo/rails/view_helper.rb', line 38

def widget_div(*args, &block)
  widget_tag(:div, *args, &block)
end

#widget_tag(tag, options = {}, &block) ⇒ Object

Wraps your widget content in a tag tag and sets the id. Feel free to pass additional html options.

- widget_tag :span do
  p I'm wrapped

will render

<span id="mouse">
  <p>I'm wrapped</p>
</span>

Note that you can set the id and other options manually.

- widget_tag :div, id: "comments", class: "yellow"

56
57
58
59
60
# File 'lib/apotomo/rails/view_helper.rb', line 56

def widget_tag(tag, options={}, &block)
  options.reverse_merge!(:id => widget_id)

  (tag, options, &block)
end