diff options
| author | Luc Donnet | 2015-05-18 16:53:04 +0200 |
|---|---|---|
| committer | Luc Donnet | 2015-05-18 16:53:04 +0200 |
| commit | 8199c5d98595aa71f0305a3e033ca7f5a209fefe (patch) | |
| tree | 18ed5c84b115f19a8d4a6da09909790ddf134cdb | |
| parent | b3a4f0c5cde9427fafef30a56f8e016d40bad4fb (diff) | |
| download | chouette-core-8199c5d98595aa71f0305a3e033ca7f5a209fefe.tar.bz2 | |
Fix modules concern and export task validation
| -rw-r--r-- | app/controllers/export_tasks_controller.rb | 61 | ||||
| -rw-r--r-- | app/models/compliance_check.rb | 4 | ||||
| -rw-r--r-- | app/models/compliance_check_report.rb | 4 | ||||
| -rw-r--r-- | app/models/concerns/job_concern.rb | 10 | ||||
| -rw-r--r-- | app/models/concerns/report_concern.rb | 4 | ||||
| -rw-r--r-- | app/models/export.rb | 4 | ||||
| -rw-r--r-- | app/models/export_report.rb | 4 | ||||
| -rw-r--r-- | app/models/export_task.rb | 4 | ||||
| -rw-r--r-- | app/models/import.rb | 4 | ||||
| -rw-r--r-- | app/models/import_report.rb | 4 | ||||
| -rw-r--r-- | app/views/export_tasks/new.html.erb | 4 | ||||
| -rw-r--r-- | app/views/export_tasks/new.js.coffee | 2 |
12 files changed, 65 insertions, 44 deletions
diff --git a/app/controllers/export_tasks_controller.rb b/app/controllers/export_tasks_controller.rb index ba5104342..94312cd6a 100644 --- a/app/controllers/export_tasks_controller.rb +++ b/app/controllers/export_tasks_controller.rb @@ -42,36 +42,45 @@ class ExportTasksController < ChouetteController protected def available_exports - @available_exports ||= [ - NeptuneExport.new(:referential_id => @referential.id ), - NetexExport.new(:referential_id => @referential.id ), - GtfsExport.new(:referential_id => @referential.id ), - HubExport.new(:referential_id => @referential.id ), - KmlExport.new(:referential_id => @referential.id ) - ] - end - - def build_resource export_task_parameters = params[:export_task] - if export_task_parameters.present? - case export_task_parameters[:data_format] - when "neptune" - @export_task = NeptuneExport.new(export_task_parameters) - when "netex" - @export_task = NetexExport.new(export_task_parameters) - when "gtfs" - @export_task = GtfsExport.new(export_task_parameters) - when "hub" - @export_task = HubExport.new(export_task_parameters) - when "kml" - @export_task = KmlExport.new(export_task_parameters) - else - @export_task = nil - end + @available_exports = [ + export_task_parameters[:data_format] == "neptune" ? build_resource : NeptuneExport.new(:referential_id => @referential.id ), + export_task_parameters[:data_format] == "netex" ? build_resource : NetexExport.new(:referential_id => @referential.id ), + export_task_parameters[:data_format] == "gtfs" ? build_resource : GtfsExport.new(:referential_id => @referential.id ), + export_task_parameters[:data_format] == "hub" ? build_resource : HubExport.new(:referential_id => @referential.id ), + export_task_parameters[:data_format] == "kml" ? build_resource : KmlExport.new(:referential_id => @referential.id ) + ] else - @export_task = nil + @available_exports = [ + NeptuneExport.new(:referential_id => @referential.id ), + NetexExport.new(:referential_id => @referential.id ), + GtfsExport.new(:referential_id => @referential.id ), + HubExport.new(:referential_id => @referential.id ), + KmlExport.new(:referential_id => @referential.id ) + ] end end + + def build_resource + @export_task ||= if params[:export_task].present? + export_task_parameters = params[:export_task] + case export_task_parameters[:data_format] + when "neptune" + NeptuneExport.new(export_task_parameters) + when "netex" + NetexExport.new(export_task_parameters) + when "gtfs" + GtfsExport.new(export_task_parameters) + when "hub" + HubExport.new(export_task_parameters) + when "kml" + KmlExport.new(export_task_parameters) + end + else + NeptuneExport.new + end + + end end diff --git a/app/models/compliance_check.rb b/app/models/compliance_check.rb index 110433a8c..714c183d7 100644 --- a/app/models/compliance_check.rb +++ b/app/models/compliance_check.rb @@ -1,6 +1,10 @@ class ComplianceCheck include JobConcern + def initialize( response ) + @datas = response + end + def report? links["action_report"].present? end diff --git a/app/models/compliance_check_report.rb b/app/models/compliance_check_report.rb index 2c2da6452..94deb8cc9 100644 --- a/app/models/compliance_check_report.rb +++ b/app/models/compliance_check_report.rb @@ -1,5 +1,9 @@ class ComplianceCheckReport include ReportConcern + + def initialize( response ) + @datas = response.action_report + end end diff --git a/app/models/concerns/job_concern.rb b/app/models/concerns/job_concern.rb index a17b039b4..2578d33bf 100644 --- a/app/models/concerns/job_concern.rb +++ b/app/models/concerns/job_concern.rb @@ -11,10 +11,6 @@ module JobConcern module ClassMethods end - def initialize( response ) - @datas = response - end - def links {}.tap do |links| datas.links.each do |link| @@ -23,12 +19,6 @@ module JobConcern end end - def failure? - end - - def failure - end - def started? status == "started" end diff --git a/app/models/concerns/report_concern.rb b/app/models/concerns/report_concern.rb index 7d3efff24..af37e3d03 100644 --- a/app/models/concerns/report_concern.rb +++ b/app/models/concerns/report_concern.rb @@ -10,10 +10,6 @@ module ReportConcern module ClassMethods end - - def initialize( response ) - @datas = response.action_report - end def current_level datas.progression.current_step if datas.progression diff --git a/app/models/export.rb b/app/models/export.rb index c3895ffc5..fc627e9f0 100644 --- a/app/models/export.rb +++ b/app/models/export.rb @@ -1,6 +1,10 @@ class Export include JobConcern + def initialize( response ) + @datas = response + end + def report? links["action_report"].present? end diff --git a/app/models/export_report.rb b/app/models/export_report.rb index 9fd7974c2..ef54f40ea 100644 --- a/app/models/export_report.rb +++ b/app/models/export_report.rb @@ -1,5 +1,9 @@ class ExportReport include ReportConcern + + def initialize( response ) + @datas = response.action_report + end end diff --git a/app/models/export_task.rb b/app/models/export_task.rb index a00b4e4ae..cb808d493 100644 --- a/app/models/export_task.rb +++ b/app/models/export_task.rb @@ -32,7 +32,9 @@ class ExportTask end def save - if valid? + puts self.errors.inspect + puts self.errors.size + if self.valid? # Call Iev Server begin Ievkit.create_job( referential.slug, "exporter", data_format, { diff --git a/app/models/import.rb b/app/models/import.rb index 2a3ee18db..77a566680 100644 --- a/app/models/import.rb +++ b/app/models/import.rb @@ -3,6 +3,10 @@ require 'open-uri' class Import include JobConcern + def initialize( response ) + @datas = response + end + def report? links["action_report"].present? end diff --git a/app/models/import_report.rb b/app/models/import_report.rb index 42baf8c00..1dc556e1c 100644 --- a/app/models/import_report.rb +++ b/app/models/import_report.rb @@ -1,5 +1,9 @@ class ImportReport include ReportConcern + + def initialize( response ) + @datas = response.action_report + end end diff --git a/app/views/export_tasks/new.html.erb b/app/views/export_tasks/new.html.erb index 6cb34665f..b97201f2e 100644 --- a/app/views/export_tasks/new.html.erb +++ b/app/views/export_tasks/new.html.erb @@ -1,14 +1,14 @@ <%= title_tag t(".title") %> <ul class="nav nav-pills"> <% ExportTask.data_formats.each do |format| %> - <li role="presentation"><a href="#<%= format %>" class="<%= format %>" title='<%= t(:"enumerize.data_format_detail.#{format}")%>' data-toggle="tab"><%= t(:"enumerize.data_format.#{format}") %></a></li> + <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> <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 %> diff --git a/app/views/export_tasks/new.js.coffee b/app/views/export_tasks/new.js.coffee index 21eba2e05..dd0e284a5 100644 --- a/app/views/export_tasks/new.js.coffee +++ b/app/views/export_tasks/new.js.coffee @@ -1,2 +1,2 @@ jQuery -> - $('#workspace.export_tasks .nav a:first').tab('show') + $('#workspace.export_tasks .nav a.active').tab('show') |
