active_form 0.0.6 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Manifest.txt CHANGED
@@ -77,6 +77,8 @@ lib/active_form/views/tables.rb
77
77
  lib/active_form/widget.rb
78
78
  lib/active_form/widgets/base.rb
79
79
  lib/loob/uri_validator.rb
80
+ lib/merb/merbtasks.rb
81
+ lib/merb/support.rb
80
82
  lib/rails/acts_as_dropdown/MIT-LICENSE
81
83
  lib/rails/acts_as_dropdown/acts_as_dropdown.rb
82
84
  lib/rails/acts_as_dropdown/dropdown.rb
@@ -37,6 +37,8 @@ class ActiveForm::Element::SelectTimebased < ActiveForm::Element::Section
37
37
  when Time then value
38
38
  else nil
39
39
  end
40
+ update_values(default_element_values) if @now
41
+ @now
40
42
  end
41
43
 
42
44
  def render_element(builder = create_builder)
@@ -2,7 +2,7 @@ module ActiveForm #:nodoc:
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 0
4
4
  MINOR = 0
5
- TINY = 6
5
+ TINY = 7
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
8
8
  end
data/lib/active_form.rb CHANGED
@@ -84,3 +84,35 @@ require File.join(File.dirname(__FILE__), 'active_form', 'elements', 'section')
84
84
 
85
85
  require File.join(File.dirname(__FILE__), 'active_form', 'widget')
86
86
  require File.join(File.dirname(__FILE__), 'active_form', 'widgets', 'base')
87
+
88
+ if defined?(Merb::Plugins)
89
+
90
+ Merb::Plugins.config[:active_form] = { } if Merb::Plugins.config[:active_form].nil?
91
+
92
+ require File.join(File.dirname(__FILE__), 'merb', 'support')
93
+ Merb::Plugins.add_rakefiles(File.join(File.dirname(__FILE__), 'merb', 'merbtasks'))
94
+
95
+ Merb.push_path(:form, Merb.root_path("app/forms"), nil)
96
+ Merb.push_path(:form_view, Merb.root_path("app/forms/views"), nil)
97
+
98
+ Merb.push_path(:form_definition, Merb.root_path("app/forms/definitions"))
99
+ Merb.push_path(:form_section, Merb.root_path("app/forms/sections"))
100
+ Merb.push_path(:form_widget, Merb.root_path("app/forms/widgets"))
101
+ Merb.push_path(:form_element, Merb.root_path("app/forms/elements"))
102
+ Merb.push_path(:form_validator, Merb.root_path("app/forms/validators"))
103
+
104
+ class Merb::ActiveFormSetup < Merb::BootLoader
105
+
106
+ after BeforeAppRuns
107
+
108
+ def self.run
109
+ ActiveForm::Definition.load_paths << Merb.dir_for(:form_definition)
110
+ ActiveForm::Definition.load_paths << Merb.dir_for(:form_section)
111
+ ActiveForm::Widget.load_paths << Merb.dir_for(:form_widget)
112
+ ActiveForm::Element.load_paths << Merb.dir_for(:form_element)
113
+ ActiveForm::Validator.load_paths << Merb.dir_for(:form_validator)
114
+ end
115
+
116
+ end
117
+
118
+ end
@@ -0,0 +1,6 @@
1
+ namespace :active_form do
2
+ desc "Do something for ActiveForm"
3
+ task :default do
4
+ puts "ActiveForm doesn't do anything"
5
+ end
6
+ end
@@ -0,0 +1,40 @@
1
+ module ActiveForm
2
+ module MerbControllerHelper
3
+
4
+ def create_active_form(*args, &block)
5
+ form = ActiveForm::compose(*args, &block)
6
+ form.update_from_params(params)
7
+ instance_variable_set("@#{form.name}", form)
8
+ end
9
+
10
+ def build_active_form(definition_name, *args, &block)
11
+ form = ActiveForm::Definition::build(definition_name, *args, &block)
12
+ form.update_from_params(params)
13
+ instance_variable_set("@#{form.name}", form)
14
+ end
15
+
16
+ end
17
+ end
18
+
19
+ Merb::Controller.send(:include, ActiveForm::MerbControllerHelper)
20
+
21
+ module ActiveForm
22
+ module MerbViewHelper
23
+
24
+ def active_form(*args, &block)
25
+ form = args.first.instance_of?(ActiveForm::Definition) ? args.shift : ActiveForm::Definition.build(*args)
26
+ if block_given?
27
+ if form.kind_of?(ActiveForm::Definition)
28
+ concat(form.header, block.binding)
29
+ yield(form)
30
+ concat(form.footer, block.binding)
31
+ end
32
+ else
33
+ form.to_html
34
+ end
35
+ end
36
+
37
+ end
38
+ end
39
+
40
+ Merb::GlobalHelpers.send(:include, ActiveForm::MerbViewHelper)
@@ -8,9 +8,13 @@ class TestSelectDatetimeElement < Test::Unit::TestCase
8
8
 
9
9
  def test_format
10
10
  form = ActiveForm::compose :form do |f|
