aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichel Etienne2015-08-24 15:03:57 +0200
committerMichel Etienne2015-08-24 15:03:57 +0200
commitf310a9e5782bccf9f21129855af0774b256853f9 (patch)
tree5632f5dd458574fc46e465052316b34f91b5dc04
parenta8eff16982a5e9d87414b6ca908f855371b184ba (diff)
parentb76cda8e9ce414f666c51799d1665bf4d45f3049 (diff)
downloadchouette-core-f310a9e5782bccf9f21129855af0774b256853f9.tar.bz2
merge V3_0
-rw-r--r--Gemfile6
-rw-r--r--Gemfile.lock31
-rw-r--r--app/assets/javascripts/export_tasks/new.js.coffee33
-rw-r--r--app/models/export_task.rb35
-rw-r--r--app/models/gtfs_export.rb12
-rw-r--r--app/views/devise/registrations/edit.html.erb5
-rw-r--r--app/views/export_tasks/new.html.erb24
-rw-r--r--app/views/help/browser.textile3
-rw-r--r--app/views/help/connection.textile12
-rw-r--r--app/views/help/export_format.textile18
-rw-r--r--app/views/help/exports.textile59
-rw-r--r--app/views/help/hubexport.textile131
-rw-r--r--app/views/help/import_formats.textile15
-rw-r--r--app/views/help/imports.textile67
-rw-r--r--app/views/help/introduction.textile7
-rw-r--r--app/views/help/journey_patterns.textile4
-rw-r--r--app/views/help/lines.textile10
-rw-r--r--app/views/help/metadata.textile5
-rw-r--r--app/views/help/navigation.textile24
-rw-r--r--app/views/help/parametersets.textile36
-rw-r--r--app/views/help/relationship.textile12
-rw-r--r--app/views/help/routes.textile24
-rw-r--r--app/views/help/startingfromscratch.textile20
-rw-r--r--app/views/help/stop_areas.textile21
-rw-r--r--app/views/help/stopsmanagement.textile6
-rw-r--r--app/views/help/temporaryline.textile8
-rw-r--r--app/views/help/terms.textile14
-rw-r--r--app/views/help/time_tables.textile2
-rw-r--r--app/views/help/toc.textile7
-rw-r--r--app/views/help/validations.textile14
-rw-r--r--app/views/help/vehicle_journeys.textile10
-rw-r--r--config/deploy/production.rb4
-rw-r--r--config/deploy/staging.rb4
-rw-r--r--config/environments/production.rb4
-rw-r--r--db/migrate/20150703141935_remove_uniqueness_for_registration_number.ninoxe_engine.rb23
-rw-r--r--lib/tasks/demo.rake25
-rw-r--r--public/help/2015-07-23_152040.pngbin0 -> 11063 bytes
-rw-r--r--public/help/2015-07-23_152615.pngbin0 -> 15915 bytes
-rw-r--r--public/help/2015-07-23_162747.pngbin0 -> 10015 bytes
-rw-r--r--public/help/2015-07-23_162942.pngbin0 -> 7224 bytes
-rw-r--r--public/help/2015-07-23_165033.pngbin0 -> 19927 bytes
-rw-r--r--public/help/2015-07-23_165157.pngbin0 -> 5519 bytes
-rw-r--r--public/help/2015-07-23_165644.pngbin0 -> 15500 bytes
-rw-r--r--public/help/import_file_result.pngbin8529 -> 20780 bytes
-rw-r--r--public/help/import_line_detail.pngbin35397 -> 5634 bytes
-rw-r--r--public/help/import_line_result.pngbin8607 -> 22948 bytes
-rw-r--r--public/help/import_result.pngbin24432 -> 22902 bytes
-rw-r--r--spec/models/export_task_spec.rb8
-rw-r--r--spec/models/gtfs_export_spec.rb39
49 files changed, 469 insertions, 313 deletions
diff --git a/Gemfile b/Gemfile
index ae9412a77..ff8d1c2ba 100644
--- a/Gemfile
+++ b/Gemfile
@@ -116,9 +116,8 @@ gem 'squeel'
gem 'enumerize', '~> 0.10.0'
#gem 'ninoxe', :git => 'https://github.com/afimb/ninoxe.git', :branch => "rails4"
-#gem 'ninoxe', :git => 'https://github.com/afimb/ninoxe.git'
-#gem 'ninoxe',:path => '~/Projets/cityway/ninoxe'
-gem 'ninoxe', '1.2.0'
+gem 'ninoxe', :git => 'https://github.com/afimb/ninoxe.git'
+#gem 'ninoxe', '1.2.0'
gem 'acts_as_list', '~> 0.6.0'
gem "acts_as_tree", '~> 2.1.0', :require => "acts_as_tree"
@@ -160,6 +159,7 @@ group :test, :development do
gem 'rb-fsevent', :require => RUBY_PLATFORM.include?('darwin') && 'rb-fsevent'
gem 'transpec'
gem 'database_cleaner'
+ gem 'shoulda-matchers'
end
group :production do
diff --git a/Gemfile.lock b/Gemfile.lock
index f925a3a23..58465495e 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,3 +1,17 @@
+GIT
+ remote: https://github.com/afimb/ninoxe.git
+ revision: 0c548adb266659e7aacd9a7b055e6eb9e21baf66
+ specs:
+ ninoxe (1.2.0)
+ activerecord (~> 4.1.1)
+ acts-as-taggable-on (>= 3)
+ acts_as_list (>= 0.1.6)
+ acts_as_tree (>= 1.1.0)
+ deep_cloneable (~> 2.0.0)
+ enumerize (~> 0.10.0)
+ foreigner (= 1.6.0)
+ georuby-ext (= 0.0.5)
+
GEM
remote: http://rubygems.org/
remote: https://rails-assets.org/
@@ -246,15 +260,6 @@ GEM
net-ssh-gateway (1.2.0)
net-ssh (>= 2.6.5)
newrelic_rpm (3.9.6.257)
- ninoxe (1.2.0)
- activerecord (~> 4.1.1)
- acts-as-taggable-on (>= 3)
- acts_as_list (>= 0.1.6)
- acts_as_tree (>= 1.1.0)
- deep_cloneable (~> 2.0.0)
- enumerize (~> 0.10.0)
- foreigner (= 1.6.0)
- georuby-ext (= 0.0.5)
nokogiri (1.6.6.2)
mini_portile (~> 0.6.0)
nokogiri (1.6.6.2-java)
@@ -401,6 +406,8 @@ GEM
json (~> 1.7, >= 1.7.7)
rdoc (~> 4.0)
shellany (0.0.1)
+ shoulda-matchers (2.8.0)
+ activesupport (>= 3.0.0)
simple_form (3.1.0)
actionpack (~> 4.0)
activemodel (~> 4.0)
@@ -527,7 +534,7 @@ DEPENDENCIES
mimemagic
modernizr-rails (~> 2.0.6)
newrelic_rpm
- ninoxe (= 1.2.0)
+ ninoxe!
pg
poltergeist
pry-rails
@@ -555,6 +562,7 @@ DEPENDENCIES
sass-rails (~> 4.0.3)
sawyer (~> 0.6.0)
sdoc (~> 0.4.0)
+ shoulda-matchers
simple_form (~> 3.1.0)
simplecov (~> 0.10.0)
spring
@@ -568,6 +576,3 @@ DEPENDENCIES
warbler
will_paginate (~> 3.0.7)
will_paginate-bootstrap (~> 1.0.1)
-
-BUNDLED WITH
- 1.10.3
diff --git a/app/assets/javascripts/export_tasks/new.js.coffee b/app/assets/javascripts/export_tasks/new.js.coffee
index 466486df6..f46711b6b 100644
--- a/app/assets/javascripts/export_tasks/new.js.coffee
+++ b/app/assets/javascripts/export_tasks/new.js.coffee
@@ -1,14 +1,31 @@
$(".export_tasks.new").ready ->
+ toggle_input = (li, enabled) ->
+ # Hide li block
+ li.toggle(enabled)
+ # Disable input/select to ignore it in POST data
+ li.find("input,select").attr("disabled", !enabled)
+
export_references_type_change = (event) ->
+ form = $(event.target).parents('form')
+
+ # Display the reference_ids input for the selected type
references_type = $(event.target).val()
+ for li in form.find("li.reference_ids")
+ li = $(li)
+ enabled = li.data("type") == references_type
+ toggle_input li, enabled
+
+ disabled_inputs = form.find("li.input").not("li.reference_ids").find("input:disabled,select:disabled")
+ for disabled_input in disabled_inputs
+ li = $(disabled_input).parents('li')
+ toggle_input li, true
+
+ hidden_attributes = $(event.target).find(":selected").data("hidden-attributes")
+ return unless hidden_attributes
- toggle_input = (li) ->
- enabled = (li.data("type") == references_type)
- # Hide li block
- li.toggle(enabled)
- # Disable textarea to ignore it in POST data
- li.find(".token-input").attr("disabled", !enabled)
-
- toggle_input($(li)) for li in $(event.target).parents('form').find("li.reference_ids")
+ hidden_attributes = hidden_attributes.split(',')
+ for attribute in hidden_attributes
+ li = form.find("##{form.attr('id')}_export_task_#{attribute}_input")
+ toggle_input li, false
$('form select[name="export_task[references_type]"]').change( export_references_type_change )
diff --git a/app/models/export_task.rb b/app/models/export_task.rb
index 3dbda0a70..f02cb914e 100644
--- a/app/models/export_task.rb
+++ b/app/models/export_task.rb
@@ -12,7 +12,7 @@ class ExportTask
enumerize :data_format, in: %w( neptune netex gtfs hub kml )
attr_accessor :referential_id, :user_id, :user_name, :references_type, :data_format, :name, :projection_type, :reference_ids
-
+
validates_presence_of :referential_id
validates_presence_of :user_id
validates_presence_of :user_name
@@ -22,16 +22,17 @@ class ExportTask
validate :period_validation
after_initialize :init_period
-
+
def initialize( params = {} )
run_callbacks :initialize do
params.each {|k,v| send("#{k}=",v)}
end
end
-
+
def period_validation
- st_date = Date.parse(start_date) unless start_date.blank?
- ed_date = Date.parse(end_date) unless end_date.blank?
+ st_date = start_date.is_a?(String) ? Date.parse(start_date) : start_date
+ ed_date = end_date.is_a?(String) ? Date.parse(end_date) : end_date
+
unless Chouette::TimeTable.start_validity_period.nil? || st_date.nil?
tt_st_date = Chouette::TimeTable.start_validity_period
errors.add(:start_date, ExportTask.human_attribute_name("start_date_greater_than" , {:tt_st_date => tt_st_date})) unless tt_st_date <= st_date
@@ -44,7 +45,7 @@ class ExportTask
errors.add(:end_date, ExportTask.human_attribute_name("end_date_less_than", {:tt_ed_date => tt_ed_date})) unless ed_date <= tt_ed_date
end
end
-
+
def init_period
unless Chouette::TimeTable.start_validity_period.nil?
if start_date.nil?
@@ -65,14 +66,12 @@ class ExportTask
end
def save
- puts self.errors.inspect
- puts self.errors.size
if self.valid?
# Call Iev Server
- begin
+ begin
Ievkit.create_job( referential.slug, "exporter", data_format, {
:file1 => params_io,
- } )
+ } )
rescue Exception => exception
raise exception
end
@@ -95,14 +94,26 @@ class ExportTask
h["parameters"] = action_params
end
end
-
+
def action_params
{}
end
-
+
def params_io
file = StringIO.new( params.to_json )
Faraday::UploadIO.new(file, "application/json", "parameters.json")
end
+ def self.optional_attributes(references_type)
+ []
+ end
+
+ def optional_attributes
+ self.class.optional_attributes(references_type.to_s)
+ end
+
+ def optional_attribute?(attribute)
+ optional_attributes.include? attribute.to_sym
+ end
+
end
diff --git a/app/models/gtfs_export.rb b/app/models/gtfs_export.rb
index bef468c32..d0b9fc4f9 100644
--- a/app/models/gtfs_export.rb
+++ b/app/models/gtfs_export.rb
@@ -1,12 +1,12 @@
class GtfsExport < ExportTask
- validates_presence_of :time_zone
+ validates_presence_of :time_zone, unless: Proc.new { |e| e.optional_attribute? :time_zone }
attr_accessor :object_id_prefix, :time_zone
enumerize :references_type, in: %w( network line company group_of_line stop_area )
-
+
after_initialize :init_params
-
+
def init_params
if time_zone.nil?
self.time_zone = "Paris"
@@ -34,6 +34,12 @@ class GtfsExport < ExportTask
}
end
+ def self.optional_attributes(references_type)
+ super.tap do |optional_attributes|
+ optional_attributes.push :time_zone, :start_date, :end_date if references_type == "stop_area"
+ end
+ end
+
def data_format
"gtfs"
end
diff --git a/app/views/devise/registrations/edit.html.erb b/app/views/devise/registrations/edit.html.erb
index 154ecf1c8..dd3051098 100644
--- a/app/views/devise/registrations/edit.html.erb
+++ b/app/views/devise/registrations/edit.html.erb
@@ -6,7 +6,7 @@
<div class="form-inputs">
<%= f.input :email, required: true, autofocus: true %>
<%= f.input :name, required: true %>
-
+
<% if devise_mapping.confirmable? && resource.pending_reconfirmation? %>
<p>Currently waiting confirmation for: <%= resource.unconfirmed_email %></p>
<% end %>
@@ -18,7 +18,6 @@
<div class="form-actions">
<%= f.button :submit %>
+ <%= link_to t("cancel"), :back %>
</div>
<% end %>
-
-
diff --git a/app/views/export_tasks/new.html.erb b/app/views/export_tasks/new.html.erb
index 1cdb4fa79..81180bf3b 100644
--- a/app/views/export_tasks/new.html.erb
+++ b/app/views/export_tasks/new.html.erb
@@ -1,6 +1,6 @@
<%= title_tag t(".title") %>
<ul class="nav nav-pills">
- <% ExportTask.data_formats.each do |format| %>
+ <% ExportTask.data_formats.each do |format| %>
<li role="presentation"><a href="#<%= format %>" class='<%= @export_task.data_format == format ? "#{format} active" : "#{format}" %>' title='<%= t(:"enumerize.data_format_detail.#{format}")%>' data-toggle="tab"><%= t(:"enumerize.data_format.#{format}") %></a></li>
<% end %>
</ul>
@@ -8,23 +8,22 @@
<div class="tab-content">
<% @available_exports.each do |export_task| %>
<%= semantic_form_for [@referential, export_task], :as => :export_task, :url => referential_export_tasks_path(@referential), :namespace => export_task.data_format ,:html => { :id => "#{export_task.data_format}", :class => "tab-pane highlight"} do |form| %>
- <%= form.inputs do %>
+ <%= form.inputs do %>
<%= form.input :user_name, :as => :hidden, :input_html => { :value => current_user.name } %>
<%= form.input :user_id, :as => :hidden, :input_html => { :value => current_user.id } %>
<%= form.input :data_format, :as => :hidden %>
- <%= form.input :referential_id, :as => :hidden, :input_html => { :value => @referential.id } %>
- <%= form.input :name %>
- <%= form.input :references_type, :as => :select, :include_blank => t(".all") %>
+ <%= form.input :referential_id, :as => :hidden, :input_html => { :value => @referential.id } %>
+ <%= form.input :name %>
+ <%= form.input :references_type, as: :select, include_blank: t(".all"), collection: export_task.class.references_type.options.map { |o| o << {data:{"hidden-attributes" => export_task.class.optional_attributes(o.second).join(',') }} } %>
<% export_task.class.references_types.each do |type| %>
- <%= form.input :reference_ids, :as => :reference_ids, :json => references_referential_export_tasks_path(@referential, :format => :json) + "?filter=#{type}", :hint_text => t('search_hint'), :no_result_text => t('no_result_text'),:searching_text => t('searching_term'), :id => "#{export_task.data_format}_#{type}_reference_ids", :input_html => { :id => "#{export_task.data_format}_#{type}_reference_ids" }, :wrapper_html => { :style => "display:none;", :id => "#{export_task.data_format}_#{type}", :"data-type" => "#{type}" } %>
- <% end %>
- <% end %>
+ <%= form.input :reference_ids, :as => :reference_ids, :json => references_referential_export_tasks_path(@referential, :format => :json) + "?filter=#{type}", :hint_text => t('search_hint'), :no_result_text => t('no_result_text'),:searching_text => t('searching_term'), :id => "#{export_task.data_format}_#{type}_reference_ids", :input_html => { :id => "#{export_task.data_format}_#{type}_reference_ids" }, :wrapper_html => { style: "display:none;", "data-type" => type.to_s } %>
+ <% end %>
+ <% end %>
- <%= form.input :start_date, :as => :date_picker, :input_html => { :title => t("formtastic.titles.export_task.start_date")} %>
- <%= form.input :end_date, :as => :date_picker, :input_html => { :title => t("formtastic.titles.export_task.end_date")} %>
+ <%= form.input :start_date, :as => :date_picker, :input_html => { :title => t("formtastic.titles.export_task.start_date")} %>
+ <%= form.input :end_date, :as => :date_picker, :input_html => { :title => t("formtastic.titles.export_task.end_date")} %>
-
- <%= render partial: "fields_#{export_task.data_format}_export", :locals => { :form => form } %>
+ <%= render partial: "fields_#{export_task.data_format}_export", :locals => { :form => form } %>
<%= form.actions do %>
<%= form.action :submit, :as => :button , :label => t( 'formtastic.export' ) %>
@@ -36,4 +35,3 @@
</div>
<%= javascript_include_tag new_referential_export_task_path(@referential, :format => :js) %>
-
diff --git a/app/views/help/browser.textile b/app/views/help/browser.textile
index e0586a702..dbaee5963 100644
--- a/app/views/help/browser.textile
+++ b/app/views/help/browser.textile
@@ -7,11 +7,12 @@ h3. Navigateur prérequis
L’utilisation de l’application nĂ©cessite de disposer d’un navigateur ayant les caractĂ©ristiques suivantes :
-* Internet Explorer (Version 11 et +)
+* Internet Explorer (Version 8 et +)
* Mozilla FireFox (Version 33 et +)
* Chrome (Version 38 et +)
h3. Paramétrage du navigateur
+
Le navigateur doit autoriser l’exĂ©cution de Javascript.
L'application s'affiche de façon lisible sur toutes les tailles d'Ă©cran, mĂȘme si le confort d'utilisation est supĂ©rieur avec un poste de travail ayant une rĂ©solution d'au moins 1280x1024. \ No newline at end of file
diff --git a/app/views/help/connection.textile b/app/views/help/connection.textile
index 7f9ecee48..1065efdb8 100644
--- a/app/views/help/connection.textile
+++ b/app/views/help/connection.textile
@@ -13,9 +13,10 @@ h3. Utilisateurs et organisations
Lorsqu’un utilisateur s’enregistre dans l’application, une organisation qui lui appartient est créée.
-Il peut ensuite inviter des personnes Ă  y accĂ©der en les y associant dans l’onglet Organisation.
+Il peut ensuite inviter des personnes Ă  y accĂ©der en les y associant dans l’onglet Organisation.
!2014-10-30_173033.png!
+
AccĂšs au menu organisation
Inviter d'autres utilisateurs dans son organisation permet de leur accorder un accĂšs Ă  ses espaces de donnĂ©es. Les invitĂ©s ont les mĂȘmes droits sur les Ă©lĂ©ments partagĂ©s que le titulaire de l'organisation. Il peut Ă©galement ĂȘtre invitĂ© par d'autres utilisateurs et accĂ©der ainsi Ă  leurs donnĂ©es.
@@ -26,15 +27,16 @@ Un invité dans un espace de données peut également éditer la liste des invit
h3. Identification
-L'accĂšs Ă  CHOUETTE se fait par une identification par identifiant / mot de passe.
+L'accĂšs Ă  CHOUETTE se fait par une identification par identifiant / mot de passe. L'identifiant est l'adresse mail de l'utilisateur.
-Une fois identifiĂ©, l’utilisateur accĂšde Ă  un Ă©cran organisĂ© autour des donnĂ©es qu'il peut gĂ©rer. Ces donnĂ©es sont organisĂ©es sous la forme d'un <<espace de donnĂ©es>>. A l'intĂ©rieur de chaque espace de donnĂ©es, des menus permettent de gĂ©rer (crĂ©er, modifier, supprimer) chaque type de donnĂ©es.
+Une fois identifiĂ©, l’utilisateur accĂšde Ă  un Ă©cran organisĂ© autour des donnĂ©es qu'il peut gĂ©rer. Chacune d'entre-elle se prĂ©sente sous la forme d'un espace de donnĂ©es. A l'intĂ©rieur de chaque espace de donnĂ©es, des menus permettent de gĂ©rer (crĂ©er, modifier, supprimer) chaque type de donnĂ©es.
L’application est disponible Ă©galement en version anglaise et comprend le glossaire du prĂ©sent manuel en ligne.
h3. Mot de passe perdu
-Dans l'hypothĂšse oĂč un utilisateur a perdu son mot de passe, il peut en rĂ©cupĂ©rer un nouveau en cliquant sur le lien _"mot de passe oubliĂ©"_ au niveau de la page d'identification. Un mail de remise Ă  zĂ©ro du mot de passe lui sera envoyĂ© sur l'adresse mail rentrĂ©e sur son profil.
+Dans l'hypothĂšse oĂč un utilisateur a perdu son mot de passe, il peut en rĂ©cupĂ©rer un nouveau en cliquant sur le lien _"mot de passe oubliĂ©"_ au niveau de la page d'identification. Un mail de remise Ă  zĂ©ro du mot de passe lui sera envoyĂ© sur l'adresse mail rentrĂ©e sur son profil. Il est nĂ©cessaire de cliquer le lien
!2014-12-01_151637.png!
-Réinitialisation du mot de passe
+
+Réinitialisation du mot de passe \ No newline at end of file
diff --git a/app/views/help/export_format.textile b/app/views/help/export_format.textile
index e21d4fa21..e39bcf3d6 100644
--- a/app/views/help/export_format.textile
+++ b/app/views/help/export_format.textile
@@ -11,28 +11,28 @@ h3. Formats disponibles
* Neptune : format d'échange de données de transport en commun pour la France (cf ["Normalisation":http://www.normes-donnees-tc.org/format-dechange/donnees-theoriques/])
* NeTEx : format d'échange de données de transport en commun expérimental sur la future norme européenne ["NeTEx":http://www.normes-donnees-tc.org/format-dechange/donnees-theoriques/] mais limité au sous-ensemble des données définies dans le format Neptune
-* CSV : format tabulaire spécifique à Chouette (cf "CSV":csv)
* GTFS : format destiné à ["Google Transit":https://developers.google.com/transit/gtfs/?hl=fr] ; les données exportées en GTFS sont explicités ["ICI":http://www.normes-donnees-tc.org/format-dechange/autres-normes/]
-* KML : format contenant l'ensemble des donnĂ©es cartographiĂ©es pouvant ainsi ĂȘtre importĂ©es dans un SIG
-* HUB : format tabulaire interne Transdev
+* KML : format contenant l'ensemble des donnĂ©es cartographiĂ©es pouvant ainsi ĂȘtre importĂ©e dans un SIG
+* HUB : format tabulaire interne Transdev dans sa version 1.3
h3. Options des formats
Les options des différents formats apparaissent en fonction de celui qui a été choisi.
+!2015-07-23_162747.png!
+
+p=. Formulaire pour un nouvel export Neptune
+
* *tout format* :
-** Type de données incluses :sélection des lignes exportées. Le choix porte sur toutes, les lignes d'une sélection de réseaux, de transporteurs ou directement sélectionnées ;
+** Type de données incluses : sélection des lignes exportées. Le choix porte sur toutes, les lignes d'une sélection de réseaux, de transporteurs ou directement sélectionnées :
** Données incluses : liste des données selon le type choisi; ce champs n'apparait pas pour le choix 'toutes' la sélection propose dÚs le premier caractÚre saisi la liste des objets dont le nom contient le texte.
-* *Neptune* :
** Début de période : permet d'exporter uniquement les courses circulant à partir de cette date
** Fin de période : permet d'exporter uniquement les courses circulant jusqu'à cette date
+* *Neptune* : pas d'option particuliĂšre
* *GTFS* :
-** Préfixe d'identifiant Neptune à ignorer : lorsque ce préfixe est rencontré dans l'identifiant Neptune, celui-ci n'est pas utilisé pour générer l'identifiant GTFS . La valeur proposée par défaut est celle de l'espace de données.
+** Préfixe d'identifiant Neptune à ignorer : Lorsque ce préfixe est rencontré dans l'identifiant Neptune, celui-ci n'est pas utilisé pour générer l'identifiant GTFS . La valeur proposée par défaut est celle de l'espace de données.
** Fuseau horaire : fixe le fuseau horaire (paramÚtre obligatoire des données GTFS). La valeur proposée par défaut est celle de l'espace de données.
** DonnĂ©es incluses (complĂ©ment) : le choix des arrĂȘts permet de n'exporter que les fichiers d'arrĂȘts (stops.txt) et de correspondances (transfers.txt). 3 champs sont alors ajoutĂ©s : l'adresse, la localitĂ© et le code postal; ceux-ci seront exploitĂ©s en retour sur l'import GTFS d'arrĂȘts.
* *NeTex* : pas d'option particuliĂšre
-* *CSV* : pas d'option particuliĂšre
* *HUB* :
-** Début de période : permet d'exporter uniquement les courses circulant à partir de cette date.
-** Fin de période : permet d'exporter uniquement les courses circulant jusqu'à cette date.
** Fuseau horaire : fixe le fuseau horaire, la valeur proposée par défaut est celle de l'espace de données.
diff --git a/app/views/help/exports.textile b/app/views/help/exports.textile
index 57ceb65c3..4cfeb3bc6 100644
--- a/app/views/help/exports.textile
+++ b/app/views/help/exports.textile
@@ -3,14 +3,16 @@ layout: default
title: Exports
---
-h3. RĂŽle
+h3(#rol). RĂŽle
p. L'export permet d'extraire de la base un ensemble de données selon un format
-h3. Options des formats
+h3(#opt). Options des formats
Les options des différents formats apparaissent en fonction de celui qui a été choisi.
+!2015-07-23_162747.png! Formulaire pour un nouvel export Neptune
+
* *tout format* :
- Type de données incluses :=
@@ -19,12 +21,11 @@ le choix porte sur toutes, les lignes d'une sélection de réseaux, de transport
- Données incluses :=
liste des données selon le type choisi; ce champs n'apparait pas pour le choix 'toutes'
la sélection propose dÚs le premier caractÚre saisi la liste des objets dont le nom contient le texte =:
-
-* *Neptune* :
-
- Début de période := permet d'exporter uniquement les courses circulant à partir de cette date
- Fin de période := permet d'exporter uniquement les courses circulant jusqu'à cette date
+* *Neptune* : pas d'option particuliĂšre
+
* *GTFS* :
- Fuseau horaire :=
@@ -32,31 +33,47 @@ fixe le fuseau horaire (paramÚtre obligatoire des données GTFS)
la valeur proposée par défaut est celle de l'espace de données =:
- Données incluses (complément) :=
le choix des arrĂȘts permet de n'exporter que les fichiers d'arrĂȘts (stops.txt) et de correspondances (transfers.txt)
- 3 champs sont alors ajoutĂ©s : l'adresse, la localitĂ© et le code postal; ceux-ci seront exploitĂ©s en retour sur l'import GTFS d'arrĂȘts =:
+ 3 champs sont alors ajoutĂ©s : l'adresse, la localitĂ© et le code postal; ceux-ci seront exploitĂ©s en retour sur l'Export GTFS d'arrĂȘts =:
* *NeTex* : pas d'option particuliĂšre
-* *CSV* : pas d'option particuliĂšre
+* *HUB* : pas d'option particuliĂšre
-* *HUB* :
+* *KML* : pas d'option particuliĂšre
-- Début de période := permet d'exporter uniquement les courses circulant à partir de cette date
-- Fin de période := permet d'exporter uniquement les courses circulant jusqu'à cette date
-- Fuseau horaire :=
-fixe le fuseau horaire
- la valeur proposée par défaut est celle de l'espace de données =:
+h3. Consultation des résultats
+p. L’Export est lancĂ© en diffĂ©rĂ©, son Ă©tat d'avancement est affichĂ© dans la page de rĂ©sultats pendant le dĂ©roulement du processus.
-h3. Consultation des résultats
+p=. !2015-07-23_162942.png!
+
+p. Le résultat d'Export fournit 2 synthÚses :
+
+*SynthĂšse des lignes (onglet lignes)
+*SynthÚse des fichiers analysés (onglet fichiers)
+
+p. Le bouton « Fichier exporté » permet de télécharger le fichier sur son poste.
+
+p. _1 - La synthÚse des lignes affiche le compte des objets extraits des fichiers correctement traités_
+
+p(border_image). !2015-07-23_165033.png!
+
+* lignes
+* sĂ©quences d'arrĂȘts
+* correspondances
+* calendriers
+* zones d'arrĂȘt
+* accĂšs
+* courses
+* missions
+
+p. Dérouler une ligne en cliquant sur le pictogramme "+" permet d'afficher le détail des éléments Exportés sur la ligne :
+
+p(border_image). !2015-07-23_165157.png!
-p. L'export est lancé en différé; son état d'avancement est affiché sous la forme d'une icÎne donc la couleur dépend de l'état:
+p. _2 - La synthÚse des fichiers analysés affiche la liste des fichiers Exportés ainsi que les erreurs constatées_
-* blanc : en attente
-* bleu : en cours
-* vert : terminé correctement; un lien de téléchargement est alors disponible
-* rouge : terminé en échec
+p(border_image). !2015-07-23_165644.png!
-p. La consultation du résultat de l'export donnera la liste des éléments exportés ou les motifs de l'échec.
-p. Le résultat est conservé ainsi que le fichier produit tant que l'export n'est pas supprimé.
diff --git a/app/views/help/hubexport.textile b/app/views/help/hubexport.textile
index 6ddafceab..498233353 100644
--- a/app/views/help/hubexport.textile
+++ b/app/views/help/hubexport.textile
@@ -1,27 +1,104 @@
----
-layout: default
-title: Contraintes de l'export HUB
----
-
-CHOUETTE est en mesure d'exporter la base au format HUB qui est un format spĂ©cifique aux outils mĂ©tiers Transdev. Le format HUB comprend des contraintes plus importantes que les formats Neptune, notamment sur la longueur de certains noms. Pour que la base puisse ĂȘtre exportĂ©e sans difficultĂ©, il faut donc se conformer Ă  ces contraintes de longueur de noms, ainsi que utiliser certaines fonctions comme les groupes de lignes qui sont facultatives pour leur seul format Neptune mais qui sont obligatoire dans le format HUB.
-
-h3. Liste des champs contraints
-
-[rédaction en cours ...]
-
-h3. Correspondances
-
-CHOUETTE permet de faire des correspondances entre diffĂ©rents types d'arrĂȘts. Dans le format HUB en revanche, seules les correspondances entre les arrĂȘts physiques sont prises en compte. Il convient donc de vĂ©rifier que les correspondances sont bien paramĂ©trĂ©es entre les arrĂȘts de type _"point d'arrĂȘt"_ et _"quai"_.
-
-h3. Lignes et sĂ©quences d'arrĂȘts
-
-Lors de la crĂ©ation de lignes et des sĂ©quences d'arrĂȘts, il est nĂ©cessaire de respecter deux contraintes pour permettre la compatibilitĂ© de l'export HUB :
-
-* Ne pas crĂ©er plus de deux sĂ©quences d'arrĂȘts pour une mĂȘme ligne.
-* Renseigner impérativement le sens de la ligne :
-**Dans le cas oĂč il n'existe qu'une sĂ©quence d'arrĂȘts, choisir le sens aller
-**Dans le cas oĂč il existe deux sĂ©quences d'arrĂȘts, dĂ©finir un sens aller et un sens retour
-
-h3. Créer des groupes de lignes
-
-Les lignes Ă  exporter doivent impĂ©rativement faire partie d'un groupe de lignes pour pouvoir ĂȘtre exportĂ©es en HUB.
+---
+layout: default
+title: Contraintes de l'export HUB
+---
+
+CHOUETTE est en mesure d'exporter la base au format HUB qui est un format spĂ©cifique aux outils mĂ©tiers Transdev. Le format HUB comprend des contraintes plus importantes que les formats Neptune, notamment sur la longueur de certains noms. Pour que la base puisse ĂȘtre exportĂ©e sans difficultĂ©, il faut donc se conformer Ă  ces contraintes de longueur de noms, ainsi que utiliser certaines fonctions comme les groupes de lignes qui sont facultatives pour leur seul format Neptune mais qui sont obligatoire dans le format HUB.
+
+CHOUETTE contrĂŽle le respect de ces contraintes lors de l'export. Il listera les anomalies dans le log de l'export mais ne les signalera pas lors de la saisie proprement dite. Il est donc nĂ©cessaire de se rĂ©fĂ©rer Ă  ce document avant de commencer la saisie de la base, certaines contraintes ayant des consĂ©quences sur la façon dont les donnĂ©es doivent ĂȘtre structurĂ©es.
+
+L'un des points essentiels est la nécessite de renseigner manuellement l'identifiant Neptune. Pour rappel, celui-ci est composé de trois éléments :
+
+* Le prĂ©fixe qui est toujours identique au sein d'un mĂȘme espace de donnĂ©es.
+* Le type d'information qui est dĂ©terminĂ© par le type d'objet (rĂ©seau, arrĂȘt, ligne...) actuellement dĂ©fini.
+* Le suffixe qui est un Ă©lĂ©ment identifiant unique qui peut ĂȘtre contraint en taille et en type de caractĂšres pour l'export au format HUB
+
+Le type d'information ainsi que la syntaxe à respecter sont rappelés dans une infobulle contextuelle qui apparaßt lorsqu'on place le curseur au-dessus du champ _'''Identifiant Neptune'''_
+
+h3. Réseaux
+* Nom du réseau : 75 caractÚres maximum
+* NumĂ©ro d’enregistrement : 8 chiffres maximum
+* Identifiant Neptune : 3 caractĂšres maximum
+
+h3. Transporteur
+* Nom du transporteur : 75 caractĂšres maximum
+* NumĂ©ro d’enregistrement : 8 chiffres maximum
+* Identifiant Neptune : 3 caractĂšres maximum
+
+h3. Calendriers
+
+* Identifiant Neptune : 6 caractĂšres maximum
+* Commentaire : Facultatif, 75 caractĂšres maximum
+
+h3. ArrĂȘts
+
+h4. ArrĂȘt commercial et arrĂȘt physique
+
+Un arrĂȘt physique (quai ou point d'embarquement) doit nĂ©cessairement dĂ©pendre d'un arrĂȘt commercial. Dans le cas oĂč il existe plusieurs arrĂȘts physiques, typiquement dans le cas d'un arrĂȘt dans le sens aller et un arrĂȘt dans le sens retour, les deux arrĂȘts physiques seront regroupĂ©s au sein d'un mĂȘme arrĂȘt commercial.
+
+h4. PÎle d'échange
+
+Les arrĂȘts de type pĂŽle d'Ă©change ne sont pas pris en charge par le format HUB.
+
+h4. Contraintes sur les champs :
+
+* TroisiĂšme composante de l'identifiant technique : 6 caractĂšres maximum
+* Nom de l'arrĂȘt : 75 arrĂȘts maximum
+* Point d'intĂ©rĂȘt le plus proche : ce champs est facultatif. S'il est rempli, il ne doit pas contenir plus de 255 caractĂšres pour les arrĂȘts commerciaux et plus de 60 caractĂšres pour les arrĂȘts physiques.
+* Géolocalisation : obligatoire et au format WGS84
+* Commune : 80 caractĂšres maximum
+* Code INSEE : obligatoire
+* Commentaire : champs facultatif, 255 caractĂšres maximum si rempli
+* Identifiant Neptune : 6 caractĂšres maximum
+* Numéro d'enregistrement : 8 chiffres au maximum (obligatoire ?)
+
+h3. Correspondances
+
+CHOUETTE permet de faire des correspondances entre diffĂ©rents types d'arrĂȘts. Dans le format HUB en revanche, seules les correspondances entre les arrĂȘts physiques sont prises en compte. Il convient donc de vĂ©rifier que les correspondances sont bien paramĂ©trĂ©es entre les arrĂȘts de type _"point d'arrĂȘt"_ et _"quai"_.
+
+h4. Contraintes sur les champs :
+
+* Distance : 4 chiffres maximum
+* Identifiant Neptune : (non exporté ?)
+* Temps de parcours : 4 chiffres maximum (minutes et secondes)
+
+h3. Groupe de lignes
+
+Les lignes à exporter en HUB doivent impérativement faire partie d'un groupe de lignes.
+
+h4. Contraintes sur les champs :
+
+* Nom du groupe de ligne : 75 caractĂšres maximum
+* Identifiant Neptune : 6 caractĂšres maximum
+
+h3. Lignes, sĂ©quences d'arrĂȘts et missions
+
+Lors de la crĂ©ation de lignes et des sĂ©quences d'arrĂȘts, il est nĂ©cessaire de respecter deux contraintes pour permettre la compatibilitĂ© de l'export HUB :
+
+* Ne pas crĂ©er plus de deux sĂ©quences d'arrĂȘts pour une mĂȘme ligne.
+* Renseigner impérativement le sens de la ligne :
+**Dans le cas oĂč il n'existe qu'une sĂ©quence d'arrĂȘts, choisir le sens aller
+**Dans le cas oĂč il existe deux sĂ©quences d'arrĂȘts, dĂ©finir un sens aller et un sens retour
+
+Les champs de crĂ©ation de ligne doivent ĂȘtre créés avec les contraintes suivantes :
+
+* Indice de la ligne : 6 caractĂšres maximum
+* Nom de la ligne : 75 caractĂšres maximum ; pas de doublons possibles
+* Groupe de ligne : une ligne ne doit appartenir qu'Ă  un seul groupe de ligne
+* Identifiant Neptune : 14 caractĂšres maximum
+
+h4. Contraintes sur les champs :
+
+* Identifiant Neptune du schéma de ligne: 8 caractÚres maximum
+* Identifiant Neptune de la mission : 30 caractĂšres maximum
+* Nom d'une mission : 75 caractĂšres maximum
+* Numéro d'enregistrement d'une mission : 8 chiffres maximum
+
+h3. Courses
+
+* TroisiĂšme composante de l'identifiant Neptune : 8 caractĂšres maximum
+* Identifiant public : 8 caractĂšres maximum
+* Commentaire : Facultatif, 75 caractĂšres maximum
+
+
+
diff --git a/app/views/help/import_formats.textile b/app/views/help/import_formats.textile
index 2a6c5014e..d846a32f9 100644
--- a/app/views/help/import_formats.textile
+++ b/app/views/help/import_formats.textile
@@ -7,23 +7,18 @@ h3(#fmt). Formats disponibles
* Neptune : format d'échange de données de transport en commun pour la France (cf ["Normalisation":http://www.normes-donnees-tc.org/format-dechange/donnees-theoriques/])
* NeTEx : format d'échange de données de transport en commun expérimental sur la future norme européenne ["NeTEx":http://www.normes-donnees-tc.org/format-dechange/donnees-theoriques/] mais limité au sous-ensemble des données définies dans le format Neptune
-* CSV : format tabulaire spécifique à Chouette (cf "CSV":csv)
* GTFS : format originaire de ["Google Transit":https://support.google.com/transitpartners/], à condition que le fichier soit préalablement validé avec l'outil Feed Validator =:
p(olnext). - les données exportées en GTFS sont explicités ["ICI":http://www.normes-donnees-tc.org/format-dechange/autres-normes/]
-p(olnext). - l'import GTFS limitĂ© au sous ensemble des arrĂȘts permet de n'importer que les arrĂȘts et les correspondances
+p(olnext). - l'import limitĂ© au sous ensemble des arrĂȘts permet de n'importer que les arrĂȘts et les correspondances
h3(#com). ParamĂštres communs
* Pas de sauvegarde : permet d'effectuer une simulation de l'import sans enregistrer les données
-
p(ddnext). - active donc les tests de validation de niveau 1 et 2
-
* Jeu de paramÚtres pour validation := paramÚtres définissant les seuils des tests de niveau 3 (indisponible si l'option 'pas de sauvegarde' est cochée)
-
p(ddnext). - les jeux de paramÚtres sont créés via le lien ["Jeux de paramÚtres":parametersets] disponible sur les vues des listes d'imports et de validations
-
* Fichier Ă  importer := fichier (plat ou zip selon format)
h3(#opt). Options des formats
@@ -34,10 +29,8 @@ Les options des diffĂ©rents formats apparaissent en fonction de celui qui a Ă©tĂ
* *NeTex* : pas d'option particuliĂšre
* *GTFS* :
** Préfixe d'identifiants : préfixe à utiliser pour générer les identifiants Neptune des objets importés, initialisé à la valeur définie pour l'espace de données.
-** Distance max pour crĂ©er les zones : distance maximale entre deux arrĂȘts homonymes pour les regrouper au sein d'un arrĂȘt commercial de mĂȘme nom, ces zones viennent en supplĂ©ment de celles dĂ©finies dans GTFS; une distance de 0 ne gĂ©nĂšre aucune zone.
+** Distance max pour crĂ©er les zones : distance maximale entre deux arrĂȘts homonymes pour les regrouper au sein d'un arrĂȘt commercial de mĂȘme nom, ces zones viennent en supplĂ©ment de celles dĂ©finies dans GTFS, une distance de 0 ne gĂ©nĂšre aucune zone.
** ignorer le dernier mot : lors de la comparaison des noms d'arrĂȘts, cette option permet de ne pas prendre en compte le dernier mot du nom de l'arrĂȘt (sauf si celui-ci n'est composĂ© que d'un seul mot).
** ignorer les n derniers caractĂšres : lors de la comparaison des noms d'arrĂȘts, cette option permet de ne pas prendre en compte les derniers caractĂšres du nom de l'arrĂȘt (sauf si celui-ci n'a pas assez de caractĂšres pour cela)
-** Distance max pour crĂ©er les correspondances : distance maximale entre deux arrĂȘts pour les lier par une correspondance, ces correspondances sont hors zone d'arrĂȘt: elles viennent en supplĂ©ment de celles dĂ©finies dans GTFS (ce mĂ©canisme tient compte des correspondances exclues), une distance de 0 ne gĂ©nĂšre aucune correspondance.
-** Sous-ensemble : choix permettant de limiter l'import aux seuls fichiers stops.txt et transfers.txt. Lors de l'import, les attributs d'adresse, localité et code postal ajoutés à l'export associé sont exploités :
-* *CSV* :
-** Préfixe d'identifiants : préfixe à utiliser pour générer les identifiants Neptune des objets importés, initialisé à la valeur définie pour l'espace de données. \ No newline at end of file
+** Distance max pour crĂ©er les correspondances : distance maximale entre deux arrĂȘts pour les lier par une correspondance, ces correspondances sont hors zone d'arrĂȘt. Elles viennent en supplĂ©ment de celles dĂ©finies dans GTFS (ce mĂ©canisme tient compte des correspondances exclues), une distance de 0 ne gĂ©nĂšre aucune correspondance.
+** Sous-ensemble : choix permettant de limiter l'import aux seuls fichiers stops.txt et transfers.txt. Lors de l'import, les attributs d'adresse, localité et code postal ajoutés à l'export associé sont exploités. \ No newline at end of file
diff --git a/app/views/help/imports.textile b/app/views/help/imports.textile
index ca085532d..bbd5e18de 100644
--- a/app/views/help/imports.textile
+++ b/app/views/help/imports.textile
@@ -7,14 +7,14 @@ title: Imports
* "Validation":#val
* "l’onglet IMPORTS":#imp
* "Nouvel Import":#new
-* "ParamĂštres de validation":#pvl
+* "ParamĂštres de validation":pvl
* "Consultation des résultats":#res
* "Résultats de validation":#rvl
h3(#rol). RĂŽle
-p. L’import permet d’enregistrer dans la base un jeu de donnĂ©es d'offre TC, selon un format au choix. Des tests de validation des donnĂ©es sont exĂ©cutĂ©s avant l'import en base de donnĂ©es (plus dĂ©taillĂ©es dans le cas du format Neptune). Il est possible d'importer sans sauver en base, uniquement pour jouer les tests de vĂ©rification de conformitĂ©. Dans ce cas, les tests en base de donnĂ©es (auxquels sont associĂ©s les jeux de paramĂštres) ne seront pas exĂ©cutĂ©s (et donc aucun test ne sera exĂ©cutĂ©, pour des donnĂ©es CSV, GTFS, ou Netex).
+p. L’import permet d’enregistrer dans la base un jeu de donnĂ©es d'offre TC, selon un format au choix. Des tests de validation des donnĂ©es sont exĂ©cutĂ©s avant l'import en base de donnĂ©es (plus dĂ©taillĂ©es dans le cas du format Neptune). Il est possible d'importer sans sauver en base, uniquement pour jouer les tests de vĂ©rification de conformitĂ©.
p=. !2014-10-31_151613.png!
Page des imports
@@ -27,66 +27,69 @@ p. Lors de l'import, des tests sont effectués :
# sur la complétude et la cohérence des relations exprimées dans le format d'échange
# optionnellement sur la qualité des données en vue de son exploitation dans une centrale de mobilité
-p(olnext). - la validation nécessite la fourniture d'un jeu de paramÚtres définissant les seuils (cf "Validation":validations)
+p(olnext). - nécessite la fourniture d'un jeu de paramÚtres définissant les seuils (cf "Validation":validations)
-p(note). Les tests de niveau 1 et 2 ne sont actuellement implémentés que pour le format Neptune.
+p(note). Les tests de niveau 1 et 2 ne sont actuellement implémentés que pour le format Neptune
h3(#imp). l'onglet IMPORTS
p. L'onglet IMPORTS contient les objets Import de l'espace de données courant.
-p. Chaque objet Import est représenté par une vignette comprenant : sa date, l'utilisateur qui l'a créé, son état (blanc: en attente, bleu : en cours ; vert : terminé correctement ; rouge : terminé en échec), un lien pour télécharger le fichier importé, un lien vers le détail de l'objet, un lien vers l'objet Validation associé).
-
-p=. !import.png!
+p. Chaque objet Import est représenté par une vignette comprenant : sa date, l'utilisateur qui l'a créé, le type de profil importé, son état (blanc: en attente, bleu : en cours ; vert : terminé correctement ; rouge : terminé en échec), un lien pour télécharger le fichier importé, un lien vers le détail de l'objet, un lien vers l'objet Validation associé).
p. Comme les fichiers importés restent stockés en base, il est opportun que l'utilisateur supprime périodiquement les objets Imports devenus inutiles. La suppression supprimera aussi les objets Validation associés.
p. Dans la partie droite de l'écran,
-* Créer un nouvel Import
+* créer un nouvel Import
* Jeu de paramĂštres
h3(#new). Nouvel Import
-p. Il est possible de modifier le jeu de paramÚtres par défaut ou de créer un nouveau Jeu de paramÚtres. Il est possible de ne choisir aucun jeu de paramÚtres.
+p. La page d'un nouvel import donne le choix entre trois profils d'import : Neptune, Netex et GTFS. Chacun de ces profils est accessible par un onglet dédié. Les formulaires Neptune et Netex sont identiques.
-p. L’import est lancĂ© en diffĂ©rĂ©, son rĂ©sultat n'est pas immĂ©diat. Le rĂ©sultat est conservĂ© tant que l’import n’est pas supprimĂ©. L'import lance Ă©galement la validation (avec ou sans jeu de paramĂštres associĂ©s), ce qui crĂ©e un objet Validation associĂ©. La suppression d’un import supprime Ă©galement l'objet Validation associĂ© Ă  cet import ; nĂ©anmoins si les donnĂ©es ont Ă©tĂ© sauvegardĂ©es en base, elles seront conservĂ©es.
+p=. !2015-07-23_152040.png!
+Page d'un nouvel import
-p. Si les données ne sont pas sauvées en base, il faut relancer un import avec sauvegarde si on souhaite effectivement importer ces données en base aprÚs une premiÚre validation « à blanc ».
+* La case Ă  cocher "Pas de sauvegarde" permet de tester la base sans l'importer.
+* Il est également possible de sélectionner un autre jeu de validation. Il est possible de ne choisir aucun jeu de paramÚtres.
-h3(#pvl). ParamĂštres de validation
+p. Le profil GTFS contient des champs spécifiques.
-p. Il est possible de modifier le jeu de paramĂštres par dĂ©faut, ou de crĂ©er un nouveau Jeu de paramĂštres. Les paramĂštres de vitesses et durĂ©e entre arrĂȘts successifs sont dĂ©finis mode par mode.
+p=. !2015-07-23_152615.png!
+Page d'import GTFS
-h3(#res). Consultation des résultats : détail de l'objet Import
+* Le choix d'un sous-ensemble permet de n'importer qu'une partie de la base, comme par exemple les arrĂȘts.
+* Le prĂ©fixe d'identifiants est renseignĂ© par dĂ©faut et peut-ĂȘtre laissĂ© en l'Ă©tat.
+* Distance max pour crĂ©er les zones : Distance maximale en mĂštres de regroupement des points d'arrĂȘts dont le nom est identique au sein d'un mĂȘme arrĂȘt commercial. Si la valeur est Ă  0, aucun regroupement n'est fait.
+* Case Ă  cocher "ignorer le dernier mot" : Permet d'ignorer le dernier mot d'un nom d'arrĂȘt pour faciliter le regroupement de plusieurs arrĂȘts physiques dont le nom serait lĂ©gĂšrement diffĂ©rent au sein d'un mĂȘme arrĂȘt commercial
+* Ignorer les n derniers caractĂšres : MĂȘme fonctionnalitĂ© qu'ignorer le dernier mot mais un certain nombre de caractĂšres.
+* Distance max pour crĂ©er les correspondances : la valeur en mĂštres en dessous de laquelle deux arrĂȘts sont automatiquement considĂ©rĂ©s en correspondance.
-p=. !import_result.png!
+p. L’import est lancĂ© en diffĂ©rĂ©, son rĂ©sultat n'est pas immĂ©diat. Le rĂ©sultat est conservĂ© tant que l’import n’est pas supprimĂ©. L'import lance Ă©galement la validation (avec ou sans jeu de paramĂštres associĂ©s), ce qui crĂ©e un objet Validation associĂ©. La suppression d’un import Ă©galement l'objet Validation associĂ© Ă  cet import ; nĂ©anmoins si les donnĂ©es ont Ă©tĂ© sauvegardĂ©es en base, elles seront conservĂ©es.
-p. Le résultat d'import fournit 2 synthÚses :
+p. Si les données ne sont pas sauvées en base, il faut relancer un import avec sauvegarde si on souhaite effectivement importer ces données en base aprÚs une premiÚre validation « à blanc ».
-# SynthÚse des fichiers analysés (à gauche)
-# SynthĂšse des lignes lues (Ă  droite)
-p. Le bouton « Fichier Importé » permet de télécharger le fichier sur son poste.
+h3(#pvl). ParamĂštres de validation
-p. Le bouton « Validation » permet de basculer vers la validation des données.
+p. Il est possible de modifier le jeu de paramĂštres par dĂ©faut ou de crĂ©er un nouveau Jeu de paramĂštres. Les paramĂštres de vitesses et durĂ©e entre arrĂȘts successifs sont dĂ©finis mode par mode.
-p. _1 - La synthÚse des fichiers analysés affiche 3 secteurs_
+h3(#res). Consultation des résultats : détail de l'objet Import
-p(border_image). !import_file_result.png!
+p=. !import_result.png!
-* en vert les fichiers correctement traités
-* en rouge les fichiers comportant des erreurs qui empĂȘche leur traitement
-* en gris les fichiers ignorés
+p. Le résultat d'import fournit 2 synthÚses :
-p. En passant la souris sur chaque partie, le nombre de fichiers correspondant est affiché.
+* SynthĂšse des lignes lues (onglet lignes)
+* SynthÚse des fichiers analysés (onglet fichiers)
-p. La sélection (clic souris) d'un des secteurs affiche la liste des fichiers concernés :
+p. Le bouton « Fichier source » permet de télécharger le fichier sur son poste.
-p(border_image). !import_file_detail.png!
+p. Le bouton « Rapport de validation » permet de basculer vers la validation des données.
-p. _2 - La synthÚse des lignes lues affiche le compte des objets extraits des fichiers correctement traités_
+p. _1 - La synthÚse des lignes lues affiche le compte des objets extraits des fichiers correctement traités_
p(border_image). !import_line_result.png!
@@ -99,13 +102,13 @@ p(border_image). !import_line_result.png!
* courses
* missions
-p. La sélection de l'histogramme (clic) affiche le détail des lignes lues :
+p. Dérouler une ligne en cliquant sur le pictogramme "+" permet d'afficher le détail des éléments importés sur la ligne :
p(border_image). !import_line_detail.png!
-p. Un survol affiche le nombre de données concernées par type.
+p. _2 - La synthÚse des fichiers analysés affiche la liste des fichiers importés ainsi que les erreurs constatées_
-p. La sélection du graphique affiche le détail par ligne.
+p(border_image). !import_file_detail.png!
h3(#rvl). Résultats de validation
diff --git a/app/views/help/introduction.textile b/app/views/help/introduction.textile
index 544edd8aa..f2e8df735 100644
--- a/app/views/help/introduction.textile
+++ b/app/views/help/introduction.textile
@@ -5,18 +5,17 @@ title: Présentation
CHOUETTE est un logiciel libre développé à l'initiative du ministÚre français chargé des transports (et du développement durable), dans le but de faciliter l'échange de données d'offre (théorique) de transport collectif (TC), en s'appuyant pour cela sur la norme NFP 99506, dite Neptune, qui spécifie un profil d'échange XML.
-!version.png!
-CHOUETTE est une application web. Elle permet de saisir, éditer, tester des données théoriques de transport public depuis un navigateur internet. Afin de faciliter la création de réseaux complets, elle est dotée de fonctions d'import, soit depuis d'autres formats d'applications équivalentes, soit au travers d'un fichier CSV qui permet de mener des imports massifs plutÎt que de saisir tous les éléments un à un dans les formulaires adhoc.
+CHOUETTE est une application web. Elle permet de saisir, éditer, tester des données théoriques de transport public depuis un navigateur internet. Afin de faciliter la création de réseaux complets. Elle est dotée de fonctions d'import, soit depuis d'autres formats d'applications équivalentes, soit au travers d'un fichier CSV qui permet de mener des imports massifs plutÎt que de saisir tous les éléments un a un dans les formulaires adhoc.
h3. A qui s'adresse ce manuel ?
-Ce manuel s’adresse aux utilisateurs de CHOUETTE. Les utilisateurs visĂ©s sont les collectivitĂ©s locales AutoritĂ©s Organisatrices de Transport (AOT), les exploitants des rĂ©seaux TC et leurs prestataires (bureaux d'Ă©tude ou sociĂ©tĂ© de services).
+Ce manuel s’adresse aux utilisateurs de CHOUETTE. Les utilisateurs visĂ©s sont les collectivitĂ©s locales AutoritĂ©s Organisatrices de Transport (AOT), les exploitants des rĂ©seaux TC et leurs prestataires (bureaux d'Ă©tude ou sociĂ©tĂ© de services).
D'autres utilisateurs potentiels sont également identifiés : services de l'état, éditeurs de logiciels, opérateurs de services d'information, chercheurs...
h3. Ce que vous trouverez dans ce manuel
-Vous trouverez dans ce document, toutes les informations nĂ©cessaires Ă  la prise en main de l’application.
+Vous trouverez dans ce document, toutes les informations nĂ©cessaires Ă  la prise en main de l’application.
Le manuel couvre la version 3.0.0.
diff --git a/app/views/help/journey_patterns.textile b/app/views/help/journey_patterns.textile
index 7224d1f6c..77cc4d2e2 100644
--- a/app/views/help/journey_patterns.textile
+++ b/app/views/help/journey_patterns.textile
@@ -5,7 +5,7 @@ title: Missions
h3. Définition
-Une _"Mission"_ est une sĂ©lection ordonnĂ©e d'arrĂȘts issue d'une sĂ©quence d'arrĂȘts de Ă  partir de laquelle il sera possible de crĂ©er des courses, c'est Ă  dire d'associer diffĂ©rents horaires Ă  la mission. Les arrĂȘts de la mission sont tout ou partie des arrĂȘts de la sĂ©quence d'arrĂȘts.
+Une _"Mission"_ est une sĂ©lection ordonnĂ©e d'arrĂȘts issue d'une sĂ©quence d'arrĂȘts de Ă  partir de laquelle il sera possible de crĂ©er des courses, c'est Ă  dire d'associer diffĂ©rents horaires Ă  la mission. Les arrĂȘts de la mission sont toute ou partie des arrĂȘts de la sĂ©quence d'arrĂȘts.
Une mission est spĂ©cifique Ă  une _"sĂ©quence d'arrĂȘts"_. Une mĂȘme sĂ©quence d'arrĂȘts peut contenir plusieurs missions diffĂ©rentes.
@@ -17,7 +17,7 @@ La crĂ©ation d'une mission se fait depuis la page d'une sĂ©quence d'arrĂȘt. Pour
En bas du formulaire les arrĂȘts sĂ©lectionnĂ©s dans la sĂ©quence d'arrĂȘts sont sĂ©lectionnables par des cases Ă  cocher.
-!2014-10-31_113803.png!
+p=. !2014-10-31_113803.png!
SĂ©lection des arrĂȘts d'une mission
h3. Modifier une mission
diff --git a/app/views/help/lines.textile b/app/views/help/lines.textile
index 44f6f049b..38096e860 100644
--- a/app/views/help/lines.textile
+++ b/app/views/help/lines.textile
@@ -11,7 +11,7 @@ La ligne dispose d'un identifiant fonctionnel, une sorte de _"numéro d'enregist
h4. Liste des groupes de lignes
-Sélectionner _"Lignes"_ dans le menu _"Données"_ affiche la liste des lignes existantes dans l'espace de données.
+Sélectionner _"Lignes"_ dans le menu _"Données"_ affiche la liste des lignes existants dans l'espace de données.
h4. Ajouter une ligne
@@ -19,7 +19,7 @@ Depuis la liste des groupe de lignes, cliquer sur _"Ajouter une ligne"_ dans la
Un formulaire s'affiche. Les champs obligatoires sont signalés par des astérisques.
-Dans le champ, _"Groupes de lignes associés"_, saisir les premiers caractÚres d'une ligne. L'auto-complétion présentera les groupes de lignes correspondant à la saisie. Taper sur _"Entrée"_ valide la proposition. Il est à noter que ces associations fonctionnent dans les deux sens et qu'il est également possible de rajouter une ligne dans un groupe de lignes depuis la page d'un groupe de lignes.
+Dans le champs, _"Groupes de lignes associés"_, saisir les premiers caractÚres d'une ligne. L'auto-complétion présentera les groupes de lignes correspondant à la saisie. Taper sur _"Entrée"_ valide la proposition. Il est à noter que ces associations fonctionnent dans les deux sens et qu'il est également possible de rajouter une ligne dans un groupe de ligne depuis la page d'un groupe de lignes.
h4. Afficher une ligne existante
@@ -37,10 +37,10 @@ En bas de la page, un lien _"Liste des arrĂȘts de la ligne"_ affiche la liste de
Les arrĂȘts des diffĂ©rentes sĂ©quences d'arrĂȘts apparaissent sur la cartographie. Une infobulle permet de connaĂźtre le nom de l'arrĂȘt et rappelle le type d'arrĂȘt.
-!2014-10-31_112140.png!
+p=. !2014-10-31_112140.png!
Vue d'une ligne.
-h4. Modifier une ligne
+h4. Modifier une lignes
On peut modifier une ligne en cliquant sur le bouton de modification directement depuis la liste des lignes ou depuis la page d'une ligne particuliĂšre.
@@ -58,7 +58,7 @@ h3. Attributs d'une ligne
* Nom public : nom de la ligne connu des usagers
* Numéro d'enregistrement : code référençant une ligne au sein d'une autorité supérieure
* Indice : indice ou numéro de la ligne (ce champ n'est pas obligatoirement numérique). Il s'agit de la désignation simple de la ligne comme par exemple un numéro, une lettre etc...
-* Mode de transport : mode de transport principal de la ligne. Le cas Ă©chĂ©ant, d'autres modes de transport particuliers peuvent ĂȘtre indiquĂ©s au niveau de chaque course.
+* Mode de transport : mode de transport principal de la ligne. Le cas Ă©chĂ©ant, d'autres modes de transports particuliers peuvent ĂȘtre indiquĂ©s au niveau de chaque course.
* Couleur du tracé : couleur en rvb hexadécimal du tracé de ligne et du fond de texte
* Couleur de texte : couleur en rvb hexadécimal du texte du nom de la ligne
* Page web associée : adresse http ou https de la page du site public décrivant la ligne
diff --git a/app/views/help/metadata.textile b/app/views/help/metadata.textile
index a8c1cf405..d7193ef11 100644
--- a/app/views/help/metadata.textile
+++ b/app/views/help/metadata.textile
@@ -5,7 +5,7 @@ title: Métadonnées
Tous les Ă©lĂ©ments dĂ©finis dans CHOUETTE sont identifiĂ©s par des mĂ©tadonnĂ©es Neptune spĂ©cifiques. Ces mĂ©tadonnĂ©es peuvent ĂȘtre gĂ©nĂ©rĂ©es automatiquement Ă  la crĂ©ation de l'objet de telle sorte qu'il n'est pas nĂ©cessaire de les renseigner. Il reste toutefois possible de leur attribuer une valeur manuellement si nĂ©cessaire.
-Chaque type est identifiĂ© par une clĂ© qui permet de dĂ©terminer quel est sa nature (arrĂȘt, ligne, transporteur etc...). La norme propose des clĂ©s types qui sont rĂ©sumĂ©es dans le tableau ci-dessous.
+Chaque type est identifiĂ© par une clĂ© qui permet de dĂ©terminer quel est sa nature (arrĂȘt, ligne, transporteur etc...). La norme suggĂšre des clĂ©s types qui sont rĂ©sumĂ©es dans le tableau ci-dessous.
h3. Métadonnées d'un transporteur
@@ -17,8 +17,7 @@ h3. Métadonnées d'un transporteur
* Version : version de l'objet (auto incrémenté à chaque modification)
* Créé par : compte utilisateur ayant procédé à la derniÚre modification
-!2014-10-30_175715.png!
-Exemple d'identifiant Neptune
+!2014-10-30_175715.png! Exemple d'identifiant Neptune
h3. Clés
diff --git a/app/views/help/navigation.textile b/app/views/help/navigation.textile
index 38a6027d2..32d3c2327 100644
--- a/app/views/help/navigation.textile
+++ b/app/views/help/navigation.textile
@@ -16,18 +16,20 @@ Le bandeau supérieur regroupe l'essentiel des liens de navigation :
* Les préférences utilisateurs, notamment le choix de langue et les paramÚtres du compte.
!2014-10-30_173410.png!
-Bandeau supérieur de CHOUETTE
+
+p=. Bandeau supérieur de CHOUETTE
h3. Listes d'éléments
Les listes prennent la forme de "_boites_" rangĂ©es cĂŽte Ă  cĂŽte. Dans le cas oĂč le titre de l'Ă©lĂ©ment est trop long pour ĂȘtre affichĂ© entiĂšrement, une infobulle complĂšte apparaĂźt au survol du titre.
-Les éléments de l'application qui apparaissent sous la forme de liens sont ceux qui peuvent faire l'objet d'un paramétrage détaillé. Ils s'accompagnent dans les listes de pictogrammes de modification et de suppression.
+Les éléments de l'application qui apparaissent sous la forme de liens sont ceux qui peuvent faire l'objet d'un paramétrage détaillés. Il s'accompagnent dans les listes de pictogrammes de modification et de suppression.
Le pictogramme de modification ne concerne que les propriétés générales de l'élément et non pas les informations spécifiques qu'il regroupe. Il faut cliquer sur le lien proprement dit pour pouvoir consulter et éditer les informations correspondantes. Le pictogramme de suppression permet de supprimer effectivement toutes les informations correspondant à l'élément.
!2014-10-30_173506.png!
-Exemple de liste d'éléments
+
+p=. Exemple de liste d'éléments
Les listes d'Ă©lĂ©ments peuvent dans certains cas ĂȘtre rĂ©duites afin de ne pas surcharger la page. Cliquer sur le titre de la liste permet d'afficher la liste des Ă©lĂ©ments.
@@ -36,7 +38,8 @@ h3. Fonctions d'édition
Les fonctions d'édition des données proprement dites se situent à droite de l'affichage principal.
!2014-10-30_173604.png!
-Fonctions d'Ă©dition des arrĂȘts
+
+p=. Fonctions d'Ă©dition des arrĂȘts
h3. Pointage et déplacement d'un objet sur la cartographie
@@ -48,21 +51,24 @@ CHOUETTE permet de dĂ©placer Ă©lĂ©ment, arrĂȘt ou accĂšs par exemple, sur la car
* de cliquer sur la carte permet de sortir du mode déplacement et de finaliser le déplacement en mettant les coordonnées à jour dans le formulaire
!2014-10-30_173740.png!
-DĂ©placement d'un arrĂȘt sur la cartographie
+
+p=. DĂ©placement d'un arrĂȘt sur la cartographie
h3. Auto-complétion
-De nombreux champs de CHOUETTE font appel à des fonctions d'auto-complétion de telle sorte que des caractÚres saisis dans le champ font automatiquement remonter des éléments pertinents déjà connus du systÚme.
+De nombreux champs de CHOUETTE font appel à des fonctions d'auto-complétion de telle sorte que des éléments saisis dans le champs font automatiquement remonter des éléments pertinents déjà connus du systÚme.
!2014-10-30_173913.png!
-Auto-complĂ©tion sur la sĂ©lection d'un arrĂȘt.
+
+p=. Auto-complĂ©tion sur la sĂ©lection d'un arrĂȘt.
h3. Architecture de l'interface de CHOUETTE
-Un certain nombre d'Ă©lĂ©ments constitutifs de la base de donnĂ©es sont accessibles en tant que sous Ă©lĂ©ments de menus accessibles depuis une page. Il en va ainsi par exemple des horaires, qui sont accessibles au travers des lignes puis des sĂ©quences d'arrĂȘts. Il est conseillĂ© Ă  l'utilisateur dĂ©butant de se reporter au chapitre _"CrĂ©er un rĂ©seau Ă  partir de zĂ©ro"_ situĂ© en annexe pour un rappel de l'ordre dans lequel il faut crĂ©er les Ă©lĂ©ments du rĂ©seau.
+Un certain nombre d'Ă©lĂ©ments constitutifs de la base de donnĂ©es sont accessibles en tant que sous Ă©lĂ©ments de menus accessibles depuis une page. Il en va ainsi par exemple des horaires qui sont accessibles au travers des lignes puis des sĂ©quences d'arrĂȘts. Il est conseillĂ© Ă  l'utilisateur dĂ©butant de se reporter au chapitre _"CrĂ©er un rĂ©seau Ă  partir de zĂ©ro"_ situĂ© en annexe pour un rappel de l'ordre dans lequel il faut crĂ©er les Ă©lĂ©ments du rĂ©seau.
!navigation.png!
-Navigation au sein de l'application CHOUETTE
+
+p=. Navigation au sein de l'application CHOUETTE
diff --git a/app/views/help/parametersets.textile b/app/views/help/parametersets.textile
index 6070d86b1..f3cc61e87 100644
--- a/app/views/help/parametersets.textile
+++ b/app/views/help/parametersets.textile
@@ -5,18 +5,18 @@ title: Jeux de paramĂštres de validation
h3. Définition
-CHOUETTE intĂšgre un outil de validation de la base de donnĂ©es qui permet de dĂ©tecter les erreurs les plus grossiĂšres qui auraient pu ĂȘtre laissĂ©es dans la base de donnĂ©es. Un ensemble de tests est disponible mais il n'est pas obligatoire de les passer tous. L'utilisateur peut crĂ©er son propre jeu de tests au travers d'un _"jeu de paramĂštres"_ dans le menu validation.
+CHOUETTE intĂšgre un outil de validation de la base de donnĂ©es qui permet de dĂ©tecter les erreurs les plus grossiĂšres qui auraient pu ĂȘtre laissĂ©e dans la base de donnĂ©es. Un ensemble de tests est disponible mais il n'est pas obligatoire de les passer tous. L'utilisateur peut crĂ©er son propre jeu de tests au travers d'un _"jeu de paramĂštres"_ dans le menu validation.
Les paramĂštres de tests peuvent donc ĂȘtre choisis afin d'adapter les tests Ă  la rĂ©alitĂ© du terrain.
Afin de rejouer facilement les tests dans différent contextes, il est possible de définir plusieurs jeux qui sont conservés indépendamment des validations.
-Un jeu de paramĂštres est proposĂ© par dĂ©faut Ă  la crĂ©ation du rĂ©fĂ©rentiel; celui-ci peut ĂȘtre modifiĂ© ou dĂ©truit; il n'est alors pas possible de le recrĂ©er.
+Un jeu de paramĂštre est proposĂ© par dĂ©faut Ă  la crĂ©ation du rĂ©fĂ©rentiel; celui-ci peut ĂȘtre modifiĂ© ou dĂ©truit; il n'est alors pas possible de le recrĂ©er.
h3. ParamÚtres généraux
* Nom : Nom du jeu de données (nom utilisé pour sa sélection dans les imports et validations)
-* DĂ©limitation gĂ©ographique des arrĂȘts : Emprise gĂ©ographique du rĂ©seau (tous les arrĂȘts testĂ©s devront ĂȘtre inclus dans cette zone). Le format de ce champs est un ensemble de points formant une polyligne fermĂ©e:[[longitude1,latitude1],[longitude2,latitude2],,,[longitudeN,latitudeN],[longitude1,latitude1]], Les longitudes et latitudes sont exprimĂ©es en degrĂ©s, dĂ©cimaux, positifs Ă  l'est et au nord. Il s'agit du format WGS84 normĂ© Ă©galement utilisĂ© dans GoogleMaps ou Open Street Map.
+* DĂ©limitation gĂ©ographique des arrĂȘts : Emprise gĂ©ographique du rĂ©seau (tous les arrĂȘts testĂ©s devront ĂȘtre inclus dans cette zone). Le format de ce champs est un ensemble de points formant une polyligne fermĂ©e:[[longitude1,latitude1],[longitude2,latitude2],,,[longitudeN,latitudeN],[longitude1,latitude1]], Les longitudes et latitudes sont exprimĂ©es en degrĂ©, dĂ©cimaux positifs Ă  l'est et au nord. Il s'agit du format WGS84 normĂ© Ă©galement utilisĂ© dans googlemaps ou open street map.
* DurĂ©e maximum de stationnement Ă  un arrĂȘt (en secondes) := Ă©cart de temps maximal autorisĂ© entre l'heure d'arrivĂ©e et l'heure de dĂ©part Ă  un arrĂȘt
p. *Distance minimum entre :* (en mĂštres)
@@ -34,50 +34,22 @@ p. *Distance maximum entre :* (en mĂštres)
p. *Vitesse de marche maximum d'un voyageur :* (en kilomĂštres/heure)
vitesse maximale admise dans les correspondances et les liaisons arrĂȘt - accĂšs pour :
-* un voyageur ordinaire : voyageur qui a une connaissance théorique du réseau
+* un voyageur ordinaire : voyageur qui a un connaissance théorique du réseau
* un voyageur occasionnel : voyageur qui ne connaßt pas le réseau
* un voyageur habituel : voyageur qui connaßt bien le réseau
* un voyageur à mobilité réduite : voyageur qui a des difficultés de déplacement
-p. *Activation de contrÎles supplémentaires* (ceux-ci sont alors déclarés bloquants)
-
-* contraite d'appartenance d'une ligne Ă  un unique groupe de lignes.
-* limitation du nombre de sĂ©quences d'arrĂȘts d'une ligne Ă  au plus 1 A/R)
-* appartenance obligatoire des arrĂȘts physiques Ă  un arrĂȘt commercial
-* limiter les correspondances aux seuls arrĂȘts physiques
-* limiter les modes de transports à un sous-ensemble des modes gérés par Chouette (si ce contrÎle est activé, une case à cocher est ajouter par mode de transport pour l'autoriser)
h3. ParamĂštres par mode de transport.
p. les paramÚtres suivants sont à définir pour chaque mode de transport disponible dans le réseau à tester.
-* Autoriser ce mode (si le contrĂŽle sur les modes de transports est actif)
* Distance minimum entre 2 arrĂȘts (en mĂštres) : distance minimale de parcours d'un vĂ©hicule entre 2 arrĂȘts.
* Distance maximum entre 2 arrĂȘts (en mĂštres) : distance maximale de parcours d'un vĂ©hicule entre 2 arrĂȘts.
* Vitesse minimum (en kilomĂštres/heure) : vitesse minimale attendue entre 2 arrĂȘts d'une course
* Vitesse maximum (en kilomĂštres/heure) : vitesse maximale attendue entre 2 arrĂȘts d'une course
* Écart maximum de durĂ©e de trajet entre 2 arrĂȘts successifs pour les diffĂ©rentes courses (en secondes) : la diffĂ©rence de temps de trajet entre 2 arrĂȘts successifs de 2 courses d'une mĂȘme mission ne doit pas dĂ©passer ce seuil =:
-h3. ContrĂŽles sur les attributs du modĂšle
-
-p. les paramÚtres suivants sont disponible pour fixer des limitations sur différents champs du modÚle par rapport à leur spécification dans Chouette; ces contrÎles s'applique sur l'ensemble des données fournies à la validation.
-
-p. pour activer un point de contrÎle, il faut cocher le type d'objet, puis renseigner les limitations sur les attributs désirés.
-
-p. les limitations sont les suivantes :
-
-* Unicité : contrÎle de l'unicité de la valeur dans le lot de données contrÎlées.
-* CaractÚres autorisés : restriction possible des valeurs à :
-** uniquement des chiffres, (restriction imposée pour un champ numérique)
-** uniquement des lettres (pas d'espace)
-** uniquement des lettres majuscules (pas d'espace)
-** uniquement des lettres minuscules (pas d'espace)
-* obligation d'un nombre minimal de caractÚres ou valeur minimale pour un champ numérique ou contraint à des chiffres
-** en mettant 1 dans ce champs pour un texte, ceci le rend obligatoire
-* restriction à une longueur maximale de caractÚres ou valeur maximale pour un champ numérique ou contraint à des chiffres
-
-p. L'attribut *Identifiant Neptune* est un cas particulier, les limitations s'appliquent Ă  la troisiĂšme composante de ce champ, soit la partie identifiant technique.
-
h3. Remarques
p. Les distances sont calculées _à vol d'oiseau_ et les vitesses sont déterminées par rapport à ces distances.
diff --git a/app/views/help/relationship.textile b/app/views/help/relationship.textile
index 41bbf756f..334cc6633 100644
--- a/app/views/help/relationship.textile
+++ b/app/views/help/relationship.textile
@@ -7,7 +7,7 @@ h3. Regroupements des diffĂ©rents niveaux d'arrĂȘts
Les arrĂȘts de diffĂ©rents niveaux hiĂ©rarchiques peuvent ĂȘtre liĂ©s ensemble.
-Ainsi, on obtient les possibilités de regroupements suivants:
+Ainsi on obtient les possibilités de regroupements suivants:
* un arrĂȘt physique regroupe plusieurs arrĂȘts sur itinĂ©raire (ou sĂ©quence d'arrĂȘts).
* un arrĂȘt commercial regroupe plusieurs arrĂȘts physiques (quai, embarquement).
@@ -18,12 +18,11 @@ Pour ne pas aboutir Ă  un systĂšme trop complexe, les rĂšgles suivantes sont pos
* un pĂŽle d'Ă©change peut contenir des arrĂȘts commerciaux et/ou des pĂŽles d'Ă©changes (qui ne peuvent pas en contenir d'autres).
* un arrĂȘt commercial ne peut contenir que des arrĂȘts physiques.
-!2014-10-30_180536.png!
-Exemple d'arrĂȘt commercial contenant un arrĂȘt physique
+!2014-10-30_180536.png! Exemple d'arrĂȘt commercial contenant un arrĂȘt physique
h3. Création et modification des relations de parenté
-Les liens de parentĂ© entre les arrĂȘts se crĂ©ent depuis un arrĂȘt dĂ©jĂ  existant, qu'il soit parent ou fils. Il peut s'agir de mettre en relation deux arrĂȘts dĂ©jĂ  existants ou bien de crĂ©er un nouvel arrĂȘt en relation Ă  partir de l'arrĂȘt courant.
+Les liens de parentalitĂ© entre les arrĂȘts se crĂ©ent depuis un arrĂȘt dĂ©jĂ  existant, qu'il soit parent ou fils. Il peut s'agir de mettre en relation deux arrĂȘts dĂ©jĂ  existants ou bien de crĂ©er un nouvel arrĂȘt en relation Ă  partir de l'arrĂȘt courant.
* GĂ©rer le parent : Cette fonction affiche soit un champ de recherche pour rechercher et dĂ©finir le parent si le lien n'existe pas encore, soit le nom du parent pour consultation avec une petite croix pour supprimer le lien de parentĂ© si le lien est dĂ©jĂ  Ă©tabli. Supprimer le lien de parentĂ© ne supprime pas l'arrĂȘt proprement dit.
* Cloner pour crĂ©er un pĂšre : Cette fonction crĂ©e un arrĂȘt identique de niveau hiĂ©rarchique supĂ©rieur.
@@ -36,14 +35,13 @@ h4. Depuis les niveaux _"point d'embarquement"_ ou _"quai"_
Les niveaux _"point d'embarquement"_ et _"quai"_ Ă©tant les plus bas, ils ne peuvent pas ĂȘtre reliĂ©s Ă  des arrĂȘts fils. En consĂ©quence seul un bouton _"GĂ©rer le parent"_ est systĂ©matiquement disponible. Le bouton _"cloner pour crĂ©er un pĂšre"_ apparaĂźt s'il existe dĂ©jĂ  un arrĂȘt parent.
-!2014-10-30_180955.png!
-Gestion d'un arrĂȘt parent
+!2014-10-30_180955.png! Gestion d'un arrĂȘt parent
h4. Depuis le niveau _"arrĂȘt commercial"_ ou _"PĂŽle d'Ă©change"_
!commercialstoppoint.png! ou !stopplace.png!
-Ces deux niveaux permettent Ă  la fois de dĂ©finir de nouveaux fils et de rattacher l'arrĂȘt commercial Ă  un parent de type "pĂŽle d'Ă©change". Ils disposent donc Ă  la fois des fonctions de gestion et de clonage de parents et de fils. A noter que les arrĂȘts de niveaux pĂŽle d'Ă©change (qui sont hiĂ©rarchiquement les plus Ă©levĂ©s) peuvent avoir un et un seul autre pĂŽle d'Ă©change comme parent. Deux pĂŽles d'Ă©change peuvent ĂȘtre parents l'un de l'autre.
+Ces deux niveaux permettent Ă  la fois de dĂ©finir de nouveaux fils et de rattacher l'arrĂȘt commercial Ă  un parent de type "pĂŽle d'Ă©change". Ils disposent donc Ă  la fois des fonctions de gestion et de clonage de parents et de fils. A noter que les arrĂȘts de niveaux pĂŽle d'Ă©change qui sont hiĂ©rarchiquement les plus Ă©levĂ©s peuvent avoir un et un seul autre pĂŽle d'Ă©change comme parent. Deux pĂŽles d'Ă©change peuvent ĂȘtre parents l'un de l'autre.
!2014-10-30_181044.png!
Gestion de relation pĂšre-fils depuis un arrĂȘt commercial \ No newline at end of file
diff --git a/app/views/help/routes.textile b/app/views/help/routes.textile
index 0396898ae..7938169a2 100644
--- a/app/views/help/routes.textile
+++ b/app/views/help/routes.textile
@@ -24,11 +24,11 @@ h3. CrĂ©er une sĂ©quence d'arrĂȘts
La crĂ©ation d'une sĂ©quence d'arrĂȘts se fait depuis la page d'une ligne. Pour crĂ©er une sĂ©quence d'arrĂȘt il convient de cliquer sur _"Ajouter une sĂ©quence d'arrĂȘts"_ dans le menu latĂ©ral Ă  droite. Un formulaire de crĂ©ation s'affiche alors.
-En bas du formulaire, deux liens permettent soit de rajouter des arrĂȘts Ă  la sĂ©quence, soit de crĂ©er un nouvel arrĂȘt pour le rajouter Ă  la sĂ©quence.
+En bas du formulaire deux liens permettent soit de rajouter des arrĂȘts Ă  la sĂ©quence, soit de crĂ©er un nouvel arrĂȘt pour le rajouter Ă  la sĂ©quence.
h4. CrĂ©er un nouvel arrĂȘt pour l'ajouter
-Cliquer sur crĂ©er un nouvel arrĂȘt renvoie l'utilisateur Ă  la page de crĂ©ation d'arrĂȘt. Il est Ă  noter qu'il devra retourner par lui mĂȘme dans sur l'Ă©cran de crĂ©ation de sĂ©quence d'arrĂȘt pour reprendre son travail.
+Cliquer sur crĂ©er un nouvel arrĂȘt renvoie l'utilisateur Ă  la page de crĂ©ation d'arrĂȘt. Il est Ă  noter qu'il devra retourner par lui mĂȘme dans sur l'interface de crĂ©ation de sĂ©quence d'arrĂȘt pour reprendre son travail.
h4. Ajouter un arrĂȘt
@@ -38,7 +38,7 @@ Le pictogramme en forme de poubelle en début de ligne permet de supprimer l'ét
Le pictogramme en forme de flĂšches (dans les 4 directions) permet de modifier l'ordre des arrĂȘts dans la sĂ©quence. Il faut bien entendu au moins deux arrĂȘts pour pouvoir modifier l'ordre des arrĂȘts.
-Une fois qu'un arrĂȘt est sĂ©lectionnĂ©, une petite croix apparaĂźt au bout de la zone contenant le nom de l'arrĂȘt. Cliquer sur cette croix efface l'arrĂȘt sĂ©lectionnĂ© et permet d'en saisir un nouveau.
+Une fois qu'un arrĂȘt est sĂ©lectionnĂ©, une petite croix apparait au bout de la zone contenant le nom de l'arrĂȘt. Cliquer sur cette croix efface l'arrĂȘt sĂ©lectionnĂ© et permet d'en saisir un nouveau.
h3. Modifier une sĂ©quence d'arrĂȘts
@@ -47,25 +47,9 @@ On peut modifier une sĂ©quence d'arrĂȘts en cliquant sur le bouton de modificati
!2014-10-31_112543.png!
Modification des arrĂȘts d'une sĂ©quence
-h3. Contraintes de montée - descente
-
-On peut ajouter des rĂšgles de montĂ©e ou de descente aux arrĂȘts de la sĂ©quence d'arrĂȘt (interdit ou Ă  la demande); ces rĂšgles s'appliquent Ă  toutes les courses de la sĂ©quence d'arrĂȘt
-
-Les rĂšgles sont :
-
-* Non défini (par défaut)
-* Montée autorisée
-* Montée interdite
-* Montée sur réservation
-* Montée sur demande au conducteur
-* Descente autorisée
-* Descente interdite
-* Descente sur réservation
-* Descente sur demande au conducteur
-
h3. Supprimer une sĂ©quence d'arrĂȘts
-Il est possible de supprimer une sĂ©quence d'arrĂȘts depuis la page de la ligne. Chaque Ă©lĂ©ment de la liste des sĂ©quences d'arrĂȘts en bas de la page est dotĂ©e d'un pictogramme de suppression. Il est Ă  noter que la suppression de la sĂ©quence d'arrĂȘts ne supprime par les arrĂȘts qu'elle contient.
+Il est possible de supprimer une sĂ©quence d'arrĂȘt depuis la page de la ligne. Chaque Ă©lĂ©ment de la liste des sĂ©quences d'arrĂȘt en bas de la page est dotĂ©e d'un pictogramme de suppression. Il est Ă  noter que la suppression de la sĂ©quence d'arrĂȘts ne supprime par les arrĂȘts qu'elle contient.
La suppression de la sĂ©quence est Ă©galement possible depuis la page de la sĂ©quence elle-mĂȘme. Le lien _"Supprimer cette sĂ©quence d'arrĂȘts"_ efface la sĂ©quence courante.
diff --git a/app/views/help/startingfromscratch.textile b/app/views/help/startingfromscratch.textile
index ef5586eb3..fdc94069b 100644
--- a/app/views/help/startingfromscratch.textile
+++ b/app/views/help/startingfromscratch.textile
@@ -5,7 +5,7 @@ title: Créer un réseau à partir de zéro
h3. Créer un nouvel espace de données
-Chaque rĂ©seau est gĂ©nĂ©ralement intĂ©grĂ© dans un espace de donnĂ©es spĂ©cifique. Dans le cas oĂč l'on cherche Ă  crĂ©er une nouvelle ligne par exemple, on devra crĂ©er les Ă©lĂ©ments dans l'espace de donnĂ©es correspondant.
+Chaque rĂ©seau est gĂ©nĂ©ralement intĂ©grĂ© dans un espace de donnĂ©e spĂ©cifique. Dans le cas oĂč l'on cherche Ă  crĂ©er une nouvelle ligne par exemple, on devra crĂ©er les Ă©lĂ©ments dans l'espace de donnĂ©es correspondant.
h3. Définir les attributs du réseau
@@ -21,21 +21,21 @@ Navigation au sein de l'application CHOUETTE
h3. Création des calendriers
-Les calendriers sont associĂ©s aux courses. Ils devront donc ĂȘtre créés avant l'Ă©tape de crĂ©ation des courses. Ils nĂ©cessitent gĂ©nĂ©ralement un travail de mise Ă  plat en fonction des horaires tels qu'ils ont Ă©tĂ© conçus. Un calendrier Ă©tant une sĂ©rie de dates permettant de couvrir Ă  la fois les plages de dates et les jours de la semaine auxquels la course fonctionne, il n'est pas rare que la crĂ©ation d'un nouveau rĂ©seau nĂ©cessite un nombre important de calendriers. Les fonctions d'Ă©tiquettes permettent de mieux les organiser dans CHOUETTE, toutefois, une Ă©tape prĂ©alable de conception des calendriers est gĂ©nĂ©ralement nĂ©cessaire pour saisir un nouveau rĂ©seau avec rigueur.
+Les calendriers sont associĂ©s aux courses. Ils devront donc ĂȘtre créés avant l'Ă©tape de crĂ©ation des courses. Ils nĂ©cessitent gĂ©nĂ©ralement un travail de mise Ă  plat en fonction des horaires tels qu'ils ont Ă©tĂ© conçus. Un calendrier Ă©tant une sĂ©rie de date permettant de couvrir Ă  la fois les plages de dates et les jours de la semaine auxquels la course fonctionne, il n'est pas rare que la crĂ©ation d'un nouveau rĂ©seau nĂ©cessite un nombre important de calendriers. Les fonctions d'Ă©tiquettes permettent de mieux les organiser dans CHOUETTE, toutefois, une Ă©tape prĂ©alable de conception des calendriers est gĂ©nĂ©ralement nĂ©cessaire pour saisir un nouveau rĂ©seau avec rigueur.
h3. CrĂ©ation des arrĂȘts et des correspondances
-Les arrĂȘts du rĂ©seaux peuvent ensuite ĂȘtre créés, soit directement par saisie dans le formulaire de CHOUETTE, soit par import. Dans l'hypothĂšse oĂč le nouvel espace de donnĂ©es reprend des arrĂȘts dĂ©jĂ  existants dans un autre espace de donnĂ©es, il est possible de les exporter, de les complĂ©ter pour les rĂ©importer ensuite.
+Les arrĂȘts du rĂ©seaux peuvent ensuite ĂȘtre créés, soit directement par saisie dans le formulaire de CHOUETTE,soit par import. Dans l'hypothĂšse oĂč le nouvel espace de donnĂ©e reprend des arrĂȘts dĂ©jĂ  existants dans un autre espace de donnĂ©es, il est possible de les exporter, de les complĂ©ter pour les rĂ©importer ensuite.
-Les correspondances Ă©tant des liens entre deux arrĂȘts, il est possible de les dĂ©clarer dĂšs l'Ă©tape de crĂ©ation des arrĂȘts.
+Les correspondances Ă©tant des liens entre deux arrĂȘts il est possible de les dĂ©clarer dĂšs l'Ă©tape de crĂ©ation des arrĂȘts.
h3. Création des lignes
-La crĂ©ation des lignes permet de dĂ©finir les grands paramĂštres gĂ©nĂ©raux de la ligne, notamment son nom. Les arrĂȘts proprement dits sont dĂ©finis dans les sĂ©quences d'arrĂȘts.
+La crĂ©ation des lignes permet de dĂ©finir les grands paramĂ©tres gĂ©nĂ©raux de la ligne, notamment son nom. Les arrĂȘts proprement dits sont dĂ©finis dans les sĂ©quences d'arrĂȘts.
h4. SĂ©quences d'arrĂȘts
-A l'intĂ©rieur de l'Ă©cran pour la ligne, l'Ă©tape suivante consiste Ă  dĂ©finir les sĂ©quences d'arrĂȘts . Celles-ci sont constituĂ©es d'un ensemble d'arrĂȘts ordonnĂ©s qui permettront de dĂ©terminer une ou plusieurs missions , c'est Ă  dire un sous-ensemble de la sĂ©quence d'arrĂȘts comportant tout ou partie de ses arrĂȘts.
+A l'intĂ©rieur de l'interface de ligne, l'Ă©tape suivante consiste Ă  dĂ©finir les sĂ©quences d'arrĂȘts . Celles-ci sont constituĂ©es d'un ensemble d'arrĂȘts ordonnĂ©s qui permettront de dĂ©terminer une ou plusieurs missions , c'est Ă  dire un sous-ensemble de la sĂ©quence d'arrĂȘts comportant tout ou partie de ses arrĂȘts.
Typiquement, une ligne aura deux sĂ©quences d'arrĂȘts, une par sens de circulation. Il est tout Ă  fait possible d'en crĂ©er d'autres, y compris avec des arrĂȘts totalement diffĂ©rents d'une sĂ©quence Ă  l'autre.
@@ -43,17 +43,17 @@ h4. Missions
Les missions dĂ©finissent des trajets effectifs rĂ©alisĂ©s par les vĂ©hicules. Elles se dĂ©finissent Ă  l'intĂ©rieur de l'interface de gestion des sĂ©quences d'arrĂȘts, elle-mĂȘme Ă©tant un sous-Ă©lĂ©ment de l'interface des lignes.
-On peut crĂ©er autant de missions que nĂ©cessaire au sein d'une sĂ©quence d'arrĂȘts. Chaque mission est nĂ©anmoins contrainte par les arrĂȘts composant la sĂ©quence d'arrĂȘts, Ă  la fois en ce qui concerne les arrĂȘts eux-mĂȘmes que l'ordre dans lequel ils sont agencĂ©s.
+On peut crĂ©er autant de mission que nĂ©cessaire au sein d'une sĂ©quence d'arrĂȘts. Chaque mission est nĂ©anmoins contrainte par les arrĂȘts composant la sĂ©quence d'arrĂȘts, Ă  la fois en ce qui concerne les arrĂȘts eux-mĂȘmes que l'ordre dans lequel ils sont agencĂ©s.
h3. Horaires
-Les horaires ne peuvent ĂȘtre dĂ©finis qu'Ă  la condition d'avoir paramĂ©trĂ© les Ă©lĂ©ments prĂ©cĂ©dents. L'interface de consultation et de saisie des horaires se situe au niveau de la mission. Pour retrouver les horaires, il convient donc de sĂ©lectionner Ligne>SĂ©quence d'arrĂȘts>Horaire des courses.
+Les horaires ne peuvent ĂȘtre dĂ©finis qu'Ă  la condition d'avoir paramĂ©trĂ© les autres critĂšres. L'interface de consultation et de saisie des horaires se situe au niveau de la mission. Pour retrouver les horaires, il convient donc de sĂ©lectionner Ligne>SĂ©quence d'arrĂȘts>horaire des courses.
-Les horaires des courses peuvent ĂȘtre saisis directement dans l'interface Chouette ou bien encore ĂȘtre Ă©ditĂ©s dans un tableau par le biais d'une fonction "d'import / export" spĂ©cifique. Disponible depuis l'interface des horaires, elle ne concerne que ceux-ci. Il ne faut pas la confondre avec les imports / export de base de donnĂ©es dans le systĂšme. Il s'agit d'une fonction qui permet l'Ă©dition externe et les copier/coller massifs depuis un tableur.
+Les horaires des courses peuvent ĂȘtre saisis directement dans l'interface Chouette ou bien encore ĂȘtre Ă©ditĂ© dans un tableau par le biais d'une fonction "d'import / export" spĂ©cifique. Disponible depuis l'interface des horaires, elle ne concerne que ceux-ci. Il ne faut pas la confondre avec les imports / export de base de donnĂ©es dans le systĂšme. Il s'agit d'une fonction qui permet l'Ă©dition externe et les copier/coller massifs depuis un tableur.
A noter que l'Ă©dition directement dans CHOUETTE peut se faire au clavier. Le curseur placĂ© dans le premier champ, la saisie sur le pavĂ© numĂ©rique permet de saisir la valeur voulue. La touche tabulation permet passer du champ heure au champ minute puis de renseigner la suite de la fiche en colonne. Les liens _"Copier arrivĂ©es vers dĂ©parts"_ ou inversement permettent de dupliquer les donnĂ©es saisies dans le cas le plus frĂ©quent oĂč les horaires de dĂ©part et d'arrivĂ© Ă  l'arrĂȘt sont confondus.
-L'export se fait au format .zip et comporte des fichiers CSV (.csv) des calendriers et des courses. Les versions modifiĂ©es doivent ĂȘtre uploadĂ©es en retour individuellement au format CSV. Il convient de ne surtout pas changer la structure des fichiers et de s'assurer que le format CSV n'ait pas Ă©tĂ© modifiĂ© par le tableur. Les saisies manuelles augmentant le risque d'erreur de saisie, il est fortement recommandĂ© de valider les donnĂ©es aprĂšs un import CSV dans le menu _"Validations"_.
+L'export se fait au format .zip et comporte des fichier .csv des calendriers et des courses. Les versions modifiĂ©es doivent ĂȘtre uploadĂ©es en retour individuellement au format .csv. Il convient de ne surtout pas changer la structure des fichiers et de s'assurer que le format .csv n'ait pas Ă©tĂ© modifiĂ© par le tableur. Les saisies manuelles augmentant le risque d'erreur de saisie, il est fortement recommandĂ© de valider les donnĂ©es aprĂšs un import .csv dans le menu _"Validations"_.
h3. Groupe de lignes
diff --git a/app/views/help/stop_areas.textile b/app/views/help/stop_areas.textile
index 77a07f493..fab4421dd 100644
--- a/app/views/help/stop_areas.textile
+++ b/app/views/help/stop_areas.textile
@@ -9,19 +9,22 @@ Le rĂ©fĂ©rentiel des arrĂȘts constitue un maillon essentiel du rĂ©seau, et se co
On recense tout d'abord les arrĂȘts physiques, qualifiĂ©s de _"point d'embarquement"_ ou de _"quai"_.
-Du fait de l'existence de deux concepts dans le schĂ©ma TRIDENT, cet arrĂȘt physique sera considĂ©rĂ© par l'application comme une _"zone d'arrĂȘt de premier niveau"_. Cette notion est nĂ©cessaire pour gĂ©rer les _"points d'arrĂȘt sur itinĂ©raire"_ utilisĂ©s par certains rĂ©seaux.
+Du fait de l'existence de deux concepts dans le schĂ©ma TRIDENT, cet arrĂȘt physique sera considĂ©rĂ© par l'application comme une _"zone d'arrĂȘt de premier niveau"_. Cette notion est nĂ©cessaire pour gĂ©rer les _"points d'arrĂȘts sur itinĂ©raire"_ utilisĂ©s par certains rĂ©seaux.
-L'application gĂšre ensuite les points d'arrĂȘt sur itinĂ©raire Ă  partir de ces arrĂȘts physiques, en assurant le regroupement des points d'arrĂȘt sur itinĂ©raire dans un arrĂȘt physique. Cela permet notamment de prendre en compte les cas de plusieurs lignes passant par le mĂȘme arrĂȘt physique.
+L'application gĂšre ensuite les points d'arrĂȘts sur itinĂ©raire Ă  partir de ces arrĂȘts physiques, en assurant le regroupement des points d'arrĂȘt sur itinĂ©raire dans un arrĂȘt physique. Cela permet notamment de prendre en compte les cas de plusieurs lignes passant par le mĂȘme arrĂȘt physique.
-Par la suite, on peut regrouper deux (ou plus) arrĂȘts physiques au sein d'un _"arrĂȘt commercial"_. Cela permet par exemple de regrouper les points d'arrĂȘt physiques correspondant Ă  deux poteaux d'arrĂȘt de la mĂȘme ligne situĂ©s de part et d'autre d'une chaussĂ©e mais aussi de regrouper l'ensemble des points d'arrĂȘt physiques d'une gare routiĂšre, pour lesquels on considĂšre que le temps de correspondance est nul. Un tel cas correspond Ă  une _"zone d'arrĂȘt"_, avec qualification _"arrĂȘt commercial"_, de deuxiĂšme niveau.
+Par la suite, on peut regrouper deux (ou plus) arrĂȘts physiques au sein d'un _"arrĂȘt commercial"_. Cela permet par exemple de regrouper les points d'arrĂȘt physiques correspondant Ă  deux poteaux d'arrĂȘt de la mĂȘme ligne situĂ©s de part et d'autre d'une chaussĂ©e mais aussi de regrouper l'ensemble des points d'arrĂȘt physiques d'une gare routiĂšre pour lesquels on considĂšre que le temps de correspondance est nul. Un tel cas correspond Ă  une _"zone d'arrĂȘt"_, avec qualification _"arrĂȘt commercial"_, de deuxiĂšme niveau.
CHOUETTE offre la possibilitĂ© de regrouper les lieux d'arrĂȘt agglomĂ©rĂ©s ainsi créés au sein d'une _"zone d'arrĂȘt de troisiĂšme niveau_" pour constituer des _"PĂŽles d'Ă©change"_.
-Un dernier regroupement est *l'ITL*. L'interdiction de trafic local* est l'interdiction faite Ă  un service routier de prendre et de laisser un mĂȘme voyageur Ă  l'intĂ©rieur du pĂ©rimĂštre des transports urbains (cf. DĂ©cret n°49-1473 du 14 novembre 1949).
+Un dernier regroupement est *l'ITL*. L'interdiction de trafic local* est l'interdiction faite Ă  un service routier de prendre et de laisser un mĂȘme voyageur Ă  l'intĂ©rieur du pĂ©rimĂštre des transports urbains (cf. DĂ©cret n°49-1473 du 14 novembre 1949) .
-Ainsi dans CHOUETTE, une ITL est un regroupement d'arrĂȘts reprĂ©sentant le pĂ©rimĂštre d'interdiction. Une ITL est associĂ©e Ă  une ou plusieurs lignes. Il ne s'agit pas Ă  proprement parler d'un type d'arrĂȘt mais bien d'un regroupement d'arrĂȘts.
+Ainsi dans CHOUETTE une ITL est un regroupement d'arrĂȘts reprĂ©sentant le pĂ©rimĂštre d'interdiction. Une ITL est associĂ©e Ă  une ou plusieurs lignes. Il ne s'agit pas Ă  proprement parler d'un type d'arrĂȘt mais bien d'un regroupement d'arrĂȘts. [pourquoi ne pas le traiter dans les groupes d'arrĂȘts du coup ?]
-Des pictogrammes permettent d'identifier les diffĂ©rents types d'arrĂȘts.
+!navigation.png!
+EnchaĂźnement des pages de CHOUETTE
+
+Des pictogrammes permettent d'identifier les diffĂ©rents types de d'arrĂȘts.
* !boardingposition.png! point d'embarquement
* !quay.png! quai
@@ -45,7 +48,7 @@ Saisir l'adresse postale de l'arrĂȘt proposera une gĂ©olocalisation qu'il sera t
h3. Consultation et Ă©dition d'un arrĂȘt
-Le nombre d'arrĂȘts Ă©tant la plupart du temps assez important, il est probable que tous les arrĂȘts ne puissent pas s'afficher sur la page des lignes. Des fonctions de recherche situĂ©es en haut de la page permettent de faire une recherche par le nom. Cliquer sur _"recherche avancĂ©e"_ permet de sĂ©lectionner des critĂšres de recherche spĂ©cifiques par code postal et type d'arrĂȘt.
+Le nombre d'arrĂȘts Ă©tant la plus part du temps assez important, il est probable que tous les arrĂȘts ne puissent pas s'afficher sur la page des lignes. Des fonctions de recherche situĂ©es en haut de la page permettent de faire une recherche par le nom. Cliquer sur _"recherche avancĂ©e"_ permet de sĂ©lectionner des critĂšres de recherche spĂ©cifiques par code postal et type d'arrĂȘt.
Pour afficher un arrĂȘt existant, il suffit de cliquer sur le nom de l'arrĂȘt depuis la liste des lignes existantes.
@@ -57,7 +60,7 @@ Une fois sur la page d'un arrĂȘt, les arrĂȘts de niveau hiĂ©rarchique diffĂ©rent
!2014-10-30_180536.png!
HiĂ©rarchie des arrĂȘts
-On retrouve Ă©galement en bas de la page, un lien _"Liens entre arrĂȘts"_ qui affiche les liens hiĂ©rarchiques entre l'arrĂȘt consultĂ© et les autres arrĂȘts auquel il est liĂ©. Cet affichage permet d'accĂ©der aux autres arrĂȘts liĂ©s en cliquant les arrĂȘts. Dans le cas d'un arrĂȘt physique, il affiche Ă©galement la sĂ©quence d'arrĂȘts Ă  laquelle il est rattachĂ©.
+On retrouve Ă©galement en bas de la page, un lien _"Liens entre arrĂȘts"_ qui affiche les liens hiĂ©rarchiques entre l'arrĂȘt consultĂ© et les autres arrĂȘts auquel il est liĂ©. Cet affichage permet d'accĂ©der aux autres arrĂȘts liĂ©s en cliquant les arrĂȘts. Dans le cas d'un arrĂȘt physique, il affiche Ă©galement la sĂ©quence d'arrĂȘt Ă  laquelle il est rattachĂ©.
h4. Modifier un arrĂȘt
@@ -83,7 +86,7 @@ h3. Attributs d'un arrĂȘt
* Position X : coordonnĂ©e horizontale de l'arrĂȘt dans le rĂ©fĂ©rentiel de projection de l'espace de donnĂ©es
* Position Y : coordonnĂ©e verticale de l'arrĂȘt dans le rĂ©fĂ©rentiel de projection de l'espace de donnĂ©es
* Longitude : longitude de l'arrĂȘt dans le rĂ©fĂ©rentiel WGS84
-* Latitude : latitude de l'arrĂȘt dans le rĂ©fĂ©rentiel WGS84
+* latitude : latitude de l'arrĂȘt dans le rĂ©fĂ©rentiel WGS84
diff --git a/app/views/help/stopsmanagement.textile b/app/views/help/stopsmanagement.textile
index f4022dec8..40b170d4f 100644
--- a/app/views/help/stopsmanagement.textile
+++ b/app/views/help/stopsmanagement.textile
@@ -5,15 +5,15 @@ title: Modification des arrĂȘts d'une ligne
h3. Nouvel arrĂȘt ou modification d'arrĂȘt existant
-Avec le temps, un ou plusieurs arrĂȘts sont susceptibles de changer au sein d'une mĂȘme ligne. Il est conseillĂ© de faire la distinction entre les nouveaux arrĂȘts et les arrĂȘts modifiĂ©s. Si un arrĂȘt est retirĂ© d'une ligne et remplacĂ© par un autre arrĂȘt, il est conseillĂ© de crĂ©er un nouvel arrĂȘt correspondant et de faire la substitution dans la ligne. Il serait certes plus rapide de simplement changer le nom et la gĂ©olocalisation de l'arrĂȘt dĂ©sormais obsolĂšte, mais la modification sera plus difficile Ă  suivre et Ă  comprendre. Il est Ă©galement possible que cet arrĂȘt resserve ultĂ©rieurement ou bien encore qu'il apparaisse dans d'autres bases de donnĂ©es exploitĂ©es par d'autres systĂšmes. Une simple modification de nom gĂ©nĂ©rerait alors une ambiguĂŻtĂ© et des problĂšmes potentiels d'exploitations de ces donnĂ©es.
+Avec le temps, un ou plusieurs arrĂȘts sont susceptibles de changer au sein d'une mĂȘme ligne. Il est conseillĂ© de faire la distinction entre les nouveaux arrĂȘts et les arrĂȘts modifiĂ©s. Si un arrĂȘt est retirĂ© d'une ligne et remplacĂ© par un autre arrĂȘt, il est conseillĂ© de crĂ©er un nouvel arrĂȘt correspondant et de faire la substitution dans la ligne. Il serait certes plus rapide de simplement changer le nom et la gĂ©olocalisation de l'arrĂȘt dĂ©sormais obsolĂšte, mais la modification sera plus difficile Ă  suivre et Ă  comprendre. Il est Ă©galement possible que cet arrĂȘt resserve ultĂ©rieurement ou bien encore qu'il apparaisse dans d'autres bases de donnĂ©es exploitĂ©es par d'autres systĂšmes. Une simple modification de nom gĂ©nĂ©rerait alors de l’ambiguĂŻtĂ© et des problĂšmes potentiels d'exploitations de ces donnĂ©es.
Dans le cas oĂč il s'agit bien du mĂȘme arrĂȘt mais qui change soit de nom, soit de localisation, la modification est effectivement la marche Ă  suivre. Il est conseillĂ© de noter ces modifications en commentaire. En effet, il n'est pas rare qu'un mĂȘme arrĂȘt partagĂ© par plusieurs rĂ©seaux possĂšde plusieurs noms commerciaux et qu'un changement de nom ne soit pas connu de tous les partenaires transports. Annoter les modifications dans CHOUETTE facilitera la levĂ©e des ambiguĂŻtĂ©s.
h3. Vérifier la cohérence des données de géolocalisation
-Les erreurs les plus frĂ©quentes sont les erreurs de gĂ©olocalisation. DĂšs lors qu'un arrĂȘt fait partie d'une ligne, des vĂ©rifications automatiques seront menĂ©es, notamment pour vĂ©rifier que l'arrĂȘt est effectivement gĂ©olocalisĂ© et qu'il n'y a pas de distance aberrante entre deux arrĂȘts. Une vĂ©rification visuelle permet Ă©galement de vĂ©rifier la cohĂ©rence des donnĂ©es :
+L'une des erreurs les plus frĂ©quentes sont les erreurs de gĂ©olocalisation. DĂšs lors qu'un arrĂȘt fait partie d'une ligne, des vĂ©rifications automatiques seront menĂ©es, notamment pour vĂ©rifier que l'arrĂȘt est effectivement gĂ©olocalisĂ© et qu'il n'y a pas de distance aberrante entre deux arrĂȘts. Une vĂ©rification visuelle permet Ă©galement de vĂ©rifier la cohĂ©rence des donnĂ©es :
* L'arrĂȘt est-il bien placĂ© sur une voirie sur le fond cartographique ?
* Les arrĂȘts sont-ils bien placĂ©s sur la bonne commune ?
-* La sĂ©quence d'arrĂȘts visible depuis l'interface des lignes dessine-t-elle un trajet cohĂ©rent ?
+* La sĂ©quence d'arrĂȘt visible depuis l'interface des lignes dessine-t-elle un trajet cohĂ©rent ?
diff --git a/app/views/help/temporaryline.textile b/app/views/help/temporaryline.textile
index d14de7033..6b71a0748 100644
--- a/app/views/help/temporaryline.textile
+++ b/app/views/help/temporaryline.textile
@@ -1,6 +1,6 @@
---
layout: default
-title: Itinéraires valables le temps d'une saison
+title: Itinéraire valables le temps d'une saison
---
h3. Nouvelle ligne ou nouvelle sĂ©quence d'arrĂȘts
@@ -10,11 +10,11 @@ Certains rĂ©seaux mettent parfois en Ɠuvre des lignes spĂ©cifiques Ă  un Ă©vĂ©n
* Il s'agit d'une ligne Ă  part entiĂšre disposant de son propre nom
* Il s'agit d'un service rattachĂ© Ă  une ligne commerciale existante, mĂȘme si l'itinĂ©raire est diffĂ©rent.
-Le traitement de cette nouvelle ligne se fera en accord avec le type de cas rencontrĂ©. Dans le premier cas, une nouvelle ligne devra ĂȘtre créée avec des calendriers adaptĂ©s. Ce faisant, il faudra anticiper l'emploi de la base de donnĂ©e dans les systĂšmes situĂ©s en aval de CHOUETTE. S'il s'agit par exemple d'un site internet, une nouvelle ligne, dotĂ©e d'identifiants Neptune spĂ©cifiques nĂ©cessitera une prise en compte dans le site internet avec probablement un macaron spĂ©cifique.
+Le traitement de cette nouvelle ligne se fera en accord avec le type de cas rencontrĂ©. Dans le premier cas, une nouvelle ligne devra ĂȘtre créée avec des calendriers adaptĂ©s. Ce faisant, il faudra anticiper l'emploi de la base de donnĂ©e dans les systĂšmes situĂ©s en aval de CHOUETTE. S'il s'agit par exemple d'un site internet, une nouvelle ligne, dotĂ©e d'identifiants neptune spĂ©cifique nĂ©cessitera une prise en compte dans le site internet avec probablement un macaron spĂ©cifique.
-Dans le second cas, la dĂ©finition d'une sĂ©quence d'arrĂȘts spĂ©cifique permettra de traiter le cas particulier au sein d'une mĂȘme ligne, mĂȘme si les itinĂ©raires sont trĂšs diffĂ©rents des trajets commerciaux. CrĂ©er une sĂ©quence d'arrĂȘts spĂ©cifique est prĂ©fĂ©rable Ă  la crĂ©ation d'une nouvelle ligne qui porterait un suffixe "Ă©tĂ©" par exemple, car les identifiants de la ligne seront les mĂȘmes et l'intĂ©gration de ce nouveau parcours au sein de la ligne dans les systĂšmes exploitant la base de donnĂ©es se fera plus facilement.
+Dans le second cas, la dĂ©finition d'une sĂ©quence d'arrĂȘts spĂ©cifique permettra de traiter le cas particulier au sein d'une mĂȘme ligne, mĂȘme si les itinĂ©raires sont trĂšs diffĂ©rents des trajets commerciaux. CrĂ©er une sĂ©quence d'arrĂȘt spĂ©cifique est prĂ©fĂ©rable Ă  la crĂ©ation d'une nouvelle ligne qui porterait un suffixe "Ă©tĂ©" par exemple car les identifiants de la ligne seront les mĂȘmes et l'intĂ©gration de ce nouveau parcours au sein de la ligne dans les systĂšmes exploitant la base de donnĂ©es se fera plus facilement.
-L'avantage de pouvoir dĂ©finir autant de sĂ©quences d'arrĂȘts que nĂ©cessaire est de pouvoir traiter tous les cas spĂ©cifiques sans alourdir les donnĂ©es du cas standard.
+L'avantage de pouvoir dĂ©finir autant de sĂ©quences d'arrĂȘts que nĂ©cessaire, est de pouvoir traiter tous les cas spĂ©cifiques sans alourdir les donnĂ©es du cas standard.
h3. Création de calendriers spécifiques
diff --git a/app/views/help/terms.textile b/app/views/help/terms.textile
index 06192c084..97151a94e 100644
--- a/app/views/help/terms.textile
+++ b/app/views/help/terms.textile
@@ -6,7 +6,7 @@ title: Glossaire
* ArrĂȘt : Il existe diffĂ©rentes catĂ©gories d'arrĂȘts qui permettent de dĂ©crire le rĂ©seau. Ils s'organisent hiĂ©rarchiquement.
* ArrĂȘt Physique : Il s'agit d'une catĂ©gorie qui regroupe les points d'arrĂȘt et les quais. Les _"arrĂȘts physiques"_ ne sont pas un type d'arrĂȘt paramĂ©trable dans CHOUETTE. Un arrĂȘt physique est un lieu gĂ©ographique rĂ©el.
* Point d'arrĂȘt : Les points sont des arrĂȘts physiques sur la voirie ou au sein d'une gare routiĂšre, classiquement signalĂ©s par un poteau.
-* Quai : Les quais sont des arrĂȘts physiques de transports ferrĂ©s ou en site propre.
+* Quai : Les quais sont des arrĂȘts physiques de transports ferrĂ©s.
* ArrĂȘt commercial : Un arrĂȘt commercial est un regroupement d'arrĂȘts physiques (au moins un) desservant une mĂȘme zone. Il est dĂ©fini par un nom d'arrĂȘt comme par exemple, "Mairie" ou bien encore "Gare routiĂšre".
* PĂŽle d'Ă©change : Un pĂŽle d'Ă©change est un regroupement de un ou plusieurs arrĂȘts commerciaux. Un pĂŽle d'Ă©change peut aussi contenir un autre pĂŽle d'Ă©change.
* AccĂšs : Type d'accĂšs physique (escalier, ascenseur, escalator) d'un arrĂȘt.
@@ -20,12 +20,12 @@ title: Glossaire
* Indice : Nom raccourci d'un élément. Le numéro d'une ligne par exemple.
* Réseau : Identité d'un service de transport public.
* Transporteur : Service d'exploitation de véhicules de transport public au sein d'un réseau ou pour une ligne.
-* Calendrier : ensemble de dates associées à une course qui permet de déterminer les jours de fonctionnement des différentes courses.
-* GTFS : Format de données Google Transit. Il s'agit d'un format simple composé d'une série de fichiers CSV
-* Neptune : Format d'échange de données transport XML normalisé (NFP 99-506)
-* CSV : Type de fichier oĂč l'information est enregistrĂ©e de façon simple, en utilisant des sĂ©parateurs pour distinguer les diffĂ©rentes information. Les fichiers CSV s'Ă©ditent avec un tableur.
-* Netex : Nouveau format européen d'échange de données transport XML normalisé.
-* HUB : Format d'échange Transdev composer d'un ensemble de fichiers au format txt mais dont les données sont organisées comme dans un fichier csv.
+* Calendrier : ensemble de dates associé à une course qui permet de déterminer les jours de fonctionnement des différentes courses.
+* GTFS : Format de données de Google. Il s'agit d'un format simple composé d'une série de fichiers csv
+* Neptune : Format européen d'échange de données transport xml normalisé
+* CSV : Type de fichier oĂč l'information est enregistrĂ©e de façon simple, en utilisant des sĂ©parateurs pour distinguer les diffĂ©rentes information. Les fichiers csv s'Ă©ditent avec un tableur.
+* Netex : Nouveau format européen d'échange de données transport xml normalisé.
+* HUB : Format d'échange Transdev composer d'un ensemble de fichier au format txt mais dont les données sont organisées comme dans un fichier csv.
* Transport à la demande : Dans CHOUETTE, ligne réguliÚre dont les services ne sont déclenchés que sur réservation des utilisateurs.
diff --git a/app/views/help/time_tables.textile b/app/views/help/time_tables.textile
index a8bff2a6f..783e51f5e 100644
--- a/app/views/help/time_tables.textile
+++ b/app/views/help/time_tables.textile
@@ -41,7 +41,7 @@ h3. Attributs
* Étiquettes : Marqueurs caractĂ©risant le calendrier (pour simplifier la recherche). Afin d'ĂȘtre enregistrĂ©es, les Ă©tiquettes doivent ĂȘtre saisies sĂ©parĂ©es par une ',' (virgule) et la touche 'tab' permet d'activer la derniĂšre. Un assistant propose les Ă©tiquettes dĂ©jĂ  saisies sur d'autres calendriers.
* Périodes d'application : périodes calendaires durant lesquelles le calendrier est applicable
* Jours d'application : jours de la semaine effectivement applicables dans le cas oĂč des pĂ©riodes sont dĂ©finies dans le calendrier
-* Dates particuliĂšres : dates spĂ©cifiques pour lesquelles le calendrier est applicable ; ces dates peuvent ĂȘtre ajoutĂ©es dans ou en dehors des pĂ©riodes calendaires. Un calendrier peut n'avoir que des dates calendaires, auquel cas les jours d'application n'ont pas de signification.
+* Dates particuliĂšres : dates spĂ©cifiques pour lesquelles le calendrier est applicable ; ces dates peuvent ĂȘtre ajoutĂ©es dans ou en dehors des pĂ©riodes calendaires. Un calendrier peut n'avoir que des dates calendaires, auquel cas les jours d'applications n'ont pas de signification.
* Dates exclues : dates spĂ©cifiques Ă  retirer des dates dĂ©finies par les pĂ©riodes et les jours d'application ; une mĂȘme date calendaire ne peut pas ĂȘtre Ă  la fois particuliĂšre et exclue;
une date exclue hors périodes et jours d'application n'a aucun effet.
diff --git a/app/views/help/toc.textile b/app/views/help/toc.textile
index f6cb389e4..ad0c30657 100644
--- a/app/views/help/toc.textile
+++ b/app/views/help/toc.textile
@@ -28,12 +28,12 @@ h3. Sommaire
## "Missions":journey_patterns
## "Courses et horaires":vehicle_journeys
## "Correspondances":connection_links
-## "Calendriers":time_tables
+## "Calendrier":time_tables
# Imports
## "Imports":imports
## "Formats d'import":import_formats
# Exports
-## "Formats d'export normalisé":export_format
+## "Formats d'export":export_format
## "Export de données":exports
# Validations
## "ParamĂštres de validation":parametersets
@@ -41,7 +41,6 @@ h3. Sommaire
# Annexes
## "Créer un réseau à partir de zéro":startingfromscratch
## "Modification des arrĂȘts d'une ligne":stopsmanagement
-## "Itinéraires valables le temps d'une saison":temporaryline
+## "Itinéraire valables le temps d'une saison":temporaryline
## "Contraintes de l'export HUB":hubexport
-## "Format CSV chouette":csv
## "Glossaire":terms
diff --git a/app/views/help/validations.textile b/app/views/help/validations.textile
index 1513ed0e0..c2927cdbf 100644
--- a/app/views/help/validations.textile
+++ b/app/views/help/validations.textile
@@ -22,7 +22,7 @@ p. Les tests (« points de contrÎle ») de validation Neptune sont décrits sur
h3(#fmt). Formats disponibles
-- Neptune := format normalisé des échanges de données de transport en commun pour la France
+- Neptune := format normalisé des échanges de données de transport en commun pour la France (cf "Normalisation":normalisation)
- Données internes Chouette := tests sur les objets déjà importés ou créés/modifiés en base (Phase 3 uniquement)
h3(#val). Onglet VALIDATIONS
@@ -35,7 +35,7 @@ p=. !validation.png!
p. Dans la partie droite de l'écran :
-* Ajouter une Validation
+* ajouter une Validation
* Jeu de paramĂštres
h3(#new). Ajouter une Validation
@@ -47,7 +47,7 @@ p. A chaque objet Import est associé un objet Validation, mais l'inverse est fa
h3(#res). Consultation des résultats : détail de l'objet Validation
-p. La validation est lancée en différé; son état d'avancement est affiché sous la forme d'une icÎne dont la couleur dépend de l'état:
+p. La validation est lancée en différé; son état d'avancement est affiché sous la forme d'une icÎne donc la couleur dépend de l'état:
* bleu : en cours
* vert : terminé correctement
@@ -97,13 +97,11 @@ Une bulle d'information s'affiche en sélectionnant une icÎne bleue !notice.png
p(border_image). !validation_bulle.png!
-p. La spécification du test s'affiche par le lien sur le code.
+p. La spécification du test s'affiche par le lien sur le code
p. En cas d'erreur, la localisation est fournie dans la colonne 'Détail':
* pour les tests des phases 1 et 2, par l'emplacement (nom du fichier, ligne et colonne) de l'objet en erreur,
-* pour les tests de la phase 3, par un lien vers la page de consultation de l'objet en base qui est en erreur.
+* pour les tests de la phase 3, par un lien vers la page de consultation de l'objet en erreur.
-p(border_image). !validation_location.png!
-
-p. Un bouton Ă  droite permet d'exporter l'ensemble du rapport de validation au format CSV pour usage externe.
+p(border_image). !validation_location.png! \ No newline at end of file
diff --git a/app/views/help/vehicle_journeys.textile b/app/views/help/vehicle_journeys.textile
index ec8aef8cf..289e2f553 100644
--- a/app/views/help/vehicle_journeys.textile
+++ b/app/views/help/vehicle_journeys.textile
@@ -28,7 +28,7 @@ Un bouton _"sĂ©quence d'arrĂȘts"_ est positionnĂ© au-dessus de la liste des arrĂ
h4. Consulter le détail d'une course
-Dans le tableau des courses, le lien en en-tĂȘte de colonne permet de sĂ©lectionner une autre sĂ©quence d'arrĂȘt de la ligne ce qui permet de passer d'une sĂ©quence Ă  l'autre directement sans avoir besoin de revenir Ă  la page de la sĂ©quence d'arrĂȘts. Cela permet par exemple d'accĂ©der directement Ă  la sĂ©quence d'arrĂȘts retour.
+Dans le tableau des courses, le lien en en-tĂȘte de colonne permet de sĂ©lectionner une autre sĂ©quence d'arrĂȘt de la ligne ce qui permet de passer d'une sĂ©quence Ă  l'autre directement sans avoir besoin de revenir Ă  la page de la sĂ©quence d'arrĂȘt. Cela permet par exemple d'accĂ©der directement Ă  la sĂ©quence d'arrĂȘt retour.
L'en-tĂȘte de chaque course propose un bouton qui permet d'accĂ©der Ă  des fonctions relative Ă  la course :
@@ -91,13 +91,13 @@ Saisie d'horaire dans un tableur.
L'export fournit un fichier .zip comprenant le fichier des horaires et les calendriers.
-L'import, en retour, ne concerne que le fichier .csv proprement dit. Importer un fichier .zip identique au fichier exporté générera une erreur.
+L'import en retour ne concerne que le fichier .csv proprement dit. Importer un fichier .zip identique au fichier exporté, génÚrera une erreur.
h4. Cloner une course
-Depuis la page d'une course, il est possible de cloner la course en cliquant dans le menu latĂ©ral sur _"Cloner la course"_. Une boite de dialogue s'affiche et permet de choisir les paramĂštres de clonage. Le clonage n'est pas une duplication Ă  l'identique. Il ne permet pas de crĂ©er une deuxiĂšme course en tout point identique mais de crĂ©er une course ayant les mĂȘmes paramĂštres, les mĂȘmes temps de trajet inter-arrĂȘts, *mais Ă  un horaire diffĂ©rent*, comme le fait la fonction de dĂ©calage prĂ©sente au-dessus des horaires de la course.
+Depuis la page d'une course, il est possible de cloner la course en cliquant dans le menu latĂ©ral sur _"Cloner la course"_. Une boite de dialogue s'affiche et permet de choisir les paramĂštres de clonage. Le clonage n'est pas une duplication Ă  l'identique. Il ne permet pas de crĂ©er une deuxiĂšme course en tout point identique mais de crĂ©er une course ayant les mĂȘmes paramĂštres, les mĂȘmes temps de trajet inter-arrĂȘts mais Ă  un horaire diffĂ©rent comme le fait la fonction de dĂ©calage prĂ©sente au-dessus des horaires de la course.
-Contrairement au décalage qui modifie les horaires de la course existante, le clonage crée une nouvelle course avec des horaires différents. Le premier paramÚtre permet de choisir si on clone la nouvelle course en fonction de l'horaire de départ ou de l'horaire d'arrivée, puis de choisir l'horaire exact de clonage.
+Contrairement au décalage qui modifie les horaires de la course existante, le clonage crée une nouvelle course avec des horaires différents. Le premier paramÚtre permet de choisir si on clone la nouvelle course en fonction de l'horaire de départ ou de l'horaire d'arrivée puis de choisir l'horaire exact de clonage.
Deux autres paramĂštres facultatifs permettent de rĂ©pĂ©ter l'opĂ©ration "en rafale" sur des bases rĂ©guliĂšres en dĂ©finissant l’intervalle entre deux courses et le nombre de copies Ă  effectuer selon cette modalitĂ©.
@@ -115,8 +115,6 @@ h3. Attributs
* Mode de transport : mode de transport pour la course; par défaut, c'est le mode de transport de la ligne qui est appliqué
* Accessibilité PMR : précise si la course est équipée PMR
* Transport à la demande : précise si la course est en exploitation à la demande ou pas
-* État de trafic : Ă©tat de trafic
-* Équipement : Ă©quipement
* Type d'identifiant du véhicule : type d'identifiant du véhicule
diff --git a/config/deploy/production.rb b/config/deploy/production.rb
index c24f29894..f1c464c48 100644
--- a/config/deploy/production.rb
+++ b/config/deploy/production.rb
@@ -1,3 +1,3 @@
server "chouette.marseille.cityway.fr", :app, :web, :db, :primary => true
-set :branch, "V2_5"
-set :gui_cmd, "2.5.1"
+set :branch, "V3_0"
+set :gui_cmd, "3.0.0"
diff --git a/config/deploy/staging.rb b/config/deploy/staging.rb
index e8f79cac6..d43d2a307 100644
--- a/config/deploy/staging.rb
+++ b/config/deploy/staging.rb
@@ -3,5 +3,5 @@ set :deploy_via, :copy
set :copy_cache, true
set :copy_via, :scp
set :copy_exclude, ".git/*"
-set :branch, "V2_5"
-set :gui_cmd, "2.5.1" \ No newline at end of file
+set :branch, "V3_0"
+set :gui_cmd, "3.0.0"
diff --git a/config/environments/production.rb b/config/environments/production.rb
index 892be33da..07604fb82 100644
--- a/config/environments/production.rb
+++ b/config/environments/production.rb
@@ -26,10 +26,10 @@ Rails.application.configure do
config.assets.css_compressor = :sass
# Do not fallback to assets pipeline if a precompiled asset is missed.
- config.assets.compile = false
+ config.assets.compile = true
# Generate digests for assets URLs.
- config.assets.digest = false
+ config.assets.digest = true
# Must add sub uri for assets. Same as config.action_controller.relative_url_root
# config.assets.prefix = "/chouette2"
diff --git a/db/migrate/20150703141935_remove_uniqueness_for_registration_number.ninoxe_engine.rb b/db/migrate/20150703141935_remove_uniqueness_for_registration_number.ninoxe_engine.rb
new file mode 100644
index 000000000..a9e6d6d84
--- /dev/null
+++ b/db/migrate/20150703141935_remove_uniqueness_for_registration_number.ninoxe_engine.rb
@@ -0,0 +1,23 @@
+# This migration comes from ninoxe_engine (originally 20150630135517)
+class RemoveUniquenessForRegistrationNumber < ActiveRecord::Migration
+ def up
+ remove_index "lines", name: "lines_registration_number_key" if index_exists?(:lines, :registration_number, name: "lines_registration_number_key")
+ add_index "lines", ["registration_number"], :name => "lines_registration_number_key"
+
+ remove_index "companies", name: "companies_registration_number_key" if index_exists?(:companies, :registration_number, name: "companies_registration_number_key")
+ add_index "companies", ["registration_number"], :name => "companies_registration_number_key"
+
+ remove_index "networks", name: "networks_registration_number_key" if index_exists?(:networks, :registration_number, name: "networks_registration_number_key")
+ add_index "networks", ["registration_number"], :name => "networks_registration_number_key"
+ end
+ def down
+ remove_index "lines", name: "lines_registration_number_key" if index_exists?(:lines, :registration_number, name: "lines_registration_number_key")
+ add_index "lines", ["registration_number"], :name => "lines_registration_number_key", :unique => true
+
+ remove_index "companies", name: "companies_registration_number_key" if index_exists?(:companies, :registration_number, name: "companies_registration_number_key")
+ add_index "companies", ["registration_number"], :name => "companies_registration_number_key", :unique => true
+
+ remove_index "networks", name: "networks_registration_number_key" if index_exists?(:networks, :registration_number, name: "networks_registration_number_key")
+ add_index "networks", ["registration_number"], :name => "networks_registration_number_key", :unique => true
+ end
+end
diff --git a/lib/tasks/demo.rake b/lib/tasks/demo.rake
index d78637c96..fbafa96c1 100644
--- a/lib/tasks/demo.rake
+++ b/lib/tasks/demo.rake
@@ -13,10 +13,27 @@ namespace :demo do
user.confirm!
referential = organisation.referentials.create( :name => "Tatrobus", :slug => "tatrobus", :prefix => "TAT")
- resource = Rack::Test::UploadedFile.new( Rails.application.config.demo_data, 'application/zip', false)
- import_instance = referential.import_tasks.create( :resources => resource, :referential_id => referential.id, :user_name => user.name, :no_save => false, :user_id => user.id)
- import_instance.import
+ #resource = Rack::Test::UploadedFile.new( Rails.application.config.demo_data, 'application/zip', false)
+ #import_instance = ImportTask.new( :resources => resource, :referential_id => referential.id, :user_name => user.name, :no_save => false, :user_id => user.id, :name => "initialize demo", :data_format => "neptune")
+ #import_instance.save
+
+ File.open("/tmp/parameters_demo.json", "w") { |file|
+ file.write('{
+"parameters" : {
+ "neptune-import": {
+ "user_name" : "Demo",
+ "name" : "Data restauration",
+ "organisation_name" : "DemoChouette",
+ "referential_name" : "Tatrobus",
+ "clean_repository" : true,
+ "no_save" : false
+ }
+ }
+}') }
+
+ cmd = 'curl -F "file=@'+Rails.application.config.demo_data+';filename=tatrobus.zip" -F "file=@/tmp/parameters_demo.json;filename=parameters.json" http://localhost:8180/chouette_iev/referentials/tatrobus/importer/neptune'
+ system(cmd)
+
puts "Restore demo environment complete"
end
end
-
diff --git a/public/help/2015-07-23_152040.png b/public/help/2015-07-23_152040.png
new file mode 100644
index 000000000..5cf9bcfd8
--- /dev/null
+++ b/public/help/2015-07-23_152040.png
Binary files differ
diff --git a/public/help/2015-07-23_152615.png b/public/help/2015-07-23_152615.png
new file mode 100644
index 000000000..5bd4e3d25
--- /dev/null
+++ b/public/help/2015-07-23_152615.png
Binary files differ
diff --git a/public/help/2015-07-23_162747.png b/public/help/2015-07-23_162747.png
new file mode 100644
index 000000000..cf0653243
--- /dev/null
+++ b/public/help/2015-07-23_162747.png
Binary files differ
diff --git a/public/help/2015-07-23_162942.png b/public/help/2015-07-23_162942.png
new file mode 100644
index 000000000..6933dc80b
--- /dev/null
+++ b/public/help/2015-07-23_162942.png
Binary files differ
diff --git a/public/help/2015-07-23_165033.png b/public/help/2015-07-23_165033.png
new file mode 100644
index 000000000..c354235d1
--- /dev/null
+++ b/public/help/2015-07-23_165033.png
Binary files differ
diff --git a/public/help/2015-07-23_165157.png b/public/help/2015-07-23_165157.png
new file mode 100644
index 000000000..20187f077
--- /dev/null
+++ b/public/help/2015-07-23_165157.png
Binary files differ
diff --git a/public/help/2015-07-23_165644.png b/public/help/2015-07-23_165644.png
new file mode 100644
index 000000000..c62d01b7a
--- /dev/null
+++ b/public/help/2015-07-23_165644.png
Binary files differ
diff --git a/public/help/import_file_result.png b/public/help/import_file_result.png
index a98cef26d..a673f1a5e 100644
--- a/public/help/import_file_result.png
+++ b/public/help/import_file_result.png
Binary files differ
diff --git a/public/help/import_line_detail.png b/public/help/import_line_detail.png
index 6adad13c8..f14294d9f 100644
--- a/public/help/import_line_detail.png
+++ b/public/help/import_line_detail.png
Binary files differ
diff --git a/public/help/import_line_result.png b/public/help/import_line_result.png
index 5b178f0b2..d6e3b9a49 100644
--- a/public/help/import_line_result.png
+++ b/public/help/import_line_result.png
Binary files differ
diff --git a/public/help/import_result.png b/public/help/import_result.png
index 1a399c95d..4703f2327 100644
--- a/public/help/import_result.png
+++ b/public/help/import_result.png
Binary files differ
diff --git a/spec/models/export_task_spec.rb b/spec/models/export_task_spec.rb
new file mode 100644
index 000000000..1a52a6175
--- /dev/null
+++ b/spec/models/export_task_spec.rb
@@ -0,0 +1,8 @@
+require 'spec_helper'
+
+describe ExportTask, :type => :model do
+
+ it { should_not validate_presence_of(:start_date) }
+ it { should_not validate_presence_of(:end_date) }
+
+end
diff --git a/spec/models/gtfs_export_spec.rb b/spec/models/gtfs_export_spec.rb
index a5e5d0335..6051497a7 100644
--- a/spec/models/gtfs_export_spec.rb
+++ b/spec/models/gtfs_export_spec.rb
@@ -1,10 +1,33 @@
-# require 'spec_helper'
+require 'spec_helper'
-# describe GtfsExport, :type => :model do
+describe GtfsExport, :type => :model do
-# describe '#export_options' do
-# subject { super().export_options }
-# it { is_expected.to include(:format => :gtfs) }
-# end
-
-# end
+ describe "#time_zone" do
+
+ context "when exported data are not StopAreas" do
+
+ before do
+ subject.references_type = "network"
+ end
+
+ it "should be mandatory" do
+ subject.should validate_presence_of(:time_zone)
+ end
+
+ end
+
+ context "when export data are StopArea" do
+
+ before do
+ subject.references_type = "stop_area"
+ end
+
+ it "should be mandatory" do
+ subject.should_not validate_presence_of(:time_zone)
+ end
+
+ end
+
+ end
+
+end