diff options
| -rw-r--r-- | app/assets/stylesheets/components/_referential_overview.sass | 4 | ||||
| -rw-r--r-- | app/controllers/compliance_check_messages_controller.rb | 2 | ||||
| -rw-r--r-- | app/controllers/compliance_control_sets_controller.rb | 18 | ||||
| -rw-r--r-- | app/controllers/import_messages_controller.rb | 2 | ||||
| -rw-r--r-- | app/models/merge.rb | 6 | ||||
| -rw-r--r-- | app/policies/application_policy.rb | 1 | ||||
| -rw-r--r-- | app/policies/compliance_control_set_policy.rb | 4 | ||||
| -rw-r--r-- | app/views/compliance_controls/_filters.html.slim | 4 | ||||
| -rw-r--r-- | config/breadcrumbs.rb | 2 | ||||
| -rw-r--r-- | lib/tasks/seeds.rake | 19 | 
10 files changed, 44 insertions, 18 deletions
| diff --git a/app/assets/stylesheets/components/_referential_overview.sass b/app/assets/stylesheets/components/_referential_overview.sass index 0beb8ab67..fc48411a3 100644 --- a/app/assets/stylesheets/components/_referential_overview.sass +++ b/app/assets/stylesheets/components/_referential_overview.sass @@ -22,7 +22,7 @@        box-shadow: 0 0 10px rgba(0,0,0,0.5)        z-index: 1    .time-travel -    padding-top: 4px +    padding-top: 3px      padding-bottom: 4px      a.btn:first-child        margin-right: 1px @@ -61,7 +61,7 @@          border-color: $grey          width: auto          flex: 1 1 -        padding: 4px 11px 5px +        padding: 6px 11px          .input-group-btn            right: 10px          &.togglable diff --git a/app/controllers/compliance_check_messages_controller.rb b/app/controllers/compliance_check_messages_controller.rb index 7c416584e..36745981e 100644 --- a/app/controllers/compliance_check_messages_controller.rb +++ b/app/controllers/compliance_check_messages_controller.rb @@ -7,7 +7,7 @@ class ComplianceCheckMessagesController < ChouetteController    def index      index! do |format|        format.csv { -        send_data ComplianceCheckMessageExport.new(compliance_check_messages: collection).to_csv(:col_sep => "\;", :quote_char=>'"', force_quotes: true, server_url: request.base_url) , :filename => "compliance_check_set_errors_#{line_code}_#{Time.now.to_i}.csv" +        send_data ComplianceCheckMessageExport.new(compliance_check_messages: collection).to_csv(:col_sep => "\;", :quote_char=>'"', force_quotes: true, server_url: request.base_url) , :filename => "compliance_check_set_errors_#{line_code}_#{Date.today.to_s}.csv"        }      end    end diff --git a/app/controllers/compliance_control_sets_controller.rb b/app/controllers/compliance_control_sets_controller.rb index 8f9251155..6461b38c8 100644 --- a/app/controllers/compliance_control_sets_controller.rb +++ b/app/controllers/compliance_control_sets_controller.rb @@ -36,11 +36,15 @@ class ComplianceControlSetsController < ChouetteController    private    def collection -    scope = self.ransack_period_range(scope: ComplianceControlSet.all, error_message: t('imports.filters.error_period_filter'), query: :where_updated_at_between) -    @q_for_form = scope.ransack(params[:q]) -    compliance_control_sets = @q_for_form.result -    compliance_control_sets = joins_with_associated_objects(compliance_control_sets).order(sort_column + ' ' + sort_direction) if sort_column && sort_direction -    @compliance_control_sets = compliance_control_sets.paginate(page: params[:page], per_page: 30) +    @compliance_control_sets ||= begin +      scope = end_of_association_chain.all +      scope = self.ransack_period_range(scope: scope, error_message: t('imports.filters.error_period_filter'), query: :where_updated_at_between) +      @q_for_form = scope.ransack(params[:q]) +      compliance_control_sets = @q_for_form.result +      compliance_control_sets = joins_with_associated_objects(compliance_control_sets).order(sort_column + ' ' + sort_direction) if sort_column && sort_direction +      compliance_control_sets = compliance_control_sets.paginate(page: params[:page], per_page: 30) +    end +    end    def decorate_compliance_control_sets(compliance_control_sets) @@ -82,9 +86,9 @@ class ComplianceControlSetsController < ChouetteController      case params[:sort]        when 'owner_jdc'          collection.joins("LEFT JOIN organisations ON compliance_control_sets.organisation_id = organisations.id") -      when 'control_numbers'  +      when 'control_numbers'          collection.joins("LEFT JOIN compliance_controls ON compliance_controls.compliance_control_set_id = compliance_control_sets.id").group(:id) -      else  +      else          collection      end    end diff --git a/app/controllers/import_messages_controller.rb b/app/controllers/import_messages_controller.rb index 286bb0ce8..4f8fe7a25 100644 --- a/app/controllers/import_messages_controller.rb +++ b/app/controllers/import_messages_controller.rb @@ -9,7 +9,7 @@ class ImportMessagesController < ChouetteController    def index      index! do |format|        format.csv { -        send_data ImportMessageExport.new(:import_messages => @import_messages).to_csv(:col_sep => "\;", :quote_char=>'"', force_quotes: true) , :filename => "import_errors_#{@import_resource.name.gsub('.xml', '')}_#{Time.now.to_i}.csv" +        send_data ImportMessageExport.new(:import_messages => @import_messages).to_csv(:col_sep => "\;", :quote_char=>'"', force_quotes: true) , :filename => "import_errors_#{@import_resource.name.gsub('.xml', '')}_#{Date.today.to_s}.csv"        }      end    end diff --git a/app/models/merge.rb b/app/models/merge.rb index 62bf581d6..d42d882ac 100644 --- a/app/models/merge.rb +++ b/app/models/merge.rb @@ -152,7 +152,7 @@ class Merge < ActiveRecord::Base            route_stop_points = referential_stop_points_by_route[route.id]            # Stop Points -          route_stop_points.each do |stop_point| +          route_stop_points.sort_by(&:position).each do |stop_point|              objectid = Chouette::StopPoint.where(objectid: stop_point.objectid).exists? ? nil : stop_point.objectid              attributes = stop_point.attributes.merge(                id: nil, @@ -166,7 +166,7 @@ class Merge < ActiveRecord::Base            new_route.save!            if new_route.checksum != route.checksum -            raise "Checksum has changed: #{route.inspect} #{new_route.inspect}" +            raise "Checksum has changed: \"#{route.checksum}\", \"#{route.checksum_source}\" -> \"#{new_route.checksum}\", \"#{new_route.checksum_source}\""            end          end        end @@ -221,7 +221,7 @@ class Merge < ActiveRecord::Base            new_journey_pattern = new.journey_patterns.create! attributes            if new_journey_pattern.checksum != journey_pattern.checksum -            raise "Checksum has changed for #{journey_pattern.inspect}: #{journey_pattern.checksum_source} #{new_journey_pattern.checksum_source} " +            raise "Checksum has changed for #{journey_pattern.inspect}: \"#{journey_pattern.checksum_source}\" -> \"#{new_journey_pattern.checksum_source}\""            end          end        end diff --git a/app/policies/application_policy.rb b/app/policies/application_policy.rb index c44937c9e..33d88660c 100644 --- a/app/policies/application_policy.rb +++ b/app/policies/application_policy.rb @@ -95,7 +95,6 @@ class ApplicationPolicy      referential.try(:organisation_id) || record.try(:organisation_id)    end -    #    #  Helpers    #  ------- diff --git a/app/policies/compliance_control_set_policy.rb b/app/policies/compliance_control_set_policy.rb index 011f6c0c7..55507ffd9 100644 --- a/app/policies/compliance_control_set_policy.rb +++ b/app/policies/compliance_control_set_policy.rb @@ -5,6 +5,10 @@ class ComplianceControlSetPolicy < ApplicationPolicy      end    end +  def show? +    organisation_match? +  end +    def destroy?      user.has_permission?('compliance_control_sets.destroy')    end diff --git a/app/views/compliance_controls/_filters.html.slim b/app/views/compliance_controls/_filters.html.slim index f6b9970f2..a16d2c33d 100644 --- a/app/views/compliance_controls/_filters.html.slim +++ b/app/views/compliance_controls/_filters.html.slim @@ -5,8 +5,8 @@    class: 'form form-filter' do |f|    .ffg-row -    .input-group.search_bar class=filter_item_class(params[:q], :name_cont) -      = f.search_field :name_cont, +    .input-group.search_bar class=filter_item_class(params[:q], :name_or_code_cont) +      = f.search_field :name_or_code_cont,          class: 'form-control',          placeholder: t('compliance_controls.filters.name')        span.input-group-btn diff --git a/config/breadcrumbs.rb b/config/breadcrumbs.rb index 52f22818b..adcbb0b6f 100644 --- a/config/breadcrumbs.rb +++ b/config/breadcrumbs.rb @@ -8,7 +8,7 @@ end  crumb :workbench_output do |workbench|    link I18n.t('workbench_outputs.show.title'), workbench_output_path(workbench) -  parent :workbench, current_offer_workbench +  parent :workbench, mutual_workbench(workbench)  end  crumb :merges do |workbench| diff --git a/lib/tasks/seeds.rake b/lib/tasks/seeds.rake new file mode 100644 index 000000000..9038b64f9 --- /dev/null +++ b/lib/tasks/seeds.rake @@ -0,0 +1,19 @@ +namespace :db do + +  include Seedbank::DSL + +  base_dependencies   = ['db:seed:original'] +  override_dependency = ['db:seed:common'] + +  namespace :seed do +    seeds_environment = ENV.fetch("SEED_ENV", Rails.env) +    glob_seed_files_matching('/*/').each do |directory| +      environment = File.basename(directory) +      override_dependency << "db:seed:#{environment}" if defined?(Rails) && seeds_environment == environment +    end +  end + +  # Override db:seed to run all the common and environments seeds plus the original db:seed. +  desc 'Load the seed data from db/seeds.rb, db/seeds/*.seeds.rb and db/seeds/ENVIRONMENT/*.seeds.rb. ENVIRONMENT is the env var SEED_ENV or the current environment in Rails.env.' +  override_seed_task :seed => override_dependency +end | 