11
- f.select_datetime_element :start, :format => [:day, :month, :year, :hour, :minute, :second], :range => (2000..2005)
11
+ f.select_datetime_element :start, :format => [:day, :month, :year, :hour, :minute, :second], :range => (2000..2010) do |e|
12
+ e.now = Time.local(2007, 8, 14, 13, 52, 5)
13
+ end
12
14
  end
13
- assert_equal [:day, :month, :year, :hour, :minute, :second], form[:start].collect(&:name)
15
+ expected = {"start"=>{"month"=>8, "minute"=>52, "second"=>5, "hour"=>13, "day"=>14, "year"=>2007}}
16
+ assert_equal expected, form.export_values
17
+ assert_equal [:day, :month, :year, :hour, :minute, :second], form[:start].collect(&:name)
14
18
  end
15
19
 
16
20
  def test_european_formatting
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,30 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.4
3
- specification_version: 1
4
2
  name: active_form
5
3
  version: !ruby/object:Gem::Version
6
- version: 0.0.6
7
- date: 2008-02-28 00:00:00 +01:00
8
- summary: ActiveForm provides a DSL for defining complete XHTML forms with validation.
9
- require_paths:
10
- - lib
11
- email:
12
- - info@loobmedia.com
13
- homepage: http://activeform.rubyforge.org
14
- rubyforge_project: activeform
15
- description: ActiveForm provides a DSL for defining complete XHTML forms with validation.
4
+ version: 0.0.7
5
+ platform: ruby
6
+ authors:
7
+ - Fabien Franzen
16
8
  autorequire:
17
- default_executable:
18
9
  bindir: bin
19
- has_rdoc: true
20
- required_ruby_version: !ruby/object:Gem::Version::Requirement
21
- requirements:
22
- - - ">"
23
- - !ruby/object:Gem::Version
24
- version: 0.0.0
25
- version:
26
- platform: ruby
27
- signing_key:
28
10
  cert_chain:
29
11
  - |
30
12
  -----BEGIN CERTIFICATE-----
@@ -48,9 +30,22 @@ cert_chain:
48
30
  9Kl7sLBL
49
31
  -----END CERTIFICATE-----
50
32
 
51
- post_install_message:
52
- authors:
53
- - Fabien Franzen
33
+ date: 2008-05-05 00:00:00 +02:00
34
+ default_executable:
35
+ dependencies: []
36
+
37
+ description: ActiveForm provides a DSL for defining complete XHTML forms with validation.
38
+ email:
39
+ - info@loobmedia.com
40
+ executables: []
41
+
42
+ extensions: []
43
+
44
+ extra_rdoc_files:
45
+ - History.txt
46
+ - License.txt
47
+ - Manifest.txt
48
+ - README.txt
54
49
  files:
55
50
  - History.txt
56
51
  - License.txt
@@ -131,6 +126,8 @@ files:
131
126
  - lib/active_form/widget.rb
132
127
  - lib/active_form/widgets/base.rb
133
128
  - lib/loob/uri_validator.rb
129
+ - lib/merb/merbtasks.rb
130
+ - lib/merb/support.rb
134
131
  - lib/rails/acts_as_dropdown/MIT-LICENSE
135
132
  - lib/rails/acts_as_dropdown/acts_as_dropdown.rb
136
133
  - lib/rails/acts_as_dropdown/dropdown.rb
@@ -234,6 +231,33 @@ files:
234
231
  - test/validators/test_validates_within_length_range.rb
235
232
  - test/validators/test_validates_within_set.rb
236
233
  - test/validators/test_validates_within_time_range.rb
234
+ has_rdoc: true
235
+ homepage: http://activeform.rubyforge.org
236
+ post_install_message:
237
+ rdoc_options:
238
+ - --main
239
+ - README.txt
240
+ require_paths:
241
+ - lib
242
+ required_ruby_version: !ruby/object:Gem::Requirement
243
+ requirements:
244
+ - - ">="
245
+ - !ruby/object:Gem::Version
246
+ version: "0"
247
+ version:
248
+ required_rubygems_version: !ruby/object:Gem::Requirement
249
+ requirements:
250
+ - - ">="
251
+ - !ruby/object:Gem::Version
252
+ version: "0"
253
+ version:
254
+ requirements: []
255
+
256
+ rubyforge_project: activeform
257
+ rubygems_version: 1.0.1
258
+ signing_key:
259
+ specification_version: 2
260
+ summary: ActiveForm provides a DSL for defining complete XHTML forms with validation.
237
261
  test_files:
238
262
  - test/elements/test_base_element.rb
239
263
  - test/elements/test_builder_element.rb
@@ -290,19 +314,3 @@ test_files:
290
314
  - test/validators/test_validates_within_length_range.rb
291
315
  - test/validators/test_validates_within_set.rb
292
316
  - test/validators/test_validates_within_time_range.rb
293
- rdoc_options:
294
- - --main
295
- - README.txt
296
- extra_rdoc_files:
297
- - History.txt
298
- - License.txt
299
- - Manifest.txt
300
- - README.txt
301
- executables: []
302
-
303
- extensions: []
304
-
305
- requirements: []
306
-
307
- dependencies: []
308
-
metadata.gz.sig CHANGED
Binary file