dynamic_fields_for_rails 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 665c958e8ca5579b1ede7fb3247a5ca9de854ac0
4
+ data.tar.gz: f0e534b5fb73a6a104f59104f14145089ef39988
5
+ SHA512:
6
+ metadata.gz: f75b813caaa261850e29e1d90a95d4419d7cc68dd455d1e541b749cdbf402b09b1b22873aa3bd29d09f3c9bd02ebfa8cd02ae24c08464e91d3180d0f3b7ba725
7
+ data.tar.gz: 496e574abd0c384756d52bcc68b5f54549ca88572e673fc40c5236d3f4d18c7090cce5a58334665c85359e72a4dec119d4d678a6f40b15bcfec46e8b287142c5
data/README.md CHANGED
@@ -1,4 +1,7 @@
1
1
  # DynamicFieldsForRails
2
+ [![Build Status](https://travis-ci.org/mortik/dynamic_fields_for_rails.png?branch=master)](https://travis-ci.org/mortik/dynamic_fields_for_rails)
3
+ [![Gem Version](https://badge.fury.io/rb/dynamic_fields_for_rails.png)](http://badge.fury.io/rb/dynamic_fields_for_rails)
4
+ [![Dependency Status](https://gemnasium.com/mortik/dynamic_fields_for_rails.png)](https://gemnasium.com/mortik/dynamic_fields_for_rails)
2
5
 
3
6
  Dynamic fields helper for Rails.
4
7
 
@@ -53,7 +56,16 @@ Put this in your Form and replace the {nested_resource} and {resource} tags with
53
56
  = link_to_add_fields form, :{nested_resource}s, "Add Entry"
54
57
  ```
55
58
 
56
- To add custom css classes to the add and delete buttons just add an initializer called "dynamic_fields_for_rails.rb" and paste in the following and add your custom classes:
59
+ You can pass a css classes string as an optional fourth parameter to the link helper methods
60
+ ```
61
+ = link_to_add_fields form, :{nested_resource}s, {title}, {css_classes}
62
+ ```
63
+ and
64
+ ```
65
+ = link_to_delete_fields fields, {title}, {css_classes}
66
+ ```
67
+
68
+ To add global custom css classes to the add and delete buttons just add an initializer called "dynamic_fields_for_rails.rb" and paste in the following to add your custom global classes:
57
69
 
58
70
  ```
59
71
  # encoding: utf-8
@@ -70,4 +82,4 @@ end
70
82
  2. Create your feature branch (`git checkout -b my-new-feature`)
71
83
  3. Commit your changes (`git commit -am 'Add some feature'`)
72
84
  4. Push to the branch (`git push origin my-new-feature`)
73
- 5. Create new Pull Request
85
+ 5. Create new Pull Request
@@ -8,7 +8,6 @@ $ ->
8
8
  event.preventDefault()
9
9
 
10
10
  $(document).on 'click', 'form .add_fields', (event) ->
11
- console.log "test"
12
11
  time = new Date().getTime()
13
12
  regexp = new RegExp($(this).data('id'), 'g')
14
13
  $(this).before($(this).data('fields').replace(regexp, time))
@@ -1,29 +1,38 @@
1
1
  # encoding: utf-8
2
2
  module DynamicFieldsForHelper
3
3
 
4
- def link_to_add_fields(form, association, name=nil, &block)
4
+ def link_to_add_fields(form, association, name=nil, css_classes=nil, &block)
5
5
  new_object = form.object.send(association).klass.new
6
6
  id = new_object.object_id
7
7
  fields = form.fields_for(association, new_object, child_index: id) do |builder|
8
8
  render("#{form.object.class.name.downcase.pluralize}/#{association.to_s.singularize}_fields", fields: builder)
9
9
  end
10
- style_class = DynamicFieldsForRails.add_css_classes
10
+ css_classes = css_classes(DynamicFieldsForRails.add_css_classes, css_classes)
11
11
  if block_given?
12
- link_to('#', class: "add_fields #{style_class}", data: {id: id, fields: fields.gsub("\n", "")}, &block)
12
+ link_to('#', class: css_classes, data: {id: id, fields: fields.gsub("\n", "")}, &block)
13
13
  else
14
- link_to(name, '#', class: "add_fields #{style_class}", data: {id: id, fields: fields.gsub("\n", "")})
14
+ link_to(name, '#', class: css_classes, data: {id: id, fields: fields.gsub("\n", "")})
15
15
  end
16
16
  end
17
17
 
18
- def link_to_delete_fields(fields, name=nil, &block)
18
+ def link_to_delete_fields(fields, name=nil, css_classes=nil, &block)
19
19
  link = []
20
20
  link << fields.hidden_field(:_destroy)
21
- style_class = DynamicFieldsForRails.delete_css_classes
21
+ css_classes = css_classes(DynamicFieldsForRails.delete_css_classes, css_classes)
22
22
  if block_given?
23
- link << link_to('#', class: "remove_fields #{style_class}", title: name, &block)
23
+ link << link_to('#', class: css_classes, title: name, &block)
24
24
  else
25
- link << link_to(name, '#', class: "remove_fields #{style_class}")
25
+ link << link_to(name, '#', class: css_classes)
26
26
  end
27
27
  return link.join('').html_safe
28
28
  end
29
+
30
+ protected
31
+
32
+ def css_classes(default, css_class)
33
+ style_class = []
34
+ style_class << default unless default.blank?
35
+ style_class << css_class unless css_class.blank?
36
+ style_class.join(' ')
37
+ end
29
38
  end
@@ -1,3 +1,3 @@
1
1
  module DynamicFieldsForRails
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
@@ -5,10 +5,10 @@ module DynamicFieldsForRails
5
5
  end
6
6
 
7
7
  mattr_accessor :add_css_classes
8
- @@add_css_classes = ""
8
+ @@add_css_classes = "add_fields"
9
9
 
10
10
  mattr_accessor :delete_css_classes
11
- @@delete_css_classes = ""
11
+ @@delete_css_classes = "remove_fields"
12
12
 
13
13
  def self.setup
14
14
  yield self
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dynamic_fields_for_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
5
- prerelease:
4
+ version: 0.3.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Marten Klitzke
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-04-24 00:00:00.000000000 Z
11
+ date: 2013-07-09 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: bundler
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -30,65 +27,57 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rake
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: mocha
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - '>='
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: sqlite3
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - '>='
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - '>='
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rails
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - '>='
84
74
  - !ruby/object:Gem::Version
85
75
  version: 3.2.13
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - '>='
92
81
  - !ruby/object:Gem::Version
93
82
  version: 3.2.13
94
83
  description: Dynamic fields helper for Rails.
@@ -160,27 +149,26 @@ files:
160
149
  homepage: https://github.com/mortik/dynamic_fields_for_rails
161
150
  licenses:
162
151
  - MIT
152
+ metadata: {}
163
153
  post_install_message:
164
154
  rdoc_options: []
165
155
  require_paths:
166
156
  - lib
167
157
  required_ruby_version: !ruby/object:Gem::Requirement
168
- none: false
169
158
  requirements:
170
- - - ! '>='
159
+ - - '>='
171
160
  - !ruby/object:Gem::Version
172
161
  version: '0'
173
162
  required_rubygems_version: !ruby/object:Gem::Requirement
174
- none: false
175
163
  requirements:
176
- - - ! '>='
164
+ - - '>='
177
165
  - !ruby/object:Gem::Version
178
166
  version: '0'
179
167
  requirements: []
180
168
  rubyforge_project:
181
- rubygems_version: 1.8.23
169
+ rubygems_version: 2.0.3
182
170
  signing_key:
183
- specification_version: 3
171
+ specification_version: 4
184
172
  summary: Helper for nested forms with dynamic fields.
185
173
  test_files:
186
174
  - test/config/active_record.rb