dohweb 0.1.10 → 0.1.11

Sign up to get free protection for your applications and to get access to all the features.
@@ -103,6 +103,9 @@ private
103
103
 
104
104
  def model_value(field)
105
105
  return nil unless @model
106
+ if field.end_with?('[]')
107
+ field = field.slice(0..-3)
108
+ end
106
109
  if @model.respond_to?(field)
107
110
  @model.send(field)
108
111
  elsif @model.respond_to?('[]')
@@ -29,7 +29,16 @@ module HtmlTags
29
29
  end
30
30
 
31
31
  def select_tag(name, items, options = {})
32
- selected_value = options.delete(:value).to_s
32
+ selected_value = options.delete(:value)
33
+
34
+ # in case it's a numeric
35
+ if selected_value
36
+ unless selected_value.is_a?(Array)
37
+ selected_value = selected_value.to_s
38
+ end
39
+ selected_value = nil if selected_value.empty?
40
+ end
41
+
33
42
  options[:name] = name
34
43
  lines = [start_tag('select', true, options)]
35
44
  items.each do |elem|
@@ -40,7 +49,13 @@ module HtmlTags
40
49
  else
41
50
  text = value = elem
42
51
  end
43
- subopts[:selected] = 'selected' if (selected_value.size > 0) && (value.to_s == selected_value)
52
+ value = value.to_s.strip
53
+ if !selected_value
54
+ elsif selected_value.is_a?(Array)
55
+ subopts[:selected] = 'selected' if selected_value.include?(value)
56
+ else
57
+ subopts[:selected] = 'selected' if value == selected_value
58
+ end
44
59
  lines.push("#{start_tag(:option, true, subopts)}#{text}</option>")
45
60
  end
46
61
  lines.push('</select>')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dohweb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.10
4
+ version: 0.1.11
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2013-01-08 00:00:00.000000000 Z
13
+ date: 2013-02-04 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: dohtest
17
- requirement: !ruby/object:Gem::Requirement
17
+ requirement: &70200591664680 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,12 +22,7 @@ dependencies:
22
22
  version: 0.1.8
23
23
  type: :development
24
24
  prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
- requirements:
28
- - - ! '>='
29
- - !ruby/object:Gem::Version
30
- version: 0.1.8
25
+ version_requirements: *70200591664680
31
26
  description: utilities for building non-Rails web apps
32
27
  email:
33
28
  - devinfo@atpsoft.com
@@ -65,7 +60,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
65
60
  version: '0'
66
61
  requirements: []
67
62
  rubyforge_project:
68
- rubygems_version: 1.8.24
63
+ rubygems_version: 1.8.12
69
64
  signing_key:
70
65
  specification_version: 3
71
66
  summary: utilities for building web apps
@@ -73,4 +68,3 @@ test_files:
73
68
  - test/group_params.dt.rb
74
69
  - test/html_tags.dt.rb
75
70
  - test/util.dt.rb
76
- has_rdoc: