diff options
| author | Marc Florisson | 2014-09-23 10:52:37 +0200 |
|---|---|---|
| committer | Marc Florisson | 2014-09-23 10:52:37 +0200 |
| commit | 3aeb2937f4a354bd45194ecae408667cd9f1ccc1 (patch) | |
| tree | efd410b3f88d543d62a3ef28c72394e2e52a1268 /app | |
| parent | c69442da623e504c3d31944829b94ce0b55038aa (diff) | |
| download | chouette-core-3aeb2937f4a354bd45194ecae408667cd9f1ccc1.tar.bz2 | |
refactor time table list on #index and vehicle_joruney#show
Diffstat (limited to 'app')
| -rw-r--r-- | app/inputs/search_time_table_input.rb | 17 | ||||
| -rw-r--r-- | app/views/time_tables/index.json.rabl | 8 | ||||
| -rw-r--r-- | app/views/vehicle_journeys/_form.html.erb | 2 |
3 files changed, 22 insertions, 5 deletions
diff --git a/app/inputs/search_time_table_input.rb b/app/inputs/search_time_table_input.rb index bdfe79451..6f40d7e1e 100644 --- a/app/inputs/search_time_table_input.rb +++ b/app/inputs/search_time_table_input.rb @@ -5,6 +5,19 @@ class SearchTimeTableInput < Formtastic::Inputs::SearchInput tokenLimit = options[:tokenLimit].present? ? options[:tokenLimit] : "null" template.content_tag( :script, ("$(document).ready(function() { + var time_table_formatter = function(item){ + var day_types = ''; + if ( item.day_types.length >0 ){ + day_types = '<span class=\"day_types\">' + item.day_types + '</span>' ; + } + var tags = ''; + if ( item.tags.length >0 ){ + tags = '<div class=\"info\">' + item.tags + '</div>' ; + } + return '<li><div class=\"comment\">' + item.comment + + '</div><div class=\"info\">' + item.time_table_bounding + day_types + '</div>' + + tags + '</li>'; + }; $('##{dom_id}').tokenInput('#{options[:json]}', { crossDomain: false, tokenLimit: #{tokenLimit}, @@ -15,8 +28,8 @@ class SearchTimeTableInput < Formtastic::Inputs::SearchInput hintText: '#{options[:hint_text]}', noResultsText: '#{options[:no_result_text]}', searchingText: '#{options[:searching_text]}', - resultsFormatter: function(item){ return '<li><div class=\"comment\">' + item.comment + '</div><div class=\"info\">' + item.time_table_bounding + '</div><div class=\"info\">' + item.composition_info + '</div></li>' }, - tokenFormatter: function(item){ return '<li><div class=\"comment\">' + item.comment + '</div><div class=\"info\">' + item.time_table_bounding + '</div><div class=\"info\">' + item.composition_info + '</div></li>' }, + resultsFormatter: time_table_formatter, + tokenFormatter: time_table_formatter, }); });").html_safe) end diff --git a/app/views/time_tables/index.json.rabl b/app/views/time_tables/index.json.rabl index dec29cb69..443cb13a2 100644 --- a/app/views/time_tables/index.json.rabl +++ b/app/views/time_tables/index.json.rabl @@ -1,5 +1,9 @@ collection @time_tables, :object_root => false node do |time_table| - { :id => time_table.id, :comment => time_table.comment, :time_table_bounding => time_table_bounding( time_table), :composition_info => composition_info(time_table) } -end + { :id => time_table.id, :comment => time_table.comment, + :time_table_bounding => time_table_bounding( time_table), + :composition_info => composition_info(time_table), + :tags => time_table.tags.join(','), + :day_types => %w(monday tuesday wednesday thursday friday saturday sunday).select{ |d| time_table.send(d) }.map{ |d| time_table.human_attribute_name(d).first(2)}.join('')} +end diff --git a/app/views/vehicle_journeys/_form.html.erb b/app/views/vehicle_journeys/_form.html.erb index 459e8ea07..67fc21803 100644 --- a/app/views/vehicle_journeys/_form.html.erb +++ b/app/views/vehicle_journeys/_form.html.erb @@ -12,7 +12,7 @@ <%= form.input :facility %> <%= form.input :vehicle_type_identifier%> <%= form.input :objectid, :required => !@vehicle_journey.new_record?, :input_html => { :title => t("formtastic.titles.vehicle_journey.objectid")} %> - <%= form.input :time_table_tokens, :label => t('.time_tables'), :as => :search_time_table, :json => referential_time_tables_path(@referential, :format => :json), :hint_text => t('search_hint'), :no_result_text => t('no_result_text'),:searching_text => t('searching_term'), :input_html => { :"data-pre" => ( @vehicle_journey.time_tables.map{ |time_table| { :id => time_table.id, :comment => time_table.comment, :time_table_bounding => time_table_bounding( time_table), :composition_info => composition_info(time_table) } } ).to_json } %> + <%= form.input :time_table_tokens, :label => t('.time_tables'), :as => :search_time_table, :json => referential_time_tables_path(@referential, :format => :json), :hint_text => t('search_hint'), :no_result_text => t('no_result_text'),:searching_text => t('searching_term'), :input_html => { :"data-pre" => ( @vehicle_journey.time_tables.map{ |time_table| { :id => time_table.id, :tags => time_table.tags.join(','), :day_types => %w(monday tuesday wednesday thursday friday saturday sunday).select{ |d| time_table.send(d) }.map{ |d| time_table.human_attribute_name(d).first(2)}.join(''), :comment => time_table.comment, :time_table_bounding => time_table_bounding( time_table), :composition_info => composition_info(time_table) } } ).to_json } %> <li class="input"> <%= form.label @vehicle_journey.human_attribute_name(:vehicle_journey_at_stop_ids), :class => "label" %> </li> |
