diff options
| author | Xinhui | 2016-10-20 11:59:31 +0200 | 
|---|---|---|
| committer | Xinhui | 2016-10-20 11:59:31 +0200 | 
| commit | 14c0e5d6960f69bfc228c7390b3af9eb674724f6 (patch) | |
| tree | 2a21af7efaf6e9e66404f388a5cd690be4c62d61 | |
| parent | 3416c562e3b139594b7cd267cf32f03b3982fcc0 (diff) | |
| download | chouette-core-14c0e5d6960f69bfc228c7390b3af9eb674724f6.tar.bz2 | |
Set referential_metadata periodes as array + templating form
Refs #1782
| -rw-r--r-- | app/controllers/referentials_controller.rb | 5 | ||||
| -rw-r--r-- | app/models/chouette/line.rb | 2 | ||||
| -rw-r--r-- | app/models/referential.rb | 10 | ||||
| -rw-r--r-- | app/views/referentials/_form.html.slim | 7 | ||||
| -rw-r--r-- | db/migrate/20161020093344_change_periode_from_referential_metadata.rb | 10 | ||||
| -rw-r--r-- | db/schema.rb | 4 | 
6 files changed, 29 insertions, 9 deletions
| diff --git a/app/controllers/referentials_controller.rb b/app/controllers/referentials_controller.rb index 28a95c784..4ffb6ad65 100644 --- a/app/controllers/referentials_controller.rb +++ b/app/controllers/referentials_controller.rb @@ -73,8 +73,9 @@ class ReferentialsController < BreadcrumbController        :organisation_id,        :projection_type,        :data_format, -      :archived_at +      :archived_at, +      referential_metadata_attributes: [:referential_source_id, :line_ids => []]      )    end -end
\ No newline at end of file +end diff --git a/app/models/chouette/line.rb b/app/models/chouette/line.rb index f2e3a2b08..c3a867caa 100644 --- a/app/models/chouette/line.rb +++ b/app/models/chouette/line.rb @@ -18,8 +18,6 @@ class Chouette::Line < Chouette::ActiveRecord    has_many :footnotes, :inverse_of => :line, :validate => :true, :dependent => :destroy    accepts_nested_attributes_for :footnotes, :reject_if => :all_blank, :allow_destroy => true -  belongs_to_array_in_many :referential_metadatas -    attr_reader :group_of_line_tokens    attr_accessor :transport_mode diff --git a/app/models/referential.rb b/app/models/referential.rb index f8f8961ff..9612b1022 100644 --- a/app/models/referential.rb +++ b/app/models/referential.rb @@ -28,11 +28,14 @@ class Referential < ActiveRecord::Base    belongs_to :line_referential    validates_presence_of :line_referential +    has_many :lines, through: :line_referential    has_many :companies, through: :line_referential    has_many :group_of_lines, through: :line_referential    has_many :networks, through: :line_referential -  has_many :referential_metadatas + +  has_one :referential_metadata +  accepts_nested_attributes_for :referential_metadata    belongs_to :stop_area_referential    validates_presence_of :stop_area_referential @@ -145,6 +148,11 @@ class Referential < ActiveRecord::Base      projection_type || ""    end +  after_create :autocreate_referential_metadata +  def autocreate_referential_metadata +    self.create_referential_metadata if workbench +  end +    before_create :create_schema    def create_schema      Apartment::Tenant.create slug diff --git a/app/views/referentials/_form.html.slim b/app/views/referentials/_form.html.slim index 985fee4b4..dd426f426 100644 --- a/app/views/referentials/_form.html.slim +++ b/app/views/referentials/_form.html.slim @@ -1,7 +1,7 @@  = semantic_form_for @referential, class: 'form-horizontal' do |form|    = form.inputs do      = form.input :name -     +      - if @referential.new_record?        = form.input :slug, :input_html => { title: t("formtastic.titles.referential.slug") }      - else @@ -16,6 +16,9 @@      = form.input :lower_corner, input_html: { title: t("formtastic.titles.referential.lower_corner") }      = form.input :data_format, label: true, include_blank: false +    = form.inputs for: [:referential_metadata, @referential.referential_metadata] do |meta| +      = meta.inputs :referential_source +    = form.actions do      = form.action :submit, as: :button -    = form.action :cancel, as: :link
\ No newline at end of file +    = form.action :cancel, as: :link diff --git a/db/migrate/20161020093344_change_periode_from_referential_metadata.rb b/db/migrate/20161020093344_change_periode_from_referential_metadata.rb new file mode 100644 index 000000000..fd06a261a --- /dev/null +++ b/db/migrate/20161020093344_change_periode_from_referential_metadata.rb @@ -0,0 +1,10 @@ +class ChangePeriodeFromReferentialMetadata < ActiveRecord::Migration +  def up +    change_column :referential_metadata, :periode, :daterange, array: true +    rename_column :referential_metadata, :periode, :periodes +  end + +  def down +    rename_column :referential_metadata, :periodes, :periode +  end +end diff --git a/db/schema.rb b/db/schema.rb index 8bb6cf986..d81ec3c1f 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@  #  # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20161019090255) do +ActiveRecord::Schema.define(version: 20161020093344) do    # These are extensions that must be enabled in order to support this database    enable_extension "plpgsql" @@ -379,7 +379,7 @@ ActiveRecord::Schema.define(version: 20161019090255) do    create_table "referential_metadata", force: true do |t|      t.integer   "referential_id" -    t.daterange "periode" +    t.daterange "periodes",              array: true      t.integer   "line_ids",              array: true      t.integer   "referential_source_id"      t.datetime  "created_at" | 
