diff options
| author | Luc Donnet | 2015-05-05 13:45:35 +0200 |
|---|---|---|
| committer | Luc Donnet | 2015-05-05 13:45:35 +0200 |
| commit | dc16d9843811c5c8c2f863a840336be768418b3a (patch) | |
| tree | f6193610b3133d18ed414e6ec4968e8c1ce005d3 /app/inputs | |
| parent | 7cd1d88d33644731a5962856392f59d4f97ea286 (diff) | |
| download | chouette-core-dc16d9843811c5c8c2f863a840336be768418b3a.tar.bz2 | |
Add reference_ids to export task
Diffstat (limited to 'app/inputs')
| -rw-r--r-- | app/inputs/reference_ids_input.rb | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/app/inputs/reference_ids_input.rb b/app/inputs/reference_ids_input.rb new file mode 100644 index 000000000..a54be36b9 --- /dev/null +++ b/app/inputs/reference_ids_input.rb @@ -0,0 +1,42 @@ +class ReferenceIdsInput < Formtastic::Inputs::SearchInput + + def search + if options[:json] + tokenLimit = options[:tokenLimit].present? ? options[:tokenLimit] : "null" + template.content_tag( :script, + ("$(document).ready(function() { + + $('##{options[:id]}').tokenInput('#{options[:json]}', { + zindex: 1061, + disabled: #{options[:disabled] || false}, + crossDomain: false, + tokenLimit: #{tokenLimit}, + minChars: 2, + preventDuplicates: true, + hintText: '#{options[:hint_text]}', + noResultsText: '#{options[:no_result_text]}', + searchingText: '#{options[:searching_text]}', + }); + });").html_safe) + end + end + + def to_html + input_wrapping do + label_html << + builder.text_field(method, input_html_options) << + search + end + end + + def input_html_options + css_class = super[:class] + super.merge({ + :required => nil, + :autofocus => nil, + :class => "#{css_class} token-input", + 'data-model-name' => object.class.model_name.human + }) + end + +end |
