aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXinhui2017-05-10 17:44:34 +0200
committerXinhui2017-05-10 17:44:34 +0200
commitc40e4d380ea45d320277da58cf1643d0527aca32 (patch)
tree4e738adb0d163851b3e2a20eafa56c5dc916caeb
parent1c9e056f078e89ddfbe1d3c06ce00a4035d4ef98 (diff)
parent51b08d17e4bb594fad6f7a298a343f098073259f (diff)
downloadchouette-core-c40e4d380ea45d320277da58cf1643d0527aca32.tar.bz2
Merge branch 'master' into staging
-rw-r--r--app/assets/javascripts/es6_browserified/itineraries/index.js7
-rw-r--r--app/assets/javascripts/es6_browserified/time_tables/components/ExceptionsInDay.js4
-rw-r--r--app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/DuplicateVehicleJourney.js4
-rw-r--r--app/controllers/workbenches_controller.rb2
-rw-r--r--app/models/chouette/time_table.rb3
-rw-r--r--app/views/referentials/_filters.html.slim2
-rw-r--r--app/views/routes/show.html.slim2
-rw-r--r--config/locales/transport_modes.fr.yml1
-rw-r--r--spec/models/chouette/time_table_spec.rb5
9 files changed, 18 insertions, 12 deletions
diff --git a/app/assets/javascripts/es6_browserified/itineraries/index.js b/app/assets/javascripts/es6_browserified/itineraries/index.js
index 12a44e376..53f7bc7f9 100644
--- a/app/assets/javascripts/es6_browserified/itineraries/index.js
+++ b/app/assets/javascripts/es6_browserified/itineraries/index.js
@@ -5,6 +5,7 @@ var createStore = require('redux').createStore
var reducers = require('./reducers')
var App = require('./components/App')
var addInput = require('./form_helper')
+let datas = JSON.parse(decodeURIComponent(window.itinerary_stop))
// logger, DO NOT REMOVE
// var applyMiddleware = require('redux').applyMiddleware
@@ -14,7 +15,6 @@ var addInput = require('./form_helper')
const getInitialState = () => {
let state = []
- let datas = JSON.parse(decodeURIComponent(window.itinerary_stop))
datas.map(function(v, i) {
let fancyText = v.name.replace("'", "\'")
@@ -67,10 +67,7 @@ render(
document.querySelector('input[name=commit]').addEventListener('click', (event)=>{
let state = store.getState()
state.stopPoints.map((stopPoint, i) => {
- if (stopPoint.stoppoint_id == undefined){
- stopPoint.stoppoint_id = ""
- }
- addInput('id',stopPoint.stoppoint_id, i)
+ addInput('id', (datas[i]) ? datas[i].stoppoint_id : '', i)
addInput('stop_area_id',stopPoint.stoparea_id, i)
addInput('position',i, i)
addInput('for_boarding',stopPoint.for_boarding, i)
diff --git a/app/assets/javascripts/es6_browserified/time_tables/components/ExceptionsInDay.js b/app/assets/javascripts/es6_browserified/time_tables/components/ExceptionsInDay.js
index e90099283..cc7980b22 100644
--- a/app/assets/javascripts/es6_browserified/time_tables/components/ExceptionsInDay.js
+++ b/app/assets/javascripts/es6_browserified/time_tables/components/ExceptionsInDay.js
@@ -17,7 +17,7 @@ class ExceptionsInDay extends Component {
<div className='td'>
<button
type='button'
- className='btn btn-circle'
+ className={'btn btn-circle' + (this.props.value.current_month[this.props.index].excluded_date ? ' active' : '')}
data-actiontype='remove'
onClick={(e) => {
$(e.currentTarget).toggleClass('active')
@@ -33,7 +33,7 @@ class ExceptionsInDay extends Component {
<div className='td'>
<button
type='button'
- className='btn btn-circle'
+ className={'btn btn-circle' + (this.props.value.current_month[this.props.index].include_date ? ' active' : '')}
data-actiontype='add'
onClick={(e) => {
$(e.currentTarget).toggleClass('active')
diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/DuplicateVehicleJourney.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/DuplicateVehicleJourney.js
index bab6fa78f..f5e01de7c 100644
--- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/DuplicateVehicleJourney.js
+++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/DuplicateVehicleJourney.js
@@ -64,7 +64,7 @@ class DuplicateVehicleJourney extends Component {
<div className='col-lg-3 col-md-3 col-sm-3 col-xs-3'>
<div className='form-group'>
<label className='control-label is-required'>Horaire de départ</label>
- <span className={'input-group time'}>
+ <span className={'input-group time' + (actions.getSelected(this.props.vehicleJourneys).length > 1 ? ' disabled' : '')}>
<input
type='number'
ref='duplicate_time_hh'
@@ -72,6 +72,7 @@ class DuplicateVehicleJourney extends Component {
max='23'
className='form-control'
defaultValue={this.getDefaultValue('hour')}
+ disabled={(actions.getSelected(this.props.vehicleJourneys).length > 1 ? 'disabled' : '')}
/>
<span>:</span>
<input
@@ -81,6 +82,7 @@ class DuplicateVehicleJourney extends Component {
max='59'
className='form-control'
defaultValue={this.getDefaultValue('minute')}
+ disabled={(actions.getSelected(this.props.vehicleJourneys).length > 1 ? 'disabled' : '')}
/>
</span>
</div>
diff --git a/app/controllers/workbenches_controller.rb b/app/controllers/workbenches_controller.rb
index d621a28d7..ccd55965b 100644
--- a/app/controllers/workbenches_controller.rb
+++ b/app/controllers/workbenches_controller.rb
@@ -68,7 +68,7 @@ class WorkbenchesController < BreadcrumbController
def ransack_periode scope
return scope unless params[:q] && params[:q]['validity_period']
periode = params[:q]['validity_period']
- return scope if periode['end_lteq(1i)'].empty? || periode['begin_gteq(1i)'].empty?
+ return scope if periode['end_lteq(1i)'].blank? || periode['begin_gteq(1i)'].blank?
begin_range = Date.civil(periode["begin_gteq(1i)"].to_i, periode["begin_gteq(2i)"].to_i, periode["begin_gteq(3i)"].to_i)
end_range = Date.civil(periode["end_lteq(1i)"].to_i, periode["end_lteq(2i)"].to_i, periode["end_lteq(3i)"].to_i)
diff --git a/app/models/chouette/time_table.rb b/app/models/chouette/time_table.rb
index 37f609163..60684411a 100644
--- a/app/models/chouette/time_table.rb
+++ b/app/models/chouette/time_table.rb
@@ -551,8 +551,9 @@ class Chouette::TimeTable < Chouette::TridentActiveRecord
def duplicate
tt = self.deep_clone :include => [:periods, :dates], :except => :object_version
tt.uniq_objectid
+ tt.tag_list.add(*self.tag_list) unless self.tag_list.empty?
tt.created_from = self
- tt.comment = I18n.t("activerecord.copy", :name => self.comment)
+ tt.comment = I18n.t("activerecord.copy", :name => self.comment)
tt
end
end
diff --git a/app/views/referentials/_filters.html.slim b/app/views/referentials/_filters.html.slim
index 1ed0939ff..4b09ce1a6 100644
--- a/app/views/referentials/_filters.html.slim
+++ b/app/views/referentials/_filters.html.slim
@@ -9,7 +9,7 @@
.ffg-row
.form-group.togglable
= f.label @reflines.human_attribute_name(:transport_mode), required: false, class: 'control-label'
- = f.input :transport_mode_eq_any, collection: LineReferential.first.transport_modes, as: :check_boxes, label: false, label_method: lambda{|l| ("<span>" + t("transport_modes.label.#{l}") + "</span>").html_safe}, required: false, wrapper_html: { class: 'checkbox_list' }
+ = f.input :transport_mode_eq_any, collection: @referential.lines.pluck(:transport_mode).uniq.compact, as: :check_boxes, label: false, label_method: lambda{|l| ("<span>" + t("enumerize.line.transport_mode.#{l}") + "</span>").html_safe}, required: false, wrapper_html: { class: 'checkbox_list' }
.form-group.togglable
= f.label @reflines.human_attribute_name(:network), required: false, class: 'control-label'
diff --git a/app/views/routes/show.html.slim b/app/views/routes/show.html.slim
index 2bdf78119..bc69e35e9 100644
--- a/app/views/routes/show.html.slim
+++ b/app/views/routes/show.html.slim
@@ -10,7 +10,7 @@
.col-lg-12.text-right
= link_to t('journey_patterns.index.title'), [@referential, @line, @route, :journey_patterns_collection], class: 'btn btn-primary'
- if @route.journey_patterns.present?
- = link_to t('vehicle_journeys.actions.index'), [@referential, @line, @route, :vehicle_journeys], class: 'btn btn-primary'
+ = link_to t('vehicle_journeys.actions.index'), [@referential, @line, @route, :vehicle_journeys], data: {turbolinks: false}, class: 'btn btn-primary'
= link_to t('vehicle_journey_exports.new.title'), referential_line_route_vehicle_journey_exports_path(@referential, @line, @route, format: :zip), class: 'btn btn-primary'
diff --git a/config/locales/transport_modes.fr.yml b/config/locales/transport_modes.fr.yml
index e889d59f6..13d037815 100644
--- a/config/locales/transport_modes.fr.yml
+++ b/config/locales/transport_modes.fr.yml
@@ -1,3 +1,4 @@
+# Deprecated, to remove (see #3324)
fr:
transport_modes:
name: "Mode de transport"
diff --git a/spec/models/chouette/time_table_spec.rb b/spec/models/chouette/time_table_spec.rb
index 18d76e805..1d0fa8585 100644
--- a/spec/models/chouette/time_table_spec.rb
+++ b/spec/models/chouette/time_table_spec.rb
@@ -1363,6 +1363,11 @@ end
end
describe "#duplicate" do
+ it 'should also copy tags' do
+ subject.tag_list.add('tag1', 'tag2')
+ expect(subject.duplicate.tag_list).to include('tag1', 'tag2')
+ end
+
it "should be a copy of" do
target=subject.duplicate
expect(target.id).to be_nil