aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/assets/stylesheets/application.sass1
-rw-r--r--app/assets/stylesheets/main/access_links.sass18
-rw-r--r--app/assets/stylesheets/main/access_points.sass78
-rw-r--r--app/assets/stylesheets/main/api_keys.sass7
-rw-r--r--app/assets/stylesheets/main/calendar.sass98
-rw-r--r--app/assets/stylesheets/main/calendars.sass11
-rw-r--r--app/assets/stylesheets/main/companies.sass9
-rw-r--r--app/assets/stylesheets/main/compliance_checks.sass157
-rw-r--r--app/assets/stylesheets/main/connection_links.sass30
-rw-r--r--app/assets/stylesheets/main/errors.sass21
-rw-r--r--app/assets/stylesheets/main/export_tasks.sass10
-rw-r--r--app/assets/stylesheets/main/exports.sass19
-rw-r--r--app/assets/stylesheets/main/group_of_lines.sass15
-rw-r--r--app/assets/stylesheets/main/help.sass121
-rw-r--r--app/assets/stylesheets/main/import_tasks.sass11
-rw-r--r--app/assets/stylesheets/main/imports.sass40
-rw-r--r--app/assets/stylesheets/main/journey_patterns.sass49
-rw-r--r--app/assets/stylesheets/main/layout.sass133
-rw-r--r--app/assets/stylesheets/main/lines.sass87
-rw-r--r--app/assets/stylesheets/main/multiple_selection.sass17
-rw-r--r--app/assets/stylesheets/main/networks.sass9
-rw-r--r--app/assets/stylesheets/main/organisations.sass5
-rw-r--r--app/assets/stylesheets/main/referentials.sass34
-rw-r--r--app/assets/stylesheets/main/route_sections.sass54
-rw-r--r--app/assets/stylesheets/main/routes.sass46
-rw-r--r--app/assets/stylesheets/main/rule_parameter_sets.sass45
-rw-r--r--app/assets/stylesheets/main/simple_form.sass3
-rw-r--r--app/assets/stylesheets/main/stop_areas.sass165
-rw-r--r--app/assets/stylesheets/main/stop_points.sass26
-rw-r--r--app/assets/stylesheets/main/time_table_combinations.sass7
-rw-r--r--app/assets/stylesheets/main/time_tables.sass135
-rw-r--r--app/assets/stylesheets/main/vehicle_journey_frequencies.sass155
-rw-r--r--app/assets/stylesheets/main/vehicle_journeys.sass118
-rw-r--r--app/assets/stylesheets/main/vehicle_translation.sass10
-rw-r--r--app/assets/stylesheets/modules/import_messages.sass5
-rw-r--r--app/controllers/api/v1/netex_imports_controller.rb2
-rw-r--r--app/models/import.rb3
-rw-r--r--app/models/import_message_export.rb2
-rw-r--r--app/views/import_resources/index.html.slim85
-rw-r--r--app/workers/workbench_import_worker.rb5
-rw-r--r--config/locales/import_messages.en.yml96
-rw-r--r--config/locales/import_messages.fr.yml94
42 files changed, 150 insertions, 1886 deletions
diff --git a/app/assets/stylesheets/application.sass b/app/assets/stylesheets/application.sass
index e3f776640..50f8b64cb 100644
--- a/app/assets/stylesheets/application.sass
+++ b/app/assets/stylesheets/application.sass
@@ -18,3 +18,4 @@
@import 'modules/jp_collection'
@import 'modules/vj_collection'
@import 'modules/timetables'
+@import 'modules/import_messages'
diff --git a/app/assets/stylesheets/main/access_links.sass b/app/assets/stylesheets/main/access_links.sass
deleted file mode 100644
index 65a81a2f8..000000000
--- a/app/assets/stylesheets/main/access_links.sass
+++ /dev/null
@@ -1,18 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-#workspace.access_links.show
- .summary p label
- font-weight: bold
-
- .duration
- padding-left: 10px
-
-#workspace.access_links.edit,
-#workspace.access_links.new,
-#workspace.access_links.create,
-#workspace.access_links.update
- .time_select ol
- padding: 0 0 0 40%
- width: 100% \ No newline at end of file
diff --git a/app/assets/stylesheets/main/access_points.sass b/app/assets/stylesheets/main/access_points.sass
deleted file mode 100644
index 11e41967b..000000000
--- a/app/assets/stylesheets/main/access_points.sass
+++ /dev/null
@@ -1,78 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.access_points.index
-
-#workspace.access_points.edit,
-#workspace.access_points.new,
-#workspace.access_points.create,
-#workspace.access_points.update
- .time_select ol
- padding: 0 0 0 40%
- width: 100%
-
-#workspace.access_points.edit
- legend
- padding-bottom: 20px
-
-#workspace.access_points.show
- .geo_data
- padding-left: 15px
-
- .summary
- p label
- font-weight: bold
-
- .access_link_pairs
- table
- border: 0px
- border-collapse: separate
- border-spacing: 3px
-
- .link
- border: 2px solid black
-
- .access_point
- padding: 3px 15px 0px 3px
- height: 25px
-
- *
- vertical-align: middle
-
- span
- margin-left: 7px
-
- img
- margin: 0px 5px 0px 5px
-
- .stop_area
- padding: 3px 15px 0px 3px
- height: 25px
-
- *
- vertical-align: middle
-
- span
- margin-left: 7px
-
- img
- margin: 0px 5px 0px 5px
-
- .info
- font-size: 10px
- color: #777
- font-weight: normal
- padding-top: 10px
- padding-left: 45px
- padding-right: 3px
- padding-bottom: 3px
-
-#sidebar ul.selection li
- a
- line-height: 27px
-
- img
- height: 25px
- width: 25px
- vertical-align: middle \ No newline at end of file
diff --git a/app/assets/stylesheets/main/api_keys.sass b/app/assets/stylesheets/main/api_keys.sass
deleted file mode 100644
index 28bf171b9..000000000
--- a/app/assets/stylesheets/main/api_keys.sass
+++ /dev/null
@@ -1,7 +0,0 @@
-// Place all the styles related to the routes controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-#workspace.api_keys.show
- .summary p label
- font-weight: bold \ No newline at end of file
diff --git a/app/assets/stylesheets/main/calendar.sass b/app/assets/stylesheets/main/calendar.sass
deleted file mode 100644
index f24f2b212..000000000
--- a/app/assets/stylesheets/main/calendar.sass
+++ /dev/null
@@ -1,98 +0,0 @@
-// A grey based theme, inspired by Blinksale and their ColorBurn widget. http://firewheeldesign.com
-
-// AUTHOR: Geoffrey Grosenbach http://nubyonrails.com
-
-// Colors:
-// dk: 787888
-// lt: 4f4f5b
-// lter: a8a8a8
-// white: ffffff
-
-$selected_period_color: #ffbd2b
-$selected_date_color: #8fc861
-$excluded_date_color: #ff8f85
-$overlap_date_color: #c082f4
-
-.year_choice
- font-size: 16px
- font-weight: bold
- margin: 10px 0 0 0
- text-align: center
-
- .year
- text-align: center
-
-.calendar_helper
- padding: auto
-
-.calendar
- font-size: 10px
- color: white
- text-align: center
- margin-left: 15px
- display: inline-table
-
-thead tr
- color: black
-
-th.monthName
- font-size: 12px
- font-weight: bold
- text-align: center
- padding-top: 1em
- padding-bottom: 0.7em
- color: black
-
-.dayName th
- text-align: center
- padding-top: 0.6em
- padding-bottom: 0.3em
- background-color: #303030
- color: white
- border-bottom: 1px solid white
-
-.otherMonth
- color: #999999
- background-color: #4f4f5b
- padding: 0.7em
- border-right: 1px solid #111111
- border-bottom: 1px solid #111111
-
-.day
- background-color: #333333
-
-.day, .specialDay
- border-bottom: 1px solid #111111
- padding: 0.7em
- border-right: 1px solid #111111
- border-bottom: 1px solid #111111
-
-.specialDay
- background-color: #a8a8a8 !important
-
-.selected_period
- background-color: $selected_period_color !important
-
-.selected_date
- background-color: $selected_date_color !important
-
-.excluded_date
- background-color: $excluded_date_color !important
-
-.overlaped_date
- background-color: $overlap_date_color !important
-
-.specialDay, .selected_period, .selected_date, .overlaped_date, .excluded_date
- a, a:visited, a:hover
- color: white
- text-decoration: none
-
-.specialDay a:hover, .selected_period a:hover, .selected_date a:hover, .excluded_date a:hover, .overlaped_date a:hover
- color: black
-
-.weekendDay
- background-color: #787888
-
-.today
- background-color: white
- color: black \ No newline at end of file
diff --git a/app/assets/stylesheets/main/calendars.sass b/app/assets/stylesheets/main/calendars.sass
deleted file mode 100644
index 298ce2a62..000000000
--- a/app/assets/stylesheets/main/calendars.sass
+++ /dev/null
@@ -1,11 +0,0 @@
-#calendar_form
- .btn
- margin: 5px
- #delete-btn
- margin-top: 23px
- .well
- padding-left: 50px
-
-#calendar_search_form
- button
- margin-top: 24px
diff --git a/app/assets/stylesheets/main/companies.sass b/app/assets/stylesheets/main/companies.sass
deleted file mode 100644
index 2cf1f596c..000000000
--- a/app/assets/stylesheets/main/companies.sass
+++ /dev/null
@@ -1,9 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.companies.index
-
-#workspace.companies.show
- .summary p label
- font-weight: bold \ No newline at end of file
diff --git a/app/assets/stylesheets/main/compliance_checks.sass b/app/assets/stylesheets/main/compliance_checks.sass
deleted file mode 100644
index 451972fd5..000000000
--- a/app/assets/stylesheets/main/compliance_checks.sass
+++ /dev/null
@@ -1,157 +0,0 @@
-// #workspace.compliance_checks.index
-
-#workspace.compliance_checks.show
- @import '../modules/job_status_colors'
- @import '../modules/job_status_title'
- @import '../partials/ie_report'
- @import '../modules/links'
-
-#validation_success
- margin-top: 15px
-
-#workspace.compliance_checks.report, #workspace.imports.compliance_check
- @import '../modules/job_status_colors'
- @import '../modules/job_status_title'
- @import '../modules/links'
-
- .status
- margin-left: 10px
-
- .order
- margin-bottom: 10px
- padding: 5px
- border-top: 1px solid #e4e4e4
- border-bottom: 1px solid #e4e4e4
-
- .status_ok_error
- color: #8fc861
- .status_nok_error
- color: #e22b1b
- .status_uncheck_error
- color: #898e7f
-
- .status_ok_warning
- color: #8fc861
- .status_nok_warning
- color: #ffbd2b
- .status_uncheck_warning
- color: #898e7f
-
- .resume
- &:after
- content: " "
- display: block
- height: 0
- clear: both
- visibility: hidden
-
- .col1
- float: left
- width: 45%
-
- .col2
- margin-left: 10px
- float: left
- width: 45%
-
- .graph
- height: 200px
-
- .caption
- text-align: center
- font-weight: bold
-
- .report
- .table
- margin-top: 20px
-
- dl.inline
- width: 100%
- overflow: hidden
-
- dt
- float: left
- clear: left
- width: 35%
- padding-top: 5px
- border-top: 1px solid #eee
- -ms-word-break: break-all
- word-break: break-all
- word-break: break-word
- -webkit-hyphens: auto
- -moz-hyphens: auto
- -ms-hyphens: auto
- hyphens: auto
-
- dd
- float: left
- width: 65%
- padding-top: 10px
- border-top: 1px solid #eee
-
- .severity__improvment,
- .severity_warning,
- .severity_error
- border: 1px solid
- margin: 10px 0px
- padding: 10px 10px 10px 10px
- background-repeat: no-repeat
- background-position: 10px center
- -moz-border-radius: 0.5em
- -webkit-border-radius: 0.5em
- border-radius: 0.5em
- height: 100%
-
- &:after
- content: " "
- display: block
- height: 0
- clear: both
- visibility: hidden
-
- .status_icon
- float: left
- width: 20%
- height: auto
-
- img
- vertical-align: middle
- width: 48px
- height: 48px
-
- .status_text
- float: left
- width: 70%
-
- .code
- font-size: 12px
- font-weight: bold
-
- .severity
- font-size: 10px
-
- .explanation
- display: none
- font-size: 12px
- margin: 5px 0 0 0
-
- .attributes
- font-size: 10px
- font-weight: bold
- margin: 5px 0 0px 0
-
- .severity_improvment
- color: black
- background-color: #c5cf4c
-
- .severity_warning
- color: black
- background-color: #f1dd30
-
- .severity_error
- color: black
- background-color: #ff9a0c
-
- .file_error
- font-size: 14px
- color: #898e7f \ No newline at end of file
diff --git a/app/assets/stylesheets/main/connection_links.sass b/app/assets/stylesheets/main/connection_links.sass
deleted file mode 100644
index a23fbcdff..000000000
--- a/app/assets/stylesheets/main/connection_links.sass
+++ /dev/null
@@ -1,30 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.connection_links.index
-
-#workspace.connection_links.show
- .summary p label
- font-weight: bold
-
- .duration
- padding-left: 10px
-
-#workspace.connection_links.select_departure
- .token-input-list
- display: inline-block
-
-#workspace.connection_links.select_arrival
- .token-input-list
- display: inline-block
-
-#workspace.connection_links.edit,
-#workspace.connection_links.new,
-#workspace.connection_links.create,
-#workspace.connection_links.update
- legend
- border: 0px
-
- .panel
- margin-left: 25% \ No newline at end of file
diff --git a/app/assets/stylesheets/main/errors.sass b/app/assets/stylesheets/main/errors.sass
deleted file mode 100644
index ee603e459..000000000
--- a/app/assets/stylesheets/main/errors.sass
+++ /dev/null
@@ -1,21 +0,0 @@
-#workspace.errors
- body
- text-align: center
-
- div.error
- width: 45em
- padding: 1em
- margin: 2em auto 0 auto
- border: 1px solid #ccc
- border-right-color: #999
- border-bottom-color: #999
-
- h2
- font-size: 100%
- color: #f00
- line-height: 1.5em
- font-weight: bold
-
- a, a:visited
- text-decoration: underline
- color: blue \ No newline at end of file
diff --git a/app/assets/stylesheets/main/export_tasks.sass b/app/assets/stylesheets/main/export_tasks.sass
deleted file mode 100644
index 799b5a13f..000000000
--- a/app/assets/stylesheets/main/export_tasks.sass
+++ /dev/null
@@ -1,10 +0,0 @@
-#workspace.export_tasks.new, #workspace.export_tasks.create
- .nav
- margin: 30px 0 10px 0
-
- .highlight
- padding: 9px 14px
- margin-bottom: 14px
- background-color: #f7f7f9
- border: 1px solid #e1e1e8
- border-radius: 4px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/exports.sass b/app/assets/stylesheets/main/exports.sass
deleted file mode 100644
index 875dc13f5..000000000
--- a/app/assets/stylesheets/main/exports.sass
+++ /dev/null
@@ -1,19 +0,0 @@
-// Place all the styles related to the Exports controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-#workspace.exports.index
- .panel.export
- .panel-footer
- .history
- margin-top: 5px
-
-#workspace.exports.show
- @import '../partials/ie_report'
- @import '../modules/job_status_colors'
- @import '../modules/job_status_title'
- @import '../modules/links'
-
- .export-attributes
- font-size: 1.7em
- margin-top: 20px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/group_of_lines.sass b/app/assets/stylesheets/main/group_of_lines.sass
deleted file mode 100644
index d63eeb607..000000000
--- a/app/assets/stylesheets/main/group_of_lines.sass
+++ /dev/null
@@ -1,15 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.group_of_lines.index
-
-#workspace.group_of_lines.show
- .summary p label
- font-weight: bold
-
- .lines_detail div.page_info
- margin-top: 0px
-
- .lines
- margin-top: 10px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/help.sass b/app/assets/stylesheets/main/help.sass
deleted file mode 100644
index 87f21c3c3..000000000
--- a/app/assets/stylesheets/main/help.sass
+++ /dev/null
@@ -1,121 +0,0 @@
-#workspace.help
- ul li
- list-style: circle
- margin: 7px 0 7px 20px
-
- ol ul li
- list-style: circle
- margin: 7px 0 7px 20px
-
- ol
- list-style: none
- margin: 7px 0 7px 20px
- padding: 0
- counter-reset: num
-
- li:before
- content: counter(num) '. '
- counter-increment: num
-
- ol li:before
- content: counters(num, '.') ' '
-
- em, cite
- font-style: italic
-
- strong
- font-weight: bold
-
- p.attr_data
- font-style: italic
- text-decoration: underline
-
- p.olnext
- margin: -7px 0 0 40px !important
-
- p.ddnext
- margin: 0 0 0 30px !important
-
- p.note
- margin-left: 20px !important
- font-weight: bold
-
- p.border_image
- text-align: center
-
- img
- border-style: solid
- border-width: 1px
- border-color: rgb(187,187,187)
-
- table
- width: 100%
-
- td
- padding: 3px 5px
- width: 30%
-
- &.meta
- width: 50%
-
- th, td
- border: 1px solid black
-
- dt
- font-style: italic
- margin: 5px 0
-
- dd
- padding-left: 10px
-
-#sidebarhelp.help
- h2
- font-size: 17px
-
- h3
- font-size: 15px
-
- h4
- font-weight: bold
- padding: 7px 0
-
- ul li
- list-style: circle
- margin: 7px 0 7px 20px
-
- ol
- list-style: none
- margin: 7px 0 7px 20px
- padding: 0
- counter-reset: num
-
- li:before
- content: counter(num) '. '
- counter-increment: num
-
- ol li:before
- content: counters(num, '.') ' '
-
- em, cite
- font-style: italic
-
- strong
- font-weight: bold
-
- p.attr_data
- font-style: italic
- text-decoration: underline
-
- table
- width: 100%
-
- td
- padding: 3px 5px
- width: 30%
-
- dt
- font-style: italic
- margin: 5px 0
-
- dd
- padding-left: 10px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/import_tasks.sass b/app/assets/stylesheets/main/import_tasks.sass
deleted file mode 100644
index 810582cf2..000000000
--- a/app/assets/stylesheets/main/import_tasks.sass
+++ /dev/null
@@ -1,11 +0,0 @@
-#workspace.import_tasks.new,
-#workspace.import_tasks.create
- .nav
- margin: 30px 0 10px 0
-
- .highlight
- padding: 9px 14px
- margin-bottom: 14px
- background-color: #f7f7f9
- border: 1px solid #e1e1e8
- border-radius: 4px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/imports.sass b/app/assets/stylesheets/main/imports.sass
deleted file mode 100644
index af5e88218..000000000
--- a/app/assets/stylesheets/main/imports.sass
+++ /dev/null
@@ -1,40 +0,0 @@
-#workspace.imports.index
- .panel.import
- .panel-footer
- min-height: 5.5em
-
- .save-mode
- color: $brand-info
-
- .fa-lg
- font-size: 1em
- .fa-ban
- opacity: 0.6
-
- .history
- margin-top: 5px
-
-#workspace.imports.index,
-#workspace.imports.show
- .import-attributes
- .save-mode, .format
- display: inline-block
-
- .save-mode
- color: $brand-info
- margin-left: 0.3em
-
- .fa-ban
- opacity: 0.6
- .fa-stack
- font-size: 0.9em
-
-#workspace.imports.show
- @import '../partials/ie_report'
- @import '../modules/job_status_colors'
- @import '../modules/job_status_title'
- @import '../modules/links'
-
- .import-attributes
- font-size: 1.7em
- margin-top: 20px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/journey_patterns.sass b/app/assets/stylesheets/main/journey_patterns.sass
deleted file mode 100644
index 07c3260d4..000000000
--- a/app/assets/stylesheets/main/journey_patterns.sass
+++ /dev/null
@@ -1,49 +0,0 @@
-// Place all the styles related to the routes controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-#workspace.journey_patterns.edit,
-#workspace.journey_patterns.new,
-#workspace.journey_patterns.create,
-#workspace.journey_patterns.update
- #route_color
- width: 100px
- color: white
- font-weight: bold
-
- #journey_pattern_stop_point_ids_input fieldset .choices-group
- margin-top: 25px
-
-#workspace.journey_patterns.show
- .journey_pattern_color
- color: white
- font-weight: bold
- padding: 0 5px 0 5px
-
- .summary p label
- font-weight: bold
-
- .stop_points_detail div.page_info
- margin-top: 0px
-
- .stop_points
- margin-top: 20px
-
- .journey_pattern_stop_points
- clear: both
- margin: 0px
- padding: 0px
-
- .stop_point
- .position
- width: 25px
- height: 20px
- float: left
- background-color: #61970B
- font-weight: bold
- color: white
- margin-right: 10px
- padding-left: 4px
-
- #middle #sidebar a.control-shape
- color: orange \ No newline at end of file
diff --git a/app/assets/stylesheets/main/layout.sass b/app/assets/stylesheets/main/layout.sass
deleted file mode 100644
index d75c359ae..000000000
--- a/app/assets/stylesheets/main/layout.sass
+++ /dev/null
@@ -1,133 +0,0 @@
-body
- padding-top: 50px
-
-h1
- color: white
-
-h1, .h1, h2, .h2, h3, .h3
- margin-bottom: 20px
-
-label.label
- color: black
- font-size: 100%
-
-ol.breadcrumb
- margin-top: 10px
-
-.ce-hide
- display: none
-
-#middle
- position: relative
- min-height: 500px
- -webkit-box-shadow: 0 0 5px 2px rgba(0, 0, 0, .2)
- box-shadow: 0 0 5px 2px rgba(0, 0, 0, .2)
- padding-top: 10px
- padding-bottom: 10px
- margin-top: 20px
- margin-bottom: 20px
- background: white
-
- .main_actions
- text-align: right
-
- .alert
- margin-top: 15px
-
- #sidebar
- height: 100%
- padding-top: 20px
- border-left: 1px solid $gray-lighter
-
- &.ce-SidebarFloatBlock
- position: absolute
- height: auto
- right: 0
- background-color: #fff
- top: 45px
-
- label
- color: #555555
- font-weight: normal
- font-size: 12px
-
- a
- color: #666
-
- .actions
- margin-bottom: 20px
-
- li
- margin-bottom: 5px
-
- p
- font-size: 12px
-
- fieldset.history_tag
- font-size: 12px
- color: $gray-light
-
- legend
- font-size: 14px
- margin-bottom: 10px
-
- fieldset
- border-color: white
-
- p
- margin-top: 5px
-
- label
- font-size: 12px
- span
- font-style: oblique
- font-size: 12px
-
- ol
- padding: 0px
-
- li
- list-style: none
-
- ul
- padding: 0px
-
- li
- list-style: none
-
- ul.selection li
- a
- padding-left: 20px
-
- &.current
- text-decoration: none
- color: black !important
- background: url(image-path('icons/accept.png')) no-repeat
-
- &.all
- background-image: none
-
- div#compact_form
- form
- border-bottom: 1px solid #BBB
-
- fieldset
- padding: 0
- border: 0
-
- li
- padding: 0
-
- label
- padding-left: 20px
- width: 70%
-
- input
- width: 20px
-
- fieldset.actions
- margin-bottom: 0
- padding-left: 20px
-
- fieldset.inputs
- padding-top: 16px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/lines.sass b/app/assets/stylesheets/main/lines.sass
deleted file mode 100644
index b9bdfae8f..000000000
--- a/app/assets/stylesheets/main/lines.sass
+++ /dev/null
@@ -1,87 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-#workspace.lines.index
- input[type='checkbox'].multiple_selection
- vertical-align: middle
-
- #search
- label
- margin-bottom: 0px
-
- input[type='checkbox']
- margin-left: 3px
-
-#workspace.lines.edit,
-#workspace.lines.new,
-#workspace.lines.create,
-#workspace.lines.update
- #line_color_old
- width: 100px
- color: white
- font-weight: bold
-
- .nested-fields.footnote, .add_footnote
- @extend .col-md-offset-3
-
- .footnotes_block
- margin-bottom: 30px
-
-#workspace.lines.show
- .summary p
- label
- font-weight: bold
-
- .color
- padding: 3px 15px 3px 15px
-
- .group_of_line
- .position
- width: 25px
- height: 20px
- float: left
- background-color: #61970B
- font-weight: bold
- color: white
- margin-right: 10px
- padding-left: 4px
-
- .color
- background-color: white
- width: 64px
- height: 64px
- float: left
- margin-right: 10px
- border: 1px solid #999
-
- a
- text-decoration: none
-
- .name a
- display: inline
-
-.ce-LineBlock-header-list
- display: table
- width: 100%
- margin: 0
- padding: 0
-
- > li
- display: table-cell
- vertical-align: middle
-
- > input
- margin-top: 0
-
- &:first-child
- width: 37px
-
- &:last-child
- text-align: right
- width: 73px
-
-.ce-LineBlock-header-title
- padding: 0 !important
- line-height: 12px
- font-size: 13px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/multiple_selection.sass b/app/assets/stylesheets/main/multiple_selection.sass
deleted file mode 100644
index b46dded01..000000000
--- a/app/assets/stylesheets/main/multiple_selection.sass
+++ /dev/null
@@ -1,17 +0,0 @@
-input[type='checkbox'].multiple_selection
- margin-left: 0px
- position: absolute
- top: 0px
-
-#multiple_selection_menu
- h3
- margin-top: 20px
-
- div
- padding: 6px 8px
-
- .actions
- margin-top: 20px
-
- .select_all, .deselect_all
- font-size: 0.8em \ No newline at end of file
diff --git a/app/assets/stylesheets/main/networks.sass b/app/assets/stylesheets/main/networks.sass
deleted file mode 100644
index 4d3717f26..000000000
--- a/app/assets/stylesheets/main/networks.sass
+++ /dev/null
@@ -1,9 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.networks.index
-
-#workspace.networks.show
- .summary p label
- font-weight: bold \ No newline at end of file
diff --git a/app/assets/stylesheets/main/organisations.sass b/app/assets/stylesheets/main/organisations.sass
deleted file mode 100644
index 4bfee860a..000000000
--- a/app/assets/stylesheets/main/organisations.sass
+++ /dev/null
@@ -1,5 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.organisations.show \ No newline at end of file
diff --git a/app/assets/stylesheets/main/referentials.sass b/app/assets/stylesheets/main/referentials.sass
deleted file mode 100644
index 293807560..000000000
--- a/app/assets/stylesheets/main/referentials.sass
+++ /dev/null
@@ -1,34 +0,0 @@
-// Place all the styles related to the referentials controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.referentials.index
-
-#workspace.referentials.show
- .summary p label
- font-weight: bold
-
- .panel
- font-size: 12px
- width: 75%
-
- .panel-heading
- font-weight: bold
-
- li.list-group-item
- padding: 5px 15px
-
-#sidebar div#clean_up
- form
- fieldset
- li
- margin-bottom: 0px
-
- &.date
- input
- width: 125px
- font-size: 12px
- height: 25px
-
- label
- width: 35% \ No newline at end of file
diff --git a/app/assets/stylesheets/main/route_sections.sass b/app/assets/stylesheets/main/route_sections.sass
deleted file mode 100644
index fe3c98c10..000000000
--- a/app/assets/stylesheets/main/route_sections.sass
+++ /dev/null
@@ -1,54 +0,0 @@
-#workspace.route_sections_selectors.edit
- td.route_section
- .input
- padding: 0
- margin: 0
-
- select
- width: 100%
-
- a.edit-route-section
- background: url(image-path('icons/edit.png')) no-repeat 0% 50%
- text-indent: -9999px
- display: inline-block
- width: 16px
- height: 16px
- margin-right: 8px
-
- &.disabled
- background-image: url(image-path('icons/edit-disabled.png'))
-
- #map-selection
- position: relative
-
- span
- display: inline-block
-
- .departure, .arrival
- width: 25%
-
- .actions
- width: 25%
- overflow: visible
- padding-left: 0
- position: absolute
- right: 0
-
-#workspace.route_sections.index
- th.distance, th.points
- text-align: center
-
- td.distance, td.points, td.actions
- text-align: center
-
-#workspace.route_sections.edit
- .formtastic
- .input .label
- width: 40%
-
- .actions
- padding-left: 19%
-
- #map
- width: 600px
- heigth: 600px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/routes.sass b/app/assets/stylesheets/main/routes.sass
deleted file mode 100644
index 977d2f4b3..000000000
--- a/app/assets/stylesheets/main/routes.sass
+++ /dev/null
@@ -1,46 +0,0 @@
-// Place all the styles related to the routes controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.lines.show
-
-#workspace.routes.edit,
-#workspace.routes.new,
-#workspace.routes.create,
-#workspace.routes.update
- #route_color
- width: 100px
- color: white
- font-weight: bold
-
- #stop_points .nested-fields
- ol
- margin-left: 25%
-
- .handle
- margin-left: 5px
-
- .search_stop_area
- margin-bottom: 0px !important
-
- div.resize
- height: 40px
- line-height: 40px
- font-size: 16px
-
- #stop_points .links
- margin: 10px 0 15px 25%
-
-#workspace.routes.edit_boarding_alighting
- .stop_area
- padding-top: 7px
-
-// #workspace.routes.show
-
-.large-map
- width: 100%
- height: 600px
-
- #map
- width: 100%
- height: 100% \ No newline at end of file
diff --git a/app/assets/stylesheets/main/rule_parameter_sets.sass b/app/assets/stylesheets/main/rule_parameter_sets.sass
deleted file mode 100644
index ab58b7bf9..000000000
--- a/app/assets/stylesheets/main/rule_parameter_sets.sass
+++ /dev/null
@@ -1,45 +0,0 @@
-// Place all the styles related to the rule_parameter_sets controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.rule_parameter_sets.index
-
-#workspace.rule_parameter_sets.show,
-#workspace.compliance_check_tasks.rule_parameter_set
- .summary label
- font-weight: bold
-
- div.attributes_group
- margin: 15px 0 15px 0
-
- .title
- font-weight: bold
-
- .columns
- margin-left: 10px
-
- div
- display: inline-block
-
- &.two_columns
- width: 45%
- &.three_columns
- width: 30%
- &.four_columns
- width: 23%
-
- label
- color: #616161
-
- .value
- margin-left: 5px
-
- div.rule_parameter_by_mode
- margin: 20px 0 0 0 !important
-
- .mode_specific
- display: none
- margin: 0 0 0 10px
-
- p label
- color: #616161 \ No newline at end of file
diff --git a/app/assets/stylesheets/main/simple_form.sass b/app/assets/stylesheets/main/simple_form.sass
deleted file mode 100644
index 143ea692c..000000000
--- a/app/assets/stylesheets/main/simple_form.sass
+++ /dev/null
@@ -1,3 +0,0 @@
-#workspace
- .submit
- @extend .col-md-offset-3 \ No newline at end of file
diff --git a/app/assets/stylesheets/main/stop_areas.sass b/app/assets/stylesheets/main/stop_areas.sass
deleted file mode 100644
index f8e1e148a..000000000
--- a/app/assets/stylesheets/main/stop_areas.sass
+++ /dev/null
@@ -1,165 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-#workspace.stop_areas.index
- #country_codes
- display: none
-
-#workspace.stop_areas.edit,
-#workspace.stop_areas.new,
-#workspace.stop_areas.update,
-#workspace.stop_areas.create
- legend
- padding-bottom: 20px
-
- #prefetch
- padding: 10px 10px 20px 10px
-
- label
- font-size: 16px
- margin-right: 25px
-
- input
- width: 330px
-
- #map
- width: 50%
-
-#workspace.stop_areas.show
- .geo_data
- padding-left: 15px
-
- .summary
- p label
- font-weight: bold
-
-.genealogical
- .parent
- border: 2px solid black
- float: left
- padding: 3px 15px 3px 3px
-
- *
- vertical-align: middle
-
- span
- margin-left: 7px
- img
- margin: 0px 5px 0px 5px
-
- .lines
- float: left
-
- .line
- border: 2px solid black
- padding: 3px 15px 3px 3px
- height: 25px
- margin-bottom: 5px
-
- *
- vertical-align: middle
-
- span
- margin-left: 7px
- img
- margin: 0px 5px 0px 5px
-
- .no_parent
- float: left
- padding: 3px 15px 3px 3px
- width: 150px
-
- .target
- border: 2px solid #86b41d
- float: left
- padding: 3px 15px 3px 3px
- font-weight: bold
-
- *
- vertical-align: middle
-
- span
- margin-left: 7px
- img
- margin: 0px 5px 0px 5px
-
- .children
- float: left
-
- .child
- border: 2px solid black
- padding: 3px 15px 3px 3px
- margin-bottom: 5px
-
- *
- vertical-align: middle
-
- span
- margin-left: 7px
- img
- margin: 0px 5px 0px 5px
-
- .link
- float: left
- padding: 7px
- margin-right: 10px
- margin-left: 10px
- height: 25px
-
-#workspace.stop_areas.select_parent
- .token-input-list
- display: inline-block
-
-#workspace.stop_areas.add_children
- .token-input-list
- display: inline-block
-
-#workspace.stop_areas.access_links
- .access_link_pairs
- .link
- border: 2px solid black
-
- .access_point
- float: left
- padding: 3px 15px 0px 3px
- height: 25px
-
- *
- vertical-align: middle
-
- span
- margin-left: 7px
- img
- margin: 0px 5px 0px 5px
-
- .stop_area
- float: left
- padding: 3px 15px 0px 3px
- height: 25px
-
- *
- vertical-align: middle
-
- span
- margin-left: 7px
- img
- margin: 0px 5px 0px 5px
-
- .info
- font-size: 10px
- color: #777
- font-weight: normal
- padding-top: 0px
- padding-left: 45px
- padding-right: 3px
- padding-bottom: 3px
-
-#sidebar ul.selection li
- a
- line-height: 27px
-
- img
- height: 25px
- width: 25px
- vertical-align: middle \ No newline at end of file
diff --git a/app/assets/stylesheets/main/stop_points.sass b/app/assets/stylesheets/main/stop_points.sass
deleted file mode 100644
index a17814d3b..000000000
--- a/app/assets/stylesheets/main/stop_points.sass
+++ /dev/null
@@ -1,26 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-#workspace.stop_points.index
- // .stop_points
-
- #sortable_stop_points .stop_point
- /* to create multi-column index */
- width: 350px
- padding-right: 10px
-
- .handle
- cursor: move
- margin-right: 7px
- margin-bottom: 20px
-
- a.link
- background: url(image-path('icons/link-small.png')) no-repeat 0% 50%
-
- .position
- background-color: #61970B
- font-weight: bold
- color: white
- margin-right: 10px
- padding-left: 4px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/time_table_combinations.sass b/app/assets/stylesheets/main/time_table_combinations.sass
deleted file mode 100644
index 9de2c2235..000000000
--- a/app/assets/stylesheets/main/time_table_combinations.sass
+++ /dev/null
@@ -1,7 +0,0 @@
-#modal_combine
- .time_table_combination
- .radio input[type='radio']
- position: inherit !important
-
- .inputs
- overflow: visible !important \ No newline at end of file
diff --git a/app/assets/stylesheets/main/time_tables.sass b/app/assets/stylesheets/main/time_tables.sass
deleted file mode 100644
index 6918bec1e..000000000
--- a/app/assets/stylesheets/main/time_tables.sass
+++ /dev/null
@@ -1,135 +0,0 @@
-// Place all the styles related to the lines controller here.
-// They will automatically be included in application.css.
-// You can use Sass (SCSS) here: http://sass-lang.com/
-
-// #workspace.time_tables.index
-
-#workspace.time_tables.show
- .modal-body
- overflow-y: visible
-
- .summary
- margin-top: 20px
-
- p label
- font-weight: bold
-
- .legend
- margin-top: 20px
-
- .title
- font-weight: bold
-
- .excluded_date, .overlaped_date, .selected_date, .selected_period
- margin-left: 20px
- margin-right: 5px
-
- .typeahead.dropdown-menu
- z-index: 100001
-
- .validity_out
- color: red
-
- .validity_out_soon
- color: orange
-
- .validity_regular
- color: green
-
- span.included_day_type
- font-weight: bolder
- margin-right: 3px
-
- span.excluded_day_type
- margin-right: 3px
-
- .period
- padding-left: 50px
- padding-right: 450px
-
- .date
- padding-left: 50px
-
- .odd
- padding-left: 50px
- padding-right: 450px
-
- .even
- padding-left: 50px
- padding-right: 450px
-
- .actions
- float: right
-
- #associated_calendars
- padding-top: 15px
-
-#workspace.time_tables.edit,
-#workspace.time_tables.new,
-#workspace.time_tables.create,
-#workspace.time_tables.update,
-#workspace.time_tables.duplicate
- fieldset.inputs
- overflow: visible !important
-
- .tags
- overflow: visible !important
-
- h3
- .dates
- cursor: pointer
-
- .periods
- cursor: pointer
-
- .excluded_dates
- cursor: pointer
-
- #dates,
- #excluded_dates,
- #periods
- margin-left: 25%
-
- .nested-fields
- margin: 5px
-
- ol li
- display: inline
-
- .day_type ol
- float: left
- margin: 0
- padding: 0 0 0 0
- width: 100%
- list_style: none outside none
- margin-top: 1em
- margin-bottom: 1em
-
- li
- float: left
- margin: 0 0 0 0
- width: auto
- padding: 0
-
- label
- padding-left: 10%
- margin-top: 0
-
- .day_type_label
- float: left
- margin-top: 0
- width: 25%
-
- a.add_fields
- margin-left: 25%
- margin-top: 20px
- padding-left: 18px
- background: url(image-path('icons/add.png')) no-repeat 0% 50%
-
- a.remove_fields
- margin-left: 10px
- padding-left: 18px
- background: url(image-path('icons/remove.png')) no-repeat 0% 50%
-
- .actions
- margin-top: 20px
diff --git a/app/assets/stylesheets/main/vehicle_journey_frequencies.sass b/app/assets/stylesheets/main/vehicle_journey_frequencies.sass
deleted file mode 100644
index a827cc4d2..000000000
--- a/app/assets/stylesheets/main/vehicle_journey_frequencies.sass
+++ /dev/null
@@ -1,155 +0,0 @@
-#workspace
- .ce-TimeBandFormTable
- .btn
- white-space: normal
- width: 130px
- font-size: 11px
- padding: 2px 0
-
- .ce-TimeBandFormTable
- th
- text-align: left
- padding: 6px 20px
-
- td
- padding: 6px 20px
-
- .ce-TimeBandFormTable td
- vertical-align: middle
-
- .ce-TimeBandFormTable-circleLine
- position: relative
-
- .ce-TimeBandFormTable-line:after
- content: ''
- position: absolute
- top: 0
- bottom: 0
- left: 50%
- width: 2px
- margin-left: -1px
- background-color: #61970b
-
- tr:first-child td .ce-TimeBandFormTable-line:after
- top: 50%
-
- tr:last-child td .ce-TimeBandFormTable-line:after
- bottom: 50%
-
- .ce-TimeBandFormTable-circle
- position: relative
- z-index: 999
- display: block
- width: 16px
- height: 16px
- border-radius: 8px
- background-color: #4d7809
-
- tr:hover .ce-TimeBandFormTable-circle
- background-color: #fff
- border: 2px solid #61970b
-
- .ce-FrequencyFormFields
- display: table
- width: 100%
- padding-left: 25%
-
- .token-input-list
- width: 80%
-
- .inline-errors
- margin: 0
-
- > li
- display: table-cell
- width: 21%
- vertical-align: top
- padding: 0
- margin: 0
-
- &:first-child select
- width: 160px
-
- &:nth-last-child(2), &:last-child
- width: 8%
-
- label
- font-size: 13px
- padding-left: 0
-
- legend
- position: relative
- width: auto
- float: none
- border: 0
-
- label
- position: relative
-
- .fragments-group
- float: none
- width: auto
- padding: 0
-
- > li
- display: inline-block
- vertical-align: top
-
- &.vehicle_journey_frequencies
- .actions-add-fields
- clear: both
- padding-left: 25%
- margin-top: 10px
-
- td.ce-VehicleJourneyBlock-frequency
- background-color: rgba(95, 95, 95, 0.2)
-
- .ce-VehicleJourneyFrequencyTableBlock
- margin: 0 !important
-
- .ce-VehicleJourneyFrequenciesMatrix
- margin: 0
- padding: 0
-
- > li
- background-color: #eee
- height: 22px
- margin-bottom: 20px
- position: relative
-
- > ul
- margin: 0
- padding: 0
-
- > li
- cursor: pointer
- position: absolute
- padding: 0 2px
- top: 0
- bottom: 0
- background-color: $brand-primary
- border-left: 1px solid #000
- border-right: 1px solid #000
-
- &:hover
- z-index: 9999
- background-color: #4d7809
- top: -2px
- bottom: -2px
-
- > span
- display: block
-
- .ce-VehicleJourneyFrequenciesMatrix-firstDepartureTime,
- .ce-VehicleJourneyFrequenciesMatrix-lastDepartureTime
- display: none
- position: absolute
- top: -13px
- font-size: 11px
- color: #262626
-
- .ce-VehicleJourneyFrequenciesMatrix-firstDepartureTime
- left: -32px
-
- .ce-VehicleJourneyFrequenciesMatrix-lastDepartureTime
- right: -32px \ No newline at end of file
diff --git a/app/assets/stylesheets/main/vehicle_journeys.sass b/app/assets/stylesheets/main/vehicle_journeys.sass
deleted file mode 100644
index ec0b25dbc..000000000
--- a/app/assets/stylesheets/main/vehicle_journeys.sass
+++ /dev/null
@@ -1,118 +0,0 @@
-#workspace.vehicle_journeys.edit,
-#workspace.vehicle_journeys.update,
-#workspace.vehicle_journeys.create,
-#workspace.vehicle_journeys.new,
-#workspace.vehicle_journey_frequencies.edit,
-#workspace.vehicle_journey_frequencies.update,
-#workspace.vehicle_journey_frequencies.create,
-#workspace.vehicle_journey_frequencies.new
- #route_color
- width: 100px
- color: white
- font-weight: bold
-
- .btn
- padding: 6px 12px
-
- .time_table_list
- padding-left: 25%
-
- #vehicle_journey_footnote_ids_input,
- #vehicle_journey_frequency_footnote_ids_input
- min-height: 3em
-
- .vehicle_journey_at_stops,
- .vehicle_journey_frequency_at_stops
- margin-left: 25%
-
- thead, tbody, tfoot
- th, td
- text-align: center
-
- .journey_pattern_dependent_list
- tr.no_stop
- display: none
-
- td.departure_time, td.arrival_time
- &.missing
- background-color: $brand-warning
-
- &.invalid_position
- background-color: $brand-danger
-
- .title
- font-weight: bold
- margin-bottom: 20px
-
- span
- margin-left: 10px
- margin-right: 10px
-
- .slide
- margin-left: 30px
-
-#workspace.vehicle_journeys.index,
-#workspace.vehicle_journey_frequencies.index
- #search
- ul.token-input-list
- display: inline-block
- vertical-align: middle
- margin-left: 15px
-
- .advanced_search
- margin-left: 40px
-
- .time_tables_id_eq
- margin-left: 20px
-
- .vehicle_journey_at_stops_departure_time_gt
- margin-left: 20px
-
- table
- margin: 20px 0 0 0
-
- .calendars
- font-size: 12px
-
- .stop_area
- width: 200px
-
- td.hours
- text-align: center
-
- tr th.vehicle_journey
- text-align: center
-
-#workspace.vehicle_journeys.show,
-#workspace.vehicle_journeys.edit,
-#workspace.vehicle_journeys.update,
-#workspace.vehicle_journeys.create,
-#workspace.vehicle_journeys.new,
-#workspace.vehicle_journey_journey.show,
-#workspace.vehicle_journey_journey.edit,
-#workspace.vehicle_journey_journey.update,
-#workspace.vehicle_journey_journey.create,
-#workspace.vehicle_journey_journey.new
- .slide
- cursor: pointer
-
-#workspace.vehicle_journeys.show,
-#workspace.vehicle_journey_frequencies.show
- .summary p label
- font-weight: bold
-
-#workspace.vehicle_journeys.timeless,
-#workspace.vehicle_journey_frequencies.timeless
- .summary p label
- font-weight: bold
-
- .vehicle_journeys,
- .vehicle_journey_frequencies
- margin-top: 20px
-
- .vehicle_journey,
- .vehicle_journey_frequency
- span.included_day_type
- font-weight: bolder
-
- // span.excluded_day_type \ No newline at end of file
diff --git a/app/assets/stylesheets/main/vehicle_translation.sass b/app/assets/stylesheets/main/vehicle_translation.sass
deleted file mode 100644
index f1fd12e14..000000000
--- a/app/assets/stylesheets/main/vehicle_translation.sass
+++ /dev/null
@@ -1,10 +0,0 @@
-#translate_form
- .repeat_cloning
- margin-top: 30px
-
- .modal-footer
- .actions
- padding-left: 75%
-
- li
- margin: 0 \ No newline at end of file
diff --git a/app/assets/stylesheets/modules/import_messages.sass b/app/assets/stylesheets/modules/import_messages.sass
new file mode 100644
index 000000000..e5666cbcd
--- /dev/null
+++ b/app/assets/stylesheets/modules/import_messages.sass
@@ -0,0 +1,5 @@
+.import_messages
+ .status_icon
+ padding-right: 20px
+ h1
+ padding-bottom: 20px
diff --git a/app/controllers/api/v1/netex_imports_controller.rb b/app/controllers/api/v1/netex_imports_controller.rb
index 046802ff9..fc85e35dd 100644
--- a/app/controllers/api/v1/netex_imports_controller.rb
+++ b/app/controllers/api/v1/netex_imports_controller.rb
@@ -41,7 +41,7 @@ module Api
unless @netex_import.referential
Rails.logger.info "Can't create referential for import #{@netex_import.id}: #{@new_referential.inspect} #{@new_referential.metadatas.inspect} #{@new_referential.errors.full_messages}"
- @netex_import.messages.create criticity: :error, message_key: "cant_create_referential"
+ @netex_import.messages.create criticity: :error, message_key: "referential_creation"
end
rescue ActiveRecord::RecordInvalid
render json: {errors: @netex_import.errors}, status: 406
diff --git a/app/models/import.rb b/app/models/import.rb
index 30aa98273..55d74c13c 100644
--- a/app/models/import.rb
+++ b/app/models/import.rb
@@ -12,7 +12,7 @@ class Import < ActiveRecord::Base
scope :started_on_date, ->(date) { where('started_at BETWEEN ? AND ?', date.beginning_of_day, date.end_of_day) }
extend Enumerize
- enumerize :status, in: %i(new pending successful warning failed running aborted canceled), scope: true
+ enumerize :status, in: %i(new pending successful warning failed running aborted canceled), scope: true, default: :new
validates :file, presence: true
validates_presence_of :workbench, :creator
@@ -95,7 +95,6 @@ class Import < ActiveRecord::Base
def initialize_fields
self.token_download = SecureRandom.urlsafe_base64
- self.status = Import.status.new
end
def self.symbols_with_indifferent_access(array)
diff --git a/app/models/import_message_export.rb b/app/models/import_message_export.rb
index 39d8f9bca..88d0f27e2 100644
--- a/app/models/import_message_export.rb
+++ b/app/models/import_message_export.rb
@@ -29,7 +29,7 @@ class ImportMessageExport
CSV.generate(options) do |csv|
csv << column_names
import_messages.each do |import_message|
- csv << [import_message.criticity, import_message.message_key, I18n.t("import_messages.#{import_message.message_key}", import_message.message_attributes.deep_symbolize_keys) ]
+ csv << [import_message.criticity, import_message.message_key, I18n.t("import_messages.compliance_check_messages.#{import_message.message_key}", import_message.message_attributes.deep_symbolize_keys) ]
end
end
end
diff --git a/app/views/import_resources/index.html.slim b/app/views/import_resources/index.html.slim
index 17e5532ae..849ed6d8d 100644
--- a/app/views/import_resources/index.html.slim
+++ b/app/views/import_resources/index.html.slim
@@ -6,50 +6,53 @@
''
/ PageContent
-.page_content
+.page_content.import_messages
.container-fluid
- - if @import_resources.any?
- .row
- .col-lg-12
- = definition_list t('metadatas'),{ 'Bilan d\'import' => link_to(@import.parent.name, workbench_import_path(@import.parent.workbench, @import.parent) ),
- 'Jeu de données associé' => ( @import.referential.present? ? link_to(@import.referential.name, referential_path(@import.referential)) : '-' ) }
+ .row
+ .col-lg-12
+ = definition_list t('metadatas'),{ 'Bilan d\'import' => link_to(@import.parent.name, workbench_import_path(@import.parent.workbench, @import.parent) ),
+ 'Jeu de données associé' => ( @import.referential.present? ? link_to(@import.referential.name, referential_path(@import.referential)) : '-' ) }
- - if @import_resources.any?
.row
.col-lg-12
h1
- span = import_status(@import.status)
+ span.status_icon = import_status(@import.status)
span = t('.table_state', lines_imported: @import_resources.lines_imported , lines_in_zipfile: @import_resources.lines_in_zipfile )
- .col-lg-12
- h2 = t('.table_title')
- .col-lg-12
- = t('.table_explanation')
- .col-lg-12
- = table_builder_2 @import_resources.where(resource_type: :file),
- [ \
- TableBuilderHelper::Column.new( \
- key: :name, \
- attribute: 'name', \
- sortable: false, \
- ), \
- TableBuilderHelper::Column.new( \
- key: :status, \
- attribute: Proc.new { |n| import_resource_status(n.status) }, \
- sortable: false, \
- ), \
- TableBuilderHelper::Column.new( \
- name: 'Résultat des tests' , \
- attribute: Proc.new { |n| I18n.t('import_resources.index.metrics', n.metrics.deep_symbolize_keys) }, \
- sortable: false, \
- ), \
- TableBuilderHelper::Column.new( \
- name: 'Téléchargement' , \
- attribute: Proc.new { |n| '<i class="fa fa-download" aria-hidden="true"></i>'.html_safe }, \
- sortable: false, \
- link_to: lambda do |import_resource| \
- workbench_import_import_resource_import_messages_path(import_resource.import.workbench, import_resource.import, import_resource, format: 'csv' ) \
- end \
- ), \
- ],
- links: [],
- cls: 'table has-search'
+ - if @import_resources.present?
+ .col-lg-12
+ h2 = t('.table_title')
+ .col-lg-12
+ = t('.table_explanation')
+ .col-lg-12
+ = table_builder_2 @import_resources.where(resource_type: :file),
+ [ \
+ TableBuilderHelper::Column.new( \
+ key: :name, \
+ attribute: 'name', \
+ sortable: false, \
+ ), \
+ TableBuilderHelper::Column.new( \
+ key: :status, \
+ attribute: Proc.new { |n| import_resource_status(n.status) }, \
+ sortable: false, \
+ ), \
+ TableBuilderHelper::Column.new( \
+ name: 'Résultat des tests' , \
+ attribute: Proc.new { |n| I18n.t('import_resources.index.metrics', n.metrics.deep_symbolize_keys) }, \
+ sortable: false, \
+ ), \
+ TableBuilderHelper::Column.new( \
+ name: 'Téléchargement' , \
+ attribute: Proc.new { |n| '<i class="fa fa-download" aria-hidden="true"></i>'.html_safe }, \
+ sortable: false, \
+ link_to: lambda do |import_resource| \
+ workbench_import_import_resource_import_messages_path(import_resource.import.workbench, import_resource.import, import_resource, format: 'csv' ) \
+ end \
+ ), \
+ ],
+ links: [],
+ cls: 'table has-search'
+ - else
+ .col-lg-12
+ - @import.messages.each do |message|
+ = I18n.t("import_messages.compliance_check_messages.#{message.message_key}")
diff --git a/app/workers/workbench_import_worker.rb b/app/workers/workbench_import_worker.rb
index 37308571e..994493944 100644
--- a/app/workers/workbench_import_worker.rb
+++ b/app/workers/workbench_import_worker.rb
@@ -99,11 +99,6 @@ class WorkbenchImportWorker
end
def params file, name
- if dest = ENV["DEBUG_TEMPFILE"]
- require 'pry'
- binding.pry
- %x{unzip -oqq #{file.path} -d #{dest}}
- end
{ netex_import:
{ parent_id: @workbench_import.id,
parent_type: @workbench_import.class.name,
diff --git a/config/locales/import_messages.en.yml b/config/locales/import_messages.en.yml
index 03d8f4363..6101a3bb7 100644
--- a/config/locales/import_messages.en.yml
+++ b/config/locales/import_messages.en.yml
@@ -1,48 +1,50 @@
en:
- import_messages:
- 1_netexstif_2: "Le fichier %{source.filename} ne respecte pas la syntaxe XML ou la XSD NeTEx : erreur '%{error_value}' rencontré"
- 1_netexstif_5: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} a une date de mise à jour dans le futur"
- 2_netexstif_1_1: "Le fichier commun.xml ne contient pas de frame nommée NETEX_COMMUN"
- 2_netexstif_1_2: "Le fichier commun.xml contient une frame nommée %{source.label} non acceptée"
- 2_netexstif_2_1: "Le fichier calendriers.xml ne contient pas de frame nommée NETEX_CALENDRIER"
- 2_netexstif_2_2: "Le fichier calendriers.xml contient une frame nommée %{source.label} non acceptée"
- 2_netexstif_3_1: "Le fichier %{source.filename} ne contient pas de frame nommée NETEX_OFFRE_LIGNE"
- 2_netexstif_3_2: "Le fichier %{source.filename} contient une frame nommée %{source.label} non acceptée"
- 2_netexstif_3_3: "la frame NETEX_OFFRE_LIGNE du fichier %{source.filename} ne contient pas la frame %{NETEX_STRUCTURE|NETEX_HORAIRE} obligatoire"
- 2_netexstif_3_4: "la frame NETEX_OFFRE_LIGNE du fichier %{source.filename} contient une frame %{source.label} non acceptée"
- 2_netexstif_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'identifiant %{source.objectid} de l'objet %{source.label} ne respecte pas la syntaxe [CODESPACE]:%{source.label}:[identifiant Technique]:LOC"
- 2_netexstif_6: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} a un état de modification interdit : 'delete'"
- 2_netexstif_7: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de syntaxe invalide : %{reference_value}"
- 2_netexstif_8_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe : référence interne attendue"
- 2_netexstif_8_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type interne mais disposant d'un contenu (version externe possible)"
- 2_netexstif_9_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type interne : référence externe attendue"
- 2_netexstif_9_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe sans information de version"
- 2_netexstif_10: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe inconnue"
- 2_netexstif_daytype_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayType d'identifiant %{source.objectid} ne définit aucun calendrier, il est ignoré"
- 2_netexstif_daytype_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayType d'identifiant %{source.objectid} est reliée à des périodes mais ne définit pas de types de jours"
- 2_netexstif_daytypeassignment_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayTypeAssignment d'identifiant %{source.objectid} ne peut référencer un OperatingDay"
- 2_netexstif_daytypeassignment_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayTypeAssignment d'identifiant %{source.objectid} ne peut référencer un OperatingPeriod sur la condition IsAvailable à faux."
- 2_netexstif_direction_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Direction d'identifiant %{source.objectid} n'a pas de valeur pour l'attribut Name"
- 2_netexstif_direction_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Direction d'identifiant %{source.objectid} définit un attribut %{error_value} non autorisé"
- 2_netexstif_notice_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Notice d'identifiant %{source.objectid} doit définir un texte"
- 2_netexstif_notice_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Notice d'identifiant %{source.objectid} de type %{reference_value} est ignoré"
- 2_netexstif_operatingperiod_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet OperatingPeriod d'identifiant %{source.objectid} a une date de fin %{start_date} inférieure ou égale à la date de début %{end_date}"
- 2_netexstif_passengerstopassignment_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'attribut %{source.label} de l'objet PassengerStopAssignment %{source.objectid} doit être renseigné"
- 2_netexstif_passengerstopassignment_2: "L'arrêt %{source.objectid} ne fait pas partie des arrêts disponibles pour votre organisation."
- 2_netexstif_passingtime_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{error_value} ne dispose pas de DepartureTime"
- 2_netexstif_passingtime_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{error_value} fournit un ArrivalTime supérieur à son DepartureTime"
- 2_netexstif_route_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} a une valeur de l'attribut DirectionType interdite : %{error_value}"
- 2_netexstif_route_2_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} référence un objet Route inverse %{reference_value} qui ne le référence pas"
- 2_netexstif_route_2_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} référence un objet Route inverse %{reference_value} de même DirectionType"
- 2_netexstif_route_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : Les ServiceJourneyPattern de l'objet Route d'identifiant %{source.objectid} ne permettent pas de reconstituer la séquence des arrêts de celui-ci"
- 2_netexstif_route_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, Les informations de montée/Descente à l'arrêt %{source.label} de la Route %{source.objectid} diffèrent sur plusieurs ServiceJourneyPattern, ces informations ne sont pas importées"
- 2_netexstif_routingconstraintzone_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'objet RoutingConstraintZone %{source.objectid} doit référencer au moins deux ScheduledStopPoint"
- 2_netexstif_routingconstraintzone_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'objet RoutingConstraintZone %{source.objectid} a une valeur interdite pour l'attribut ZoneUse : %{error_value}"
- 2_netexstif_servicejourney_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourney d'identifiant %{source.objectid} ne référence pas de ServiceJourneyPattern"
- 2_netexstif_servicejourney_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourney d'identifiant %{source.objectid} fournit plus d'un trainNumber"
- 2_netexstif_servicejourney_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : Le nombre d'horaires (passing_times) de l'objet ServiceJourney d'identifiant %{source.objectid} n'est pas cohérent avec le ServiceJourneyPattern associé."
- 2_netexstif_servicejourney_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{rank} fournit des horaires antérieurs au passingTime précédent."
- 2_netexstif_servicejourneypattern_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} ne référence pas de Route"
- 2_netexstif_servicejourneypattern_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} doit contenir au moins 2 StopPointInJourneyPattern"
- 2_netexstif_servicejourneypattern_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} n'a pas de valeur pour l'attribut ServiceJourneyPatternType"
- 2_netexstif_servicejourneypattern_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, objet ServiceJourneyPattern d'identifiant %{source.objectid} : les attributs 'order' des StopPointInJourneyPattern ne sont pas croissants."
+ compliance_check_messages:
+ import_messages:
+ referential_creation: "The referential can't be created because another one has same periods and lines"
+ 1_netexstif_2: "Le fichier %{source.filename} ne respecte pas la syntaxe XML ou la XSD NeTEx : erreur '%{error_value}' rencontré"
+ 1_netexstif_5: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} a une date de mise à jour dans le futur"
+ 2_netexstif_1_1: "Le fichier commun.xml ne contient pas de frame nommée NETEX_COMMUN"
+ 2_netexstif_1_2: "Le fichier commun.xml contient une frame nommée %{source.label} non acceptée"
+ 2_netexstif_2_1: "Le fichier calendriers.xml ne contient pas de frame nommée NETEX_CALENDRIER"
+ 2_netexstif_2_2: "Le fichier calendriers.xml contient une frame nommée %{source.label} non acceptée"
+ 2_netexstif_3_1: "Le fichier %{source.filename} ne contient pas de frame nommée NETEX_OFFRE_LIGNE"
+ 2_netexstif_3_2: "Le fichier %{source.filename} contient une frame nommée %{source.label} non acceptée"
+ 2_netexstif_3_3: "la frame NETEX_OFFRE_LIGNE du fichier %{source.filename} ne contient pas la frame %{NETEX_STRUCTURE|NETEX_HORAIRE} obligatoire"
+ 2_netexstif_3_4: "la frame NETEX_OFFRE_LIGNE du fichier %{source.filename} contient une frame %{source.label} non acceptée"
+ 2_netexstif_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'identifiant %{source.objectid} de l'objet %{source.label} ne respecte pas la syntaxe [CODESPACE]:%{source.label}:[identifiant Technique]:LOC"
+ 2_netexstif_6: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} a un état de modification interdit : 'delete'"
+ 2_netexstif_7: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de syntaxe invalide : %{reference_value}"
+ 2_netexstif_8_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe : référence interne attendue"
+ 2_netexstif_8_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type interne mais disposant d'un contenu (version externe possible)"
+ 2_netexstif_9_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type interne : référence externe attendue"
+ 2_netexstif_9_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe sans information de version"
+ 2_netexstif_10: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe inconnue"
+ 2_netexstif_daytype_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayType d'identifiant %{source.objectid} ne définit aucun calendrier, il est ignoré"
+ 2_netexstif_daytype_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayType d'identifiant %{source.objectid} est reliée à des périodes mais ne définit pas de types de jours"
+ 2_netexstif_daytypeassignment_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayTypeAssignment d'identifiant %{source.objectid} ne peut référencer un OperatingDay"
+ 2_netexstif_daytypeassignment_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayTypeAssignment d'identifiant %{source.objectid} ne peut référencer un OperatingPeriod sur la condition IsAvailable à faux."
+ 2_netexstif_direction_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Direction d'identifiant %{source.objectid} n'a pas de valeur pour l'attribut Name"
+ 2_netexstif_direction_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Direction d'identifiant %{source.objectid} définit un attribut %{error_value} non autorisé"
+ 2_netexstif_notice_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Notice d'identifiant %{source.objectid} doit définir un texte"
+ 2_netexstif_notice_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Notice d'identifiant %{source.objectid} de type %{reference_value} est ignoré"
+ 2_netexstif_operatingperiod_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet OperatingPeriod d'identifiant %{source.objectid} a une date de fin %{start_date} inférieure ou égale à la date de début %{end_date}"
+ 2_netexstif_passengerstopassignment_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'attribut %{source.label} de l'objet PassengerStopAssignment %{source.objectid} doit être renseigné"
+ 2_netexstif_passengerstopassignment_2: "L'arrêt %{source.objectid} ne fait pas partie des arrêts disponibles pour votre organisation."
+ 2_netexstif_passingtime_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{error_value} ne dispose pas de DepartureTime"
+ 2_netexstif_passingtime_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{error_value} fournit un ArrivalTime supérieur à son DepartureTime"
+ 2_netexstif_route_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} a une valeur de l'attribut DirectionType interdite : %{error_value}"
+ 2_netexstif_route_2_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} référence un objet Route inverse %{reference_value} qui ne le référence pas"
+ 2_netexstif_route_2_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} référence un objet Route inverse %{reference_value} de même DirectionType"
+ 2_netexstif_route_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : Les ServiceJourneyPattern de l'objet Route d'identifiant %{source.objectid} ne permettent pas de reconstituer la séquence des arrêts de celui-ci"
+ 2_netexstif_route_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, Les informations de montée/Descente à l'arrêt %{source.label} de la Route %{source.objectid} diffèrent sur plusieurs ServiceJourneyPattern, ces informations ne sont pas importées"
+ 2_netexstif_routingconstraintzone_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'objet RoutingConstraintZone %{source.objectid} doit référencer au moins deux ScheduledStopPoint"
+ 2_netexstif_routingconstraintzone_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'objet RoutingConstraintZone %{source.objectid} a une valeur interdite pour l'attribut ZoneUse : %{error_value}"
+ 2_netexstif_servicejourney_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourney d'identifiant %{source.objectid} ne référence pas de ServiceJourneyPattern"
+ 2_netexstif_servicejourney_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourney d'identifiant %{source.objectid} fournit plus d'un trainNumber"
+ 2_netexstif_servicejourney_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : Le nombre d'horaires (passing_times) de l'objet ServiceJourney d'identifiant %{source.objectid} n'est pas cohérent avec le ServiceJourneyPattern associé."
+ 2_netexstif_servicejourney_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{rank} fournit des horaires antérieurs au passingTime précédent."
+ 2_netexstif_servicejourneypattern_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} ne référence pas de Route"
+ 2_netexstif_servicejourneypattern_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} doit contenir au moins 2 StopPointInJourneyPattern"
+ 2_netexstif_servicejourneypattern_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} n'a pas de valeur pour l'attribut ServiceJourneyPatternType"
+ 2_netexstif_servicejourneypattern_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, objet ServiceJourneyPattern d'identifiant %{source.objectid} : les attributs 'order' des StopPointInJourneyPattern ne sont pas croissants."
diff --git a/config/locales/import_messages.fr.yml b/config/locales/import_messages.fr.yml
index a7a8f2739..b507ebded 100644
--- a/config/locales/import_messages.fr.yml
+++ b/config/locales/import_messages.fr.yml
@@ -1,48 +1,50 @@
fr:
import_messages:
- 1_netexstif_2: "Le fichier %{source.filename} ne respecte pas la syntaxe XML ou la XSD NeTEx : erreur '%{error_value}' rencontré"
- 1_netexstif_5: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} a une date de mise à jour dans le futur"
- 2_netexstif_1_1: "Le fichier commun.xml ne contient pas de frame nommée NETEX_COMMUN"
- 2_netexstif_1_2: "Le fichier commun.xml contient une frame nommée %{source.label} non acceptée"
- 2_netexstif_2_1: "Le fichier calendriers.xml ne contient pas de frame nommée NETEX_CALENDRIER"
- 2_netexstif_2_2: "Le fichier calendriers.xml contient une frame nommée %{source.label} non acceptée"
- 2_netexstif_3_1: "Le fichier %{source.filename} ne contient pas de frame nommée NETEX_OFFRE_LIGNE"
- 2_netexstif_3_2: "Le fichier %{source.filename} contient une frame nommée %{source.label} non acceptée"
- 2_netexstif_3_3: "la frame NETEX_OFFRE_LIGNE du fichier %{source.filename} ne contient pas la frame %{NETEX_STRUCTURE|NETEX_HORAIRE} obligatoire"
- 2_netexstif_3_4: "la frame NETEX_OFFRE_LIGNE du fichier %{source.filename} contient une frame %{source.label} non acceptée"
- 2_netexstif_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'identifiant %{source.objectid} de l'objet %{source.label} ne respecte pas la syntaxe [CODESPACE]:%{source.label}:[identifiant Technique]:LOC"
- 2_netexstif_6: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} a un état de modification interdit : 'delete'"
- 2_netexstif_7: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de syntaxe invalide : %{reference_value}"
- 2_netexstif_8_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe : référence interne attendue"
- 2_netexstif_8_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type interne mais disposant d'un contenu (version externe possible)"
- 2_netexstif_9_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type interne : référence externe attendue"
- 2_netexstif_9_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe sans information de version"
- 2_netexstif_10: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe inconnue"
- 2_netexstif_daytype_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayType d'identifiant %{source.objectid} ne définit aucun calendrier, il est ignoré"
- 2_netexstif_daytype_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayType d'identifiant %{source.objectid} est reliée à des périodes mais ne définit pas de types de jours"
- 2_netexstif_daytypeassignment_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayTypeAssignment d'identifiant %{source.objectid} ne peut référencer un OperatingDay"
- 2_netexstif_daytypeassignment_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayTypeAssignment d'identifiant %{source.objectid} ne peut référencer un OperatingPeriod sur la condition IsAvailable à faux."
- 2_netexstif_direction_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Direction d'identifiant %{source.objectid} n'a pas de valeur pour l'attribut Name"
- 2_netexstif_direction_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Direction d'identifiant %{source.objectid} définit un attribut %{error_value} non autorisé"
- 2_netexstif_notice_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Notice d'identifiant %{source.objectid} doit définir un texte"
- 2_netexstif_notice_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Notice d'identifiant %{source.objectid} de type %{reference_value} est ignoré"
- 2_netexstif_operatingperiod_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet OperatingPeriod d'identifiant %{source.objectid} a une date de fin %{start_date} inférieure ou égale à la date de début %{end_date}"
- 2_netexstif_passengerstopassignment_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'attribut %{source.label} de l'objet PassengerStopAssignment %{source.objectid} doit être renseigné"
- 2_netexstif_passengerstopassignment_2: "L'arrêt %{source.objectid} ne fait pas partie des arrêts disponibles pour votre organisation."
- 2_netexstif_passingtime_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{error_value} ne dispose pas de DepartureTime"
- 2_netexstif_passingtime_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{error_value} fournit un ArrivalTime supérieur à son DepartureTime"
- 2_netexstif_route_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} a une valeur de l'attribut DirectionType interdite : %{error_value}"
- 2_netexstif_route_2_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} référence un objet Route inverse %{reference_value} qui ne le référence pas"
- 2_netexstif_route_2_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} référence un objet Route inverse %{reference_value} de même DirectionType"
- 2_netexstif_route_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : Les ServiceJourneyPattern de l'objet Route d'identifiant %{source.objectid} ne permettent pas de reconstituer la séquence des arrêts de celui-ci"
- 2_netexstif_route_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, Les informations de montée/Descente à l'arrêt %{source.label} de la Route %{source.objectid} diffèrent sur plusieurs ServiceJourneyPattern, ces informations ne sont pas importées"
- 2_netexstif_routingconstraintzone_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'objet RoutingConstraintZone %{source.objectid} doit référencer au moins deux ScheduledStopPoint"
- 2_netexstif_routingconstraintzone_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'objet RoutingConstraintZone %{source.objectid} a une valeur interdite pour l'attribut ZoneUse : %{error_value}"
- 2_netexstif_servicejourney_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourney d'identifiant %{source.objectid} ne référence pas de ServiceJourneyPattern"
- 2_netexstif_servicejourney_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourney d'identifiant %{source.objectid} fournit plus d'un trainNumber"
- 2_netexstif_servicejourney_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : Le nombre d'horaires (passing_times) de l'objet ServiceJourney d'identifiant %{source.objectid} n'est pas cohérent avec le ServiceJourneyPattern associé."
- 2_netexstif_servicejourney_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{rank} fournit des horaires antérieurs au passingTime précédent."
- 2_netexstif_servicejourneypattern_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} ne référence pas de Route"
- 2_netexstif_servicejourneypattern_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} doit contenir au moins 2 StopPointInJourneyPattern"
- 2_netexstif_servicejourneypattern_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} n'a pas de valeur pour l'attribut ServiceJourneyPatternType"
- 2_netexstif_servicejourneypattern_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, objet ServiceJourneyPattern d'identifiant %{source.objectid} : les attributs 'order' des StopPointInJourneyPattern ne sont pas croissants."
+ compliance_check_messages:
+ referential_creation: "Le référentiel n'a pas pu être créé car un référentiel existe déjà sur les même périodes et lignes"
+ 1_netexstif_2: "Le fichier %{source.filename} ne respecte pas la syntaxe XML ou la XSD NeTEx : erreur '%{error_value}' rencontré"
+ 1_netexstif_5: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} a une date de mise à jour dans le futur"
+ 2_netexstif_1_1: "Le fichier commun.xml ne contient pas de frame nommée NETEX_COMMUN"
+ 2_netexstif_1_2: "Le fichier commun.xml contient une frame nommée %{source.label} non acceptée"
+ 2_netexstif_2_1: "Le fichier calendriers.xml ne contient pas de frame nommée NETEX_CALENDRIER"
+ 2_netexstif_2_2: "Le fichier calendriers.xml contient une frame nommée %{source.label} non acceptée"
+ 2_netexstif_3_1: "Le fichier %{source.filename} ne contient pas de frame nommée NETEX_OFFRE_LIGNE"
+ 2_netexstif_3_2: "Le fichier %{source.filename} contient une frame nommée %{source.label} non acceptée"
+ 2_netexstif_3_3: "la frame NETEX_OFFRE_LIGNE du fichier %{source.filename} ne contient pas la frame %{NETEX_STRUCTURE|NETEX_HORAIRE} obligatoire"
+ 2_netexstif_3_4: "la frame NETEX_OFFRE_LIGNE du fichier %{source.filename} contient une frame %{source.label} non acceptée"
+ 2_netexstif_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'identifiant %{source.objectid} de l'objet %{source.label} ne respecte pas la syntaxe [CODESPACE]:%{source.label}:[identifiant Technique]:LOC"
+ 2_netexstif_6: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} a un état de modification interdit : 'delete'"
+ 2_netexstif_7: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de syntaxe invalide : %{reference_value}"
+ 2_netexstif_8_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe : référence interne attendue"
+ 2_netexstif_8_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type interne mais disposant d'un contenu (version externe possible)"
+ 2_netexstif_9_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type interne : référence externe attendue"
+ 2_netexstif_9_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe sans information de version"
+ 2_netexstif_10: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet %{source.label} d'identifiant %{source.objectid} définit une référence %{reference_value} de type externe inconnue"
+ 2_netexstif_daytype_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayType d'identifiant %{source.objectid} ne définit aucun calendrier, il est ignoré"
+ 2_netexstif_daytype_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayType d'identifiant %{source.objectid} est reliée à des périodes mais ne définit pas de types de jours"
+ 2_netexstif_daytypeassignment_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayTypeAssignment d'identifiant %{source.objectid} ne peut référencer un OperatingDay"
+ 2_netexstif_daytypeassignment_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet DayTypeAssignment d'identifiant %{source.objectid} ne peut référencer un OperatingPeriod sur la condition IsAvailable à faux."
+ 2_netexstif_direction_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Direction d'identifiant %{source.objectid} n'a pas de valeur pour l'attribut Name"
+ 2_netexstif_direction_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Direction d'identifiant %{source.objectid} définit un attribut %{error_value} non autorisé"
+ 2_netexstif_notice_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Notice d'identifiant %{source.objectid} doit définir un texte"
+ 2_netexstif_notice_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Notice d'identifiant %{source.objectid} de type %{reference_value} est ignoré"
+ 2_netexstif_operatingperiod_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet OperatingPeriod d'identifiant %{source.objectid} a une date de fin %{start_date} inférieure ou égale à la date de début %{end_date}"
+ 2_netexstif_passengerstopassignment_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'attribut %{source.label} de l'objet PassengerStopAssignment %{source.objectid} doit être renseigné"
+ 2_netexstif_passengerstopassignment_2: "L'arrêt %{source.objectid} ne fait pas partie des arrêts disponibles pour votre organisation."
+ 2_netexstif_passingtime_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{error_value} ne dispose pas de DepartureTime"
+ 2_netexstif_passingtime_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{error_value} fournit un ArrivalTime supérieur à son DepartureTime"
+ 2_netexstif_route_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} a une valeur de l'attribut DirectionType interdite : %{error_value}"
+ 2_netexstif_route_2_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} référence un objet Route inverse %{reference_value} qui ne le référence pas"
+ 2_netexstif_route_2_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet Route d'identifiant %{source.objectid} référence un objet Route inverse %{reference_value} de même DirectionType"
+ 2_netexstif_route_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : Les ServiceJourneyPattern de l'objet Route d'identifiant %{source.objectid} ne permettent pas de reconstituer la séquence des arrêts de celui-ci"
+ 2_netexstif_route_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, Les informations de montée/Descente à l'arrêt %{source.label} de la Route %{source.objectid} diffèrent sur plusieurs ServiceJourneyPattern, ces informations ne sont pas importées"
+ 2_netexstif_routingconstraintzone_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'objet RoutingConstraintZone %{source.objectid} doit référencer au moins deux ScheduledStopPoint"
+ 2_netexstif_routingconstraintzone_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, l'objet RoutingConstraintZone %{source.objectid} a une valeur interdite pour l'attribut ZoneUse : %{error_value}"
+ 2_netexstif_servicejourney_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourney d'identifiant %{source.objectid} ne référence pas de ServiceJourneyPattern"
+ 2_netexstif_servicejourney_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourney d'identifiant %{source.objectid} fournit plus d'un trainNumber"
+ 2_netexstif_servicejourney_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : Le nombre d'horaires (passing_times) de l'objet ServiceJourney d'identifiant %{source.objectid} n'est pas cohérent avec le ServiceJourneyPattern associé."
+ 2_netexstif_servicejourney_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} , objet ServiceJourney d'identifiant %{source.objectid} : le passingTime de rang %{rank} fournit des horaires antérieurs au passingTime précédent."
+ 2_netexstif_servicejourneypattern_1: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} ne référence pas de Route"
+ 2_netexstif_servicejourneypattern_2: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} doit contenir au moins 2 StopPointInJourneyPattern"
+ 2_netexstif_servicejourneypattern_3: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number} : l'objet ServiceJourneyPattern d'identifiant %{source.objectid} n'a pas de valeur pour l'attribut ServiceJourneyPatternType"
+ 2_netexstif_servicejourneypattern_4: "%{source.filename}-Ligne %{source.line_number}-Colonne %{source.column_number}, objet ServiceJourneyPattern d'identifiant %{source.objectid} : les attributs 'order' des StopPointInJourneyPattern ne sont pas croissants."