inline_forms 1.3.2 → 1.3.3
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.
@@ -3,11 +3,11 @@ InlineForms::SPECIAL_COLUMN_TYPES[:slider_with_values]=:integer
|
|
3
3
|
# slider_with_values
|
4
4
|
def slider_with_values_show(object, attribute)
|
5
5
|
values = attribute_values(object, attribute)
|
6
|
-
value = object.send(attribute)
|
7
|
-
display_value = values[value][
|
6
|
+
value = object.send(attribute).to_i # should be an int
|
7
|
+
display_value = values.assoc(value)[1] # values should be [ [ 0, value ], [ 3, value2 ] .... ] and we lookup the key, not the place in the array!
|
8
8
|
css_id = "#{object.class.to_s.underscore}_#{object.id}_#{attribute}"
|
9
9
|
if value == 0
|
10
|
-
out = "?"
|
10
|
+
out = "?" # we use this as the 'unknown' value. So in the data, 0 should always be the unknown value. This gives problems with sliders where the real value is 0.
|
11
11
|
else
|
12
12
|
out = "".html_safe
|
13
13
|
out << "<div class='slider slider_#{attribute.to_s}' id='slider_#{css_id}'></div>".html_safe
|
@@ -19,7 +19,7 @@ def slider_with_values_show(object, attribute)
|
|
19
19
|
var displayvalues = ' + values.collect {|x| x[1]}.inspect + ';
|
20
20
|
$( "#slider_' + css_id + '" ).slider(
|
21
21
|
{
|
22
|
-
value:' +
|
22
|
+
value:' + value.to_s + ',
|
23
23
|
range: "min",
|
24
24
|
disabled: true,
|
25
25
|
min: 0,
|
@@ -36,10 +36,12 @@ end
|
|
36
36
|
def slider_with_values_edit(object, attribute)
|
37
37
|
# the leading underscore is to avoid name conflicts, like 'email' and 'email_type' will result in 'email' and 'email[email_type_id]' in the form!
|
38
38
|
values = attribute_values(object, attribute)
|
39
|
+
value = object.send(attribute).to_i # should be an int, will be 0 if nil
|
39
40
|
css_id = "#{object.class.to_s.underscore}_#{object.id}_#{attribute}"
|
41
|
+
display_value = values.assoc(value)[1] # values should be [ [ 0, value ], [ 3, value2 ] .... ] and we lookup the key, not the place in the array!
|
40
42
|
out = "".html_safe
|
41
43
|
out << "<div class='slider slider_#{attribute.to_s}' id='slider_#{css_id}'></div>".html_safe
|
42
|
-
out << "<div class='slider_value' id='value_#{css_id}'>#{
|
44
|
+
out << "<div class='slider_value' id='value_#{css_id}'>#{display_value}</div>".html_safe
|
43
45
|
out << "<div style='clear: both' />".html_safe
|
44
46
|
out << "<input type='hidden' name='_#{object.class.to_s.underscore}[#{attribute}]' value='0' id='input_#{css_id}' />".html_safe
|
45
47
|
out << ('<script>
|
@@ -47,7 +49,7 @@ def slider_with_values_edit(object, attribute)
|
|
47
49
|
var displayvalues = ' + values.collect {|x| x[1]}.inspect + ';
|
48
50
|
$( "#slider_' + css_id + '" ).slider(
|
49
51
|
{
|
50
|
-
value:' +
|
52
|
+
value:' + value.to_s + ',
|
51
53
|
range: "min",
|
52
54
|
min: 0,
|
53
55
|
max: 5,
|
@@ -57,13 +59,14 @@ def slider_with_values_edit(object, attribute)
|
|
57
59
|
$( "#value_' + css_id + '" ).html( displayvalues[ui.value] );
|
58
60
|
}
|
59
61
|
}
|
60
|
-
);
|
61
|
-
|
62
|
-
|
63
|
-
});
|
62
|
+
);').html_safe
|
63
|
+
out << ('$( "#value_' + css_id + '" ).html(displayvalues[' + value.to_s + ']);').html_safe
|
64
|
+
out << ('$( "#input_' + css_id + '" ).val(' + value.to_s + ');').html_safe
|
65
|
+
out << ('});
|
64
66
|
</script>').html_safe
|
65
67
|
out
|
66
68
|
end
|
69
|
+
|
67
70
|
def slider_with_values_update(object, attribute)
|
68
71
|
object[attribute.to_sym] = params[('_' + object.class.to_s.underscore).to_sym][attribute.to_sym]
|
69
72
|
end
|
data/lib/inline_forms/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: inline_forms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 29
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 3
|
9
|
-
-
|
10
|
-
version: 1.3.
|
9
|
+
- 3
|
10
|
+
version: 1.3.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Ace Suares
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-02-
|
18
|
+
date: 2012-02-27 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: rspec-rails
|
@@ -259,7 +259,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
259
259
|
requirements: []
|
260
260
|
|
261
261
|
rubyforge_project: inline_forms
|
262
|
-
rubygems_version: 1.8.
|
262
|
+
rubygems_version: 1.8.11
|
263
263
|
signing_key:
|
264
264
|
specification_version: 3
|
265
265
|
summary: Inline editing of forms.
|