diff options
| author | Zakaria BOUZIANE | 2014-07-29 10:40:50 +0200 |
|---|---|---|
| committer | Zakaria BOUZIANE | 2014-07-29 10:40:50 +0200 |
| commit | 9d1fe609029098d1c2ae40980b133923cd890cf2 (patch) | |
| tree | 3aea779f5eac9dad76e735acd028321fbaee13e7 | |
| parent | 711131fca3dadf9989debd5d5dce2f28d549786c (diff) | |
| download | chouette-core-9d1fe609029098d1c2ae40980b133923cd890cf2.tar.bz2 | |
Vehicle Journey Slide to a different starting departure time
| -rw-r--r-- | app/assets/javascripts/vehicle_journey.js.coffee | 30 | ||||
| -rw-r--r-- | app/assets/stylesheets/main/vehicle_journeys.css.scss | 6 | ||||
| -rw-r--r-- | app/views/vehicle_journeys/_form.html.erb | 10 | ||||
| -rw-r--r-- | config/locales/vehicle_journeys.yml | 2 |
4 files changed, 47 insertions, 1 deletions
diff --git a/app/assets/javascripts/vehicle_journey.js.coffee b/app/assets/javascripts/vehicle_journey.js.coffee index 94c45602c..df15d79ba 100644 --- a/app/assets/javascripts/vehicle_journey.js.coffee +++ b/app/assets/javascripts/vehicle_journey.js.coffee @@ -31,4 +31,34 @@ jQuery -> $('a.vehicle_journey_time_tables .switcher').toggle() $('.vehicle_journeys.show a.vehicle_journey_time_tables').click(switch_time_tables) + + convert = (val) -> + if (val < 10) + return "0" + val.toString() + else + return val.toString() + slide_to = ( col, duration) -> + rows = $('.vehicle_journeys tbody.journey_pattern_dependent_list .time') + for row in rows + do (row) -> + oldHour = parseInt($(row).find( col).find('.hour')[0].value, 10) + oldMinute = parseInt($(row).find( col).find('.minute')[0].value, 10) + aTime = (((oldHour - 1) * 60) + oldMinute + duration) * 60000 + newValue = new Date(aTime) + $(row).find( col).find('.hour')[0].value = convert(newValue.getHours()) + $(row).find( col).find('.minute')[0].value = convert(newValue.getMinutes()) + + slide = (event) -> + event.preventDefault() + # hour = $(".vehicle_journeys .date option[selected='selected']")[0].value + hour = $(".vehicle_journeys .date select#date_hour")[0].value + # minute = $(".vehicle_journeys .date option[selected='selected']")[1].value + minute = $(".vehicle_journeys .date select#date_minute")[0].value + departure_hour = $(".stop_times .journey_pattern_dependent_list .hour option[selected='selected']")[1].value + departure_minute = $(".stop_times .journey_pattern_dependent_list .minute option[selected='selected']")[1].value + duration = (hour - departure_hour) * 60 + (minute - departure_minute) + slide_to( '.departure_time', duration) + slide_to( '.arrival_time', duration) + + $(document).on("click", '.vehicle_journeys a.slide', slide) diff --git a/app/assets/stylesheets/main/vehicle_journeys.css.scss b/app/assets/stylesheets/main/vehicle_journeys.css.scss index 0a2fce05a..52a9978e0 100644 --- a/app/assets/stylesheets/main/vehicle_journeys.css.scss +++ b/app/assets/stylesheets/main/vehicle_journeys.css.scss @@ -11,7 +11,7 @@ tr.no_stop { display: none; } } .time_table_list { padding-left: 25%; } - .vehicle_journey_at_stops { margin-left: 25%; } + .vehicle_journey_at_stops { margin-left: 20%; } } #workspace.vehicle_journeys.index @@ -38,6 +38,10 @@ .to_arrivals { cursor: pointer; } + + .slide { + cursor: pointer; + } } #workspace.vehicle_journeys.show diff --git a/app/views/vehicle_journeys/_form.html.erb b/app/views/vehicle_journeys/_form.html.erb index f512754b2..e29d3cc92 100644 --- a/app/views/vehicle_journeys/_form.html.erb +++ b/app/views/vehicle_journeys/_form.html.erb @@ -19,6 +19,14 @@ <th class="hour title"><%= t('.arrival') %></th> <th class="stop title" ><%= t('.stop_title') %></th> <th class="hour title"><%= t('.departure') %></th> + <% unless @vehicle_journey.vehicle_journey_at_stops.empty? || + @vehicle_journey.vehicle_journey_at_stops.any? { |vjas| vjas.departure_time.nil? } %> + <th class="date"> + <%= select_hour(@vehicle_journey.vehicle_journey_at_stops.first.departure_time.hour, :class => "hour") %> + <%= select_minute(@vehicle_journey.vehicle_journey_at_stops.first.departure_time.min, :class => "minute") %> + </th> + <th class="title"> <a class="slide"><%= t('.slide') %></a></th> + <% end %> </tr> </thead> <tfoot> @@ -26,6 +34,8 @@ <td class="title"> <a class="to_departures"><%= t('.to_departures') %></a></td> <td class="title" ></td> <td class="title"><a class="to_arrivals"><%= t('.to_arrivals') %></a></td> + <td></td> + <td></td> </tr> </tfoot> <tbody class="journey_pattern_dependent_list"> diff --git a/config/locales/vehicle_journeys.yml b/config/locales/vehicle_journeys.yml index 9e8ee4e0f..c8c46cc40 100644 --- a/config/locales/vehicle_journeys.yml +++ b/config/locales/vehicle_journeys.yml @@ -21,6 +21,7 @@ en: to_arrivals: "Copy departures to arrivals" to_departures: "Copy arrivals to departures" time_tables: "Associated calendars to vehicle journey" + slide: "Slide" timeless: title: "Timeless vehicle journeys" vehicle_journeys: "Vehicle journeys with times at stop" @@ -110,6 +111,7 @@ fr: to_arrivals: "Copie départs vers arrivées" to_departures: "Copie arrivées vers départs" time_tables: "Calendriers associés à la course" + slide: "Décaler" timeless: title: "Courses sans horaire" vehicle_journeys: "Courses ayant des horaires" |
