Sha256: 4dd3c9df2b2938e930f47a108432dfeb55cc1b60cc182b13b6b3caf4e1278cd4

Contents?: true

Size: 1.16 KB

Versions: 59

Compression:

Stored size: 1.16 KB

Contents

require_relative 'forms/form'

class Form < Roda::Component
  comp_name :form
  comp_html "../public/form/index.html"
  comp_setup do |dom|
    # remove hard coded links as we are adding them in using the assets plugin.
    dom.css('head > link').remove
    # add require css and javascript
    dom.at_css('head').add_child assets([:css, :form])
    dom.at_css('html').add_child assets([:js, :form])
    dom.at_css('html').add_child <<-EOF
      <script type="text/javascript" src="/assets/components/roda/component.js"></script>
      <script type="text/javascript" src="/faye/client.js"></script>
    EOF
  end

  def display
    return unless server?

    dom.at_css('head').add_child csrf_metatag

    data = {
      name: 'test',
      address: {
        zip: 90036
      }
    }

    form_dom = dom.find('#form')
    form     = Forms::Login.new(data, key: :user, dom: form_dom)

    form.render_values

    render_fields data, dom: dom.find('.profile')

    dom
  end

  on :form, '#form', Forms::Login, key: :user do |form, el, evt|
    render_fields form, dom: dom.find('.profile')

    if form.valid?
      puts 'yay, vaild!'
    else
      form.display_errors
    end
  end
end

Version data entries

59 entries across 59 versions & 1 rubygems

Version Path
roda-component-0.1.73 test/dummy/components/form.rb
roda-component-0.1.72 test/dummy/components/form.rb
roda-component-0.1.71 test/dummy/components/form.rb
roda-component-0.1.70 test/dummy/components/form.rb
roda-component-0.1.69 test/dummy/components/form.rb
roda-component-0.1.68 test/dummy/components/form.rb
roda-component-0.1.67 test/dummy/components/form.rb
roda-component-0.1.66 test/dummy/components/form.rb
roda-component-0.1.65 test/dummy/components/form.rb
roda-component-0.1.64 test/dummy/components/form.rb
roda-component-0.1.63 test/dummy/components/form.rb
roda-component-0.1.62 test/dummy/components/form.rb
roda-component-0.1.61 test/dummy/components/form.rb
roda-component-0.1.60 test/dummy/components/form.rb
roda-component-0.1.59 test/dummy/components/form.rb
roda-component-0.1.58 test/dummy/components/form.rb
roda-component-0.1.57 test/dummy/components/form.rb
roda-component-0.1.56 test/dummy/components/form.rb
roda-component-0.1.55 test/dummy/components/form.rb
roda-component-0.1.54 test/dummy/components/form.rb