dynaspan 0.1.2 → 0.1.3.beta1
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.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/app/helpers/dynaspan/application_helper.rb +17 -5
- data/app/views/dynaspan/_dynaspan_text_area.html.erb +2 -2
- data/app/views/dynaspan/_dynaspan_text_field.html.erb +2 -2
- data/app/views/dynaspan/_dynaspan_text_select.html.erb +24 -0
- data/lib/dynaspan/version.rb +1 -1
- metadata +6 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f80e4bd299517b42e0fde2effce96b24c2ab859f
|
4
|
+
data.tar.gz: 96769dc4258951d0c4e47b5579ae3303566e6ea7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e65fae87fdec33a773698f90fbb72ecee98a061d91700cd17ff8553b0d266c057cd81c1e1549de4759805750d741ebd26e8438ac44a14238b6e9e2f97413c740
|
7
|
+
data.tar.gz: a07cda41584ba51b3bc445ff61762e527dc0388d0bbcbedf96c079ca51187bf1f2c7bb5fa73b914bd111ee288e6f548fcc59d9fc23416a8f1a24c53392fdb0f1
|
@@ -9,13 +9,18 @@ module Dynaspan
|
|
9
9
|
dynaspan_text('area', master_ds_object, parameters)
|
10
10
|
end
|
11
11
|
|
12
|
+
def dynaspan_select(master_ds_object,*parameters, &block)
|
13
|
+
dynaspan_text('select', master_ds_object, parameters, &block)
|
14
|
+
end
|
15
|
+
|
12
16
|
private
|
17
|
+
module_function
|
13
18
|
|
14
|
-
def
|
15
|
-
|
19
|
+
def to_id(obj)
|
20
|
+
!!obj ? "#{obj.class.name}#{obj.try(:id)}" : ""
|
16
21
|
end
|
17
22
|
|
18
|
-
def dynaspan_text(kind, master_ds_object,*parameters)
|
23
|
+
def dynaspan_text(kind, master_ds_object,*parameters, &block)
|
19
24
|
parameters.flatten!
|
20
25
|
if parameters.first.is_a? Symbol
|
21
26
|
attr_object = nil
|
@@ -36,18 +41,25 @@ module Dynaspan
|
|
36
41
|
remote: true,
|
37
42
|
authenticity_token: true
|
38
43
|
)
|
44
|
+
options[:html_options] = ActiveSupport::HashWithIndifferentAccess.new(options[:html_options])
|
45
|
+
options[:html_options][:class] = "dyna-span form-control dyna-span-input #{options[:html_options][:class]}"
|
46
|
+
options[:html_options].delete_if {|k,v| [:id, :onblur, :onfocus].include? k}
|
39
47
|
render(
|
40
48
|
partial: "dynaspan/dynaspan_text_#{kind}",
|
41
49
|
locals: {
|
42
50
|
master_ds_object: master_ds_object,
|
43
51
|
attr_object: attr_object,
|
44
52
|
attrib: attrib,
|
45
|
-
unique_ref_id: options.fetch(:unique_id) {
|
53
|
+
unique_ref_id: options.fetch(:unique_id) { [to_id(master_ds_object), to_id(attr_object), attrib].join },
|
46
54
|
dyna_span_edit_text: edit_text,
|
47
55
|
hidden_fields: options[:hidden_fields],
|
48
56
|
ds_callback_on_update: options[:callback_on_update],
|
49
57
|
ds_callback_with_values: options[:callback_with_values],
|
50
|
-
form_for_options: options[:form_for]
|
58
|
+
form_for_options: options[:form_for],
|
59
|
+
schoices: options[:choices], # For form 'select' field
|
60
|
+
soptions: options.fetch(:options) { Hash.new }, # For form 'select' field
|
61
|
+
html_options: options[:html_options],
|
62
|
+
block: block
|
51
63
|
}
|
52
64
|
)
|
53
65
|
end
|
@@ -9,10 +9,10 @@
|
|
9
9
|
<% hidden_fields.each do |hkey, hval| %>
|
10
10
|
<%= a.hidden_field hkey.to_sym, value: hval %>
|
11
11
|
<% end if hidden_fields %>
|
12
|
-
<%= a.text_area attrib, id: "dyna_span_field_val_#{unique_ref_id}",
|
12
|
+
<%= a.text_area attrib, id: "dyna_span_field_val_#{unique_ref_id}", onfocus: "$().dynaspan.upLast('#{unique_ref_id}');", onblur: "$().dynaspan.upHide('#{unique_ref_id}');", **html_options.symbolize_keys %>
|
13
13
|
<% end %>
|
14
14
|
<% else %>
|
15
|
-
<%= f.text_area attrib, id: "dyna_span_field_val_#{unique_ref_id}",
|
15
|
+
<%= f.text_area attrib, id: "dyna_span_field_val_#{unique_ref_id}", onfocus: "$().dynaspan.upLast('#{unique_ref_id}');", onblur: "$().dynaspan.upHide('#{unique_ref_id}');", **html_options.symbolize_keys %>
|
16
16
|
<% hidden_fields.each do |hkey, hval| %>
|
17
17
|
<%= f.hidden_field hkey.to_sym, value: hval %>
|
18
18
|
<% end if hidden_fields %>
|
@@ -9,10 +9,10 @@
|
|
9
9
|
<% hidden_fields.each do |hkey, hval| %>
|
10
10
|
<%= a.hidden_field hkey.to_sym, value: hval %>
|
11
11
|
<% end if hidden_fields %>
|
12
|
-
<%= a.text_field attrib, id: "dyna_span_field_val_#{unique_ref_id}",
|
12
|
+
<%= a.text_field attrib, id: "dyna_span_field_val_#{unique_ref_id}", onfocus: "$().dynaspan.upLast('#{unique_ref_id}');", onblur: "$().dynaspan.upHide('#{unique_ref_id}');", **html_options.symbolize_keys %>
|
13
13
|
<% end %>
|
14
14
|
<% else %>
|
15
|
-
<%= f.text_field attrib, id: "dyna_span_field_val_#{unique_ref_id}",
|
15
|
+
<%= f.text_field attrib, id: "dyna_span_field_val_#{unique_ref_id}", onfocus: "$().dynaspan.upLast('#{unique_ref_id}');", onblur: "$().dynaspan.upHide('#{unique_ref_id}');", **html_options.symbolize_keys %>
|
16
16
|
<% hidden_fields.each do |hkey, hval| %>
|
17
17
|
<%= f.hidden_field hkey.to_sym, value: hval %>
|
18
18
|
<% end if hidden_fields %>
|
@@ -0,0 +1,24 @@
|
|
1
|
+
<%# This is used through the helper method dynaspan_text_field %>
|
2
|
+
<div id="dyna_span_block<%= unique_ref_id %>" <%= "data-ds-callback-on-update=\"#{ds_callback_on_update}\" " if ds_callback_on_update.present? %> <%= "data-ds-callback-with-values=\"#{ds_callback_with_values}\" " if ds_callback_with_values.present? %>class='dyna-span<%= ' ds-content-present' if (attr_object.try(attrib).present? || master_ds_object.try(attrib).present?) %>'>
|
3
|
+
<%= hidden_field_tag "last_dyna_span_val_#{unique_ref_id}", attr_object.try(attrib) || master_ds_object.try(attrib), id: "last_dyna_span_val_#{unique_ref_id}" %>
|
4
|
+
<div id="<%= "dyna_span_div#{unique_ref_id}" %>" style="display:none;">
|
5
|
+
<%= form_for(master_ds_object, **form_for_options.symbolize_keys) do |f| %>
|
6
|
+
<% if master_ds_object.nested_attributes_options.keys.any? {|i| i.to_s.=~(/#{attr_object.class.try(:model_name).try(:i18n_key).to_s}/) || i.to_s.=~(/#{attr_object.class.try(:table_name)}/) } and !attr_object.nil? %>
|
7
|
+
<%= f.fields_for master_ds_object.nested_attributes_options.keys.select {|i| i.to_s.=~(/#{attr_object.class.model_name.i18n_key.to_s}/) || i.to_s.=~(/#{attr_object.class.table_name}/) }.first, attr_object do |a|%>
|
8
|
+
<%= a.hidden_field(:id, value: attr_object.id) if attr_object.id.present? %>
|
9
|
+
<% hidden_fields.each do |hkey, hval| %>
|
10
|
+
<%= a.hidden_field hkey.to_sym, value: hval %>
|
11
|
+
<% end if hidden_fields %>
|
12
|
+
<%= a.select( attrib, schoices, soptions, {**html_options.symbolize_keys, id: "dyna_span_field_val_#{unique_ref_id}", onfocus: "$().dynaspan.upLast('#{unique_ref_id}');", onblur: "$().dynaspan.upHide('#{unique_ref_id}');"}, &block) %>
|
13
|
+
<% end %>
|
14
|
+
<% else %>
|
15
|
+
<%= f.select( attrib, schoices, soptions, {**html_options.symbolize_keys, id: "dyna_span_field_val_#{unique_ref_id}", onfocus: "$().dynaspan.upLast('#{unique_ref_id}');", onblur: "$().dynaspan.upHide('#{unique_ref_id}');"}, &block) %>
|
16
|
+
<% hidden_fields.each do |hkey, hval| %>
|
17
|
+
<%= f.hidden_field hkey.to_sym, value: hval %>
|
18
|
+
<% end if hidden_fields %>
|
19
|
+
<% end %>
|
20
|
+
<% end %>
|
21
|
+
</div>
|
22
|
+
<%= content_tag 'span', attr_object.try(attrib) || master_ds_object.try(attrib), id: "dyna_span_span#{unique_ref_id}", onclick: "$().dynaspan.upShow('#{unique_ref_id}');", class: 'dyna-span dyna-span-text', style: 'display:block;' %>
|
23
|
+
<%= content_tag('div', dyna_span_edit_text, class: 'dyna-span-edit-text pull-right', onclick: "$().dynaspan.upShow('#{unique_ref_id}');", style: 'cursor:pointer;') %>
|
24
|
+
</div>
|
data/lib/dynaspan/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dynaspan
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3.beta1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel P. Clark
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-06-07 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: In place text editing with AJAX substituting text to input field.
|
14
14
|
email:
|
@@ -25,6 +25,7 @@ files:
|
|
25
25
|
- app/helpers/dynaspan/application_helper.rb
|
26
26
|
- app/views/dynaspan/_dynaspan_text_area.html.erb
|
27
27
|
- app/views/dynaspan/_dynaspan_text_field.html.erb
|
28
|
+
- app/views/dynaspan/_dynaspan_text_select.html.erb
|
28
29
|
- config/routes.rb
|
29
30
|
- dynaspan.gemspec
|
30
31
|
- lib/assets/javascripts/dynaspan-jquery.js
|
@@ -48,14 +49,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
48
49
|
version: '2.0'
|
49
50
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
50
51
|
requirements:
|
51
|
-
- - "
|
52
|
+
- - ">"
|
52
53
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
54
|
+
version: 1.3.1
|
54
55
|
requirements:
|
55
56
|
- jQuery
|
56
57
|
- Rails
|
57
58
|
rubyforge_project:
|
58
|
-
rubygems_version: 2.4.
|
59
|
+
rubygems_version: 2.4.7
|
59
60
|
signing_key:
|
60
61
|
specification_version: 4
|
61
62
|
summary: Text to AJAX editing in place.
|