diff options
| author | Robert | 2017-07-20 16:58:21 +0200 | 
|---|---|---|
| committer | Robert | 2017-07-20 16:58:21 +0200 | 
| commit | f11826644ecab4aa4217e3e06115b4af396ebd50 (patch) | |
| tree | 2bd87e50d3f6e5074f107dcd131ad1afcbd62193 /app | |
| parent | a1368a9730e20b2e3a85885740e6fb7ffec435ad (diff) | |
| parent | 3fb343af351bfa4691ed3c7eb0930d9bb8d0d7ac (diff) | |
| download | chouette-core-f11826644ecab4aa4217e3e06115b4af396ebd50.tar.bz2 | |
merge conflicts resolved
Diffstat (limited to 'app')
15 files changed, 122 insertions, 48 deletions
diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/CompanySelect2.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/CompanySelect2.js index a6b8dcfa1..d277be003 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/CompanySelect2.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/CompanySelect2.js @@ -51,7 +51,7 @@ class BSelect4 extends React.Component{              },              cache: true            }, -          minimumInputLength: 3, +          minimumInputLength: 1,            templateResult: formatRepo          }}        /> diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/MissionSelect2.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/MissionSelect2.js index 89746da02..c04a1d642 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/MissionSelect2.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/MissionSelect2.js @@ -43,14 +43,14 @@ class BSelect4 extends React.Component{                    item => _.assign(                      {},                      item, -                    { text: '<strong>' + _.last(_.split(item.object_id, ':')) + " - " + item.published_name + "</strong><br/><small>" + item.registration_number + "</small>" } +                    { text: "<strong>" + item.published_name + _.last(_.split(item.object_id, ':')) + "</strong><br/><small>" + item.registration_number + "</small>" }                    )                  )                };              },              cache: true            }, -          minimumInputLength: 0, +          minimumInputLength: 1,            escapeMarkup: function (markup) { return markup; },            templateResult: formatRepo          }} diff --git a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/TimetableSelect2.js b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/TimetableSelect2.js index dd098053e..3e81290f5 100644 --- a/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/TimetableSelect2.js +++ b/app/assets/javascripts/es6_browserified/vehicle_journeys/components/tools/select2s/TimetableSelect2.js @@ -43,14 +43,14 @@ class BSelect4 extends React.Component{                    item => _.assign(                      {},                      item, -                    {text: '<strong>' + item.short_id + ' - ' + (item.color ? "<span class='fa fa-circle' style='color:" + item.color + "'></span> - " : '') + item.comment + '</strong><br/><small>' + item.day_types.match(/[A-Z]?[a-z]+/g).join(', ') + '</small>'} +                    {text: '<strong>' + (item.color ? "<span class='fa fa-circle' style='color:" + item.color + "'></span> " : '') + item.comment + ' - ' + item.short_id + '</strong><br/><small>' + item.day_types.match(/[A-Z]?[a-z]+/g).join(', ') + '</small>'}                    )                  )                };              },              cache: true            }, -          minimumInputLength: 3, +          minimumInputLength: 1,            escapeMarkup: function (markup) { return markup; },            templateResult: formatRepo          }} diff --git a/app/assets/stylesheets/components/_select2.sass b/app/assets/stylesheets/components/_select2.sass index 960e8b10b..332af16cd 100644 --- a/app/assets/stylesheets/components/_select2.sass +++ b/app/assets/stylesheets/components/_select2.sass @@ -7,6 +7,10 @@  //   .select2-results__message, .loading-results  //     display: none +.select2-container, .select2-container--bootstrap +  .select2-selection--single .select2-selection__rendered +    height: 100% +  .select2-selection__placeholder    color: rgba($grey, 0.65)    font-style: italic diff --git a/app/controllers/api/v1/netex_imports_controller.rb b/app/controllers/api/v1/netex_imports_controller.rb new file mode 100644 index 000000000..16a7cef69 --- /dev/null +++ b/app/controllers/api/v1/netex_imports_controller.rb @@ -0,0 +1,26 @@ +module Api +  module V1 +    class NetexImportsController < ChouetteController + +      def create +        respond_to do | format | +          format.json do  +            @import = NetexImport.create(netex_import_params) +            unless @import.valid? +              render json: {errors: @import.errors}, status: 406 +            end +          end +        end +      end + + +      private + +      def netex_import_params +        params +          .require('netex_import') +          .permit(:file, :name, :referential_id) +      end +    end +  end +end diff --git a/app/controllers/companies_controller.rb b/app/controllers/companies_controller.rb index 07a732fc9..cf27c39cf 100644 --- a/app/controllers/companies_controller.rb +++ b/app/controllers/companies_controller.rb @@ -16,14 +16,13 @@ class CompaniesController < BreadcrumbController            redirect_to params.merge(:page => 1)          end -        @companies = ModelDecorator.decorate( -          @companies, -          with: CompanyDecorator, -          context: { -            referential: line_referential -          } -        ) +        @companies = decorate_companies(@companies)        } + +      format.json { +        @companies = decorate_companies(@companies) +      } +        build_breadcrumb :index      end    end @@ -77,4 +76,14 @@ class CompaniesController < BreadcrumbController      %w[asc desc].include?(params[:direction]) ?  params[:direction] : 'asc'    end +  def decorate_companies(companies) +    ModelDecorator.decorate( +      companies, +      with: CompanyDecorator, +      context: { +        referential: line_referential +      } +    ) +  end +  end diff --git a/app/controllers/import_tasks_controller.rb b/app/controllers/import_tasks_controller.rb index 0e3ed6445..cb377ec5a 100644 --- a/app/controllers/import_tasks_controller.rb +++ b/app/controllers/import_tasks_controller.rb @@ -1,4 +1,3 @@ -# coding: utf-8  class ImportTasksController < ChouetteController    defaults :resource_class => ImportTask diff --git a/app/controllers/networks_controller.rb b/app/controllers/networks_controller.rb index d1f83340e..5dae1ba3f 100644 --- a/app/controllers/networks_controller.rb +++ b/app/controllers/networks_controller.rb @@ -37,14 +37,13 @@ class NetworksController < BreadcrumbController            redirect_to params.merge(:page => 1)          end -        @networks = ModelDecorator.decorate( -          @networks, -          with: NetworkDecorator, -          context: { -            line_referential: line_referential -          } -        ) +        @networks = decorate_networks(@networks)        } + +      format.js { +        @networks = decorate_networks(@networks) +      } +        build_breadcrumb :index      end    end @@ -87,4 +86,14 @@ class NetworksController < BreadcrumbController      %w[asc desc].include?(params[:direction]) ?  params[:direction] : 'asc'    end +  def decorate_networks(networks) +    ModelDecorator.decorate( +      networks, +      with: NetworkDecorator, +      context: { +        line_referential: line_referential +      } +    ) +  end +  end diff --git a/app/controllers/referential_companies_controller.rb b/app/controllers/referential_companies_controller.rb index 53dde93bb..482f74ea0 100644 --- a/app/controllers/referential_companies_controller.rb +++ b/app/controllers/referential_companies_controller.rb @@ -14,14 +14,13 @@ class ReferentialCompaniesController < ChouetteController            redirect_to params.merge(:page => 1)          end -        @companies = ModelDecorator.decorate( -          @companies, -          with: CompanyDecorator, -          context: { -            referential: referential -          } -        ) +        @companies = decorate_companies(@companies)        } + +      format.js { +        @companies = decorate_companies(@companies) +      } +        build_breadcrumb :index      end    end @@ -70,4 +69,14 @@ class ReferentialCompaniesController < ChouetteController      %w[asc desc].include?(params[:direction]) ?  params[:direction] : 'asc'    end +  def decorate_companies(companies) +    ModelDecorator.decorate( +      companies, +      with: CompanyDecorator, +      context: { +        referential: referential +      } +    ) +  end +  end diff --git a/app/controllers/referential_networks_controller.rb b/app/controllers/referential_networks_controller.rb index e0ce71ce4..ee2db8008 100644 --- a/app/controllers/referential_networks_controller.rb +++ b/app/controllers/referential_networks_controller.rb @@ -30,14 +30,13 @@ class ReferentialNetworksController < ChouetteController            redirect_to params.merge(:page => 1)          end -        @networks = ModelDecorator.decorate( -          @networks, -          with: ReferentialNetworkDecorator, -          context: { -            referential: referential -          } -        ) +        @networks = decorate_networks(@networks)        } + +      format.js { +        @networks = decorate_networks(@networks) +      } +        build_breadcrumb :index      end    end @@ -81,4 +80,14 @@ class ReferentialNetworksController < ChouetteController      %w[asc desc].include?(params[:direction]) ?  params[:direction] : 'asc'    end +  def decorate_networks(networks) +    ModelDecorator.decorate( +      networks, +      with: ReferentialNetworkDecorator, +      context: { +        referential: referential +      } +    ) +  end +  end diff --git a/app/controllers/time_tables_controller.rb b/app/controllers/time_tables_controller.rb index 20d500ea9..edeb5a32f 100644 --- a/app/controllers/time_tables_controller.rb +++ b/app/controllers/time_tables_controller.rb @@ -37,7 +37,7 @@ class TimeTablesController < ChouetteController      tt_params = time_table_params      if tt_params[:calendar_id]        %i(monday tuesday wednesday thursday friday saturday sunday).map { |d| tt_params[d] = true } -      calendar = current_organisation.calendars.find_by_id(tt_params[:calendar_id]) +      calendar = Calendar.find(tt_params[:calendar_id])        tt_params[:calendar_id] = nil if tt_params.has_key?(:dates_attributes) || tt_params.has_key?(:periods_attributes)      end @@ -86,16 +86,14 @@ class TimeTablesController < ChouetteController            redirect_to params.merge(:page => 1)          end -        @time_tables = ModelDecorator.decorate( -          @time_tables, -          with: TimeTableDecorator, -          context: { -            referential: @referential -          } -        ) +        @time_tables = decorate_time_tables(@time_tables)          build_breadcrumb :index        } + +      format.js { +        @time_tables = decorate_time_tables(@time_tables) +      }      end    end @@ -195,6 +193,16 @@ class TimeTablesController < ChouetteController      Chouette::TimeTable.find(from_id) if from_id    end +  def decorate_time_tables(time_tables) +    ModelDecorator.decorate( +      time_tables, +      with: TimeTableDecorator, +      context: { +        referential: @referential +      } +    ) +  end +    def time_table_params      params.require(:time_table).permit(        :objectid, diff --git a/app/models/import.rb b/app/models/import.rb index 1a5062e2a..3d276c4ae 100644 --- a/app/models/import.rb +++ b/app/models/import.rb @@ -3,6 +3,8 @@ class Import < ActiveRecord::Base    belongs_to :workbench    belongs_to :referential +  belongs_to :parent, class_name: to_s +    extend Enumerize    enumerize :status, in: %i(new downloading analyzing pending successful failed running aborted canceled) diff --git a/app/models/netex_import.rb b/app/models/netex_import.rb index de5b84537..0cf4d0a7c 100644 --- a/app/models/netex_import.rb +++ b/app/models/netex_import.rb @@ -7,7 +7,7 @@ class NetexImport < Import      begin        Net::HTTP.get(URI("#{Rails.configuration.iev_url}/boiv_iev/referentials/importer/new?id=#{id}"))      rescue Exception => e -      logger.error "IEV server error : e.message" +      logger.error "IEV server error : #{e.message}"        logger.error e.backtrace.inspect      end    end diff --git a/app/policies/referential_policy.rb b/app/policies/referential_policy.rb index 9d0a92093..fdc80516c 100644 --- a/app/policies/referential_policy.rb +++ b/app/policies/referential_policy.rb @@ -20,7 +20,7 @@ class ReferentialPolicy < ApplicationPolicy    def clone? -    !archived? && organisation_match? && create? +    !archived? && create?    end    def archive? @@ -37,7 +37,3 @@ class ReferentialPolicy < ApplicationPolicy    end  end - - - - diff --git a/app/views/api/v1/netex_imports/create.json.rabl b/app/views/api/v1/netex_imports/create.json.rabl new file mode 100644 index 000000000..1361cdb80 --- /dev/null +++ b/app/views/api/v1/netex_imports/create.json.rabl @@ -0,0 +1,3 @@ + +object @import +attributes :id, :type  | 
