diff options
| author | cedricnjanga | 2017-09-28 16:57:01 +0200 | 
|---|---|---|
| committer | cedricnjanga | 2017-09-28 18:15:01 +0200 | 
| commit | 40c8df4c8594f13176d1ab58d972e40e0d6695a2 (patch) | |
| tree | d78428ce8985883d8d9a9010017668082aabff43 | |
| parent | 0d12e059377f4fde0fc67d31e8a0dbbe10b8e914 (diff) | |
| download | chouette-core-40c8df4c8594f13176d1ab58d972e40e0d6695a2.tar.bz2 | |
Refs #4634 Create ComplianceControlBlocksController and adapt models
| -rw-r--r-- | app/controllers/compliance_control_blocks_controller.rb | 36 | ||||
| -rw-r--r-- | app/models/compliance_control_set.rb | 1 | ||||
| -rw-r--r-- | app/views/compliance_control_blocks/_form.html.slim | 9 | ||||
| -rw-r--r-- | app/views/compliance_control_blocks/edit.html.slim | 11 | ||||
| -rw-r--r-- | app/views/compliance_control_blocks/new.html.slim | 11 | ||||
| -rw-r--r-- | config/locales/compliance_control_blocks.en.yml | 15 | ||||
| -rw-r--r-- | config/locales/compliance_control_blocks.fr.yml | 15 | ||||
| -rw-r--r-- | config/routes.rb | 1 | 
8 files changed, 99 insertions, 0 deletions
| diff --git a/app/controllers/compliance_control_blocks_controller.rb b/app/controllers/compliance_control_blocks_controller.rb new file mode 100644 index 000000000..cce074e46 --- /dev/null +++ b/app/controllers/compliance_control_blocks_controller.rb @@ -0,0 +1,36 @@ +class ComplianceControlBlocksController < BreadcrumbController +  defaults resource_class: ComplianceControlBlock +  belongs_to :compliance_control_set + +  def new +    @compliance_control_set = parent +    @compliance_control_block = ComplianceControlBlock.new(compliance_control_set: @compliance_control_set) +  end + +  def create +    create! do |success, failure| +      success.html { redirect_to compliance_control_set_path(@compliance_control_set) }   +      failure.html { render :action => :new } +    end +  end + +  def update +    update! do |success, failure| +      success.html { redirect_to compliance_control_set_path(@compliance_control_set) }   +      failure.html { render :action => :edit } +    end  +  end + +  private + +  def create_resource compliance_control_block +    binding.pry +    compliance_control_block.transport_mode = params[:compliance_control_block][:transport_mode] +    super +  end + +  def compliance_control_block_params +    params.require(:compliance_control_block).permit(:transport_mode) +  end + +end
\ No newline at end of file diff --git a/app/models/compliance_control_set.rb b/app/models/compliance_control_set.rb index f8f491cba..40e269146 100644 --- a/app/models/compliance_control_set.rb +++ b/app/models/compliance_control_set.rb @@ -1,5 +1,6 @@  class ComplianceControlSet < ActiveRecord::Base    belongs_to :organisation +  has_many :compliance_control_blocks, dependent: :destroy    has_many :compliance_controls, dependent: :destroy    validates :name, presence: true diff --git a/app/views/compliance_control_blocks/_form.html.slim b/app/views/compliance_control_blocks/_form.html.slim new file mode 100644 index 000000000..b20b5d0cc --- /dev/null +++ b/app/views/compliance_control_blocks/_form.html.slim @@ -0,0 +1,9 @@ += simple_form_for [@compliance_control_set, @compliance_control_block], html: { class: 'form-horizontal', id: 'compliance_control_block_form' }, wrapper: :horizontal_form do |f| +  .row +    .col-lg-12 +      = f.input :transport_mode, as: :select, collection: ComplianceControlBlock.transport_modes +      / = f.input :sub_transport_mode + +  .separator + +  = f.button :submit, t('actions.submit'), class: 'btn btn-default formSubmitr', form: 'compliance_control_block_form' diff --git a/app/views/compliance_control_blocks/edit.html.slim b/app/views/compliance_control_blocks/edit.html.slim new file mode 100644 index 000000000..fbd42e7f3 --- /dev/null +++ b/app/views/compliance_control_blocks/edit.html.slim @@ -0,0 +1,11 @@ +/ PageHeader += pageheader 'modele-calendrier', +        t('compliance_control_blocks.edit.title') + + +/ PageContent +.page_content +  .container-fluid +    .row +      .col-lg-8.col-lg-offset-2.col-md-8.col-md-offset-2.col-sm-10.col-sm-offset-1 +        = render 'form'
\ No newline at end of file diff --git a/app/views/compliance_control_blocks/new.html.slim b/app/views/compliance_control_blocks/new.html.slim new file mode 100644 index 000000000..654a0dc7f --- /dev/null +++ b/app/views/compliance_control_blocks/new.html.slim @@ -0,0 +1,11 @@ +/ PageHeader += pageheader 'modele-calendrier', +        t('compliance_control_blocks.new.title') + + +/ PageContent +.page_content +  .container-fluid +    .row +      .col-lg-8.col-lg-offset-2.col-md-8.col-md-offset-2.col-sm-10.col-sm-offset-1 +        = render 'form'
\ No newline at end of file diff --git a/config/locales/compliance_control_blocks.en.yml b/config/locales/compliance_control_blocks.en.yml new file mode 100644 index 000000000..8d5667df4 --- /dev/null +++ b/config/locales/compliance_control_blocks.en.yml @@ -0,0 +1,15 @@ +fr: +  activerecord: +    models: +      compliance_control_blocks: Control blocks +    attributes: +      compliance_control_blocks: +        transport_mode: Transport mode +        sub_transport_mode: Transport submode +  compliance_control_blocks: +    actions: +      destroy_confirm: Are you sure you want to destroy this block ? +    new: +      title: Create a control block +    edit: +      title: "Edit the control block : %{compliance_control_block}"
\ No newline at end of file diff --git a/config/locales/compliance_control_blocks.fr.yml b/config/locales/compliance_control_blocks.fr.yml new file mode 100644 index 000000000..beb2497b2 --- /dev/null +++ b/config/locales/compliance_control_blocks.fr.yml @@ -0,0 +1,15 @@ +fr: +  activerecord: +    models: +      compliance_control_blocks: Groupes de contrôles +    attributes: +      compliance_control_blocks: +        transport_mode: Mode de transport +        sub_transport_mode: Sous-mode de transport +  compliance_control_blocks: +    actions: +      destroy_confirm: Etes vous sûr de supprimer ce bloc ? +    new: +      title: Créer un groupe de contrôle(s) +    edit: +      title: "Editer le groupe de contrôle : %{compliance_control_block}"
\ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index 88dd5a4bc..cc3896da9 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -75,6 +75,7 @@ ChouetteIhm::Application.routes.draw do      resources :compliance_controls, except: :index do        get :select_type, on: :collection      end +    resources :compliance_control_blocks, :except => [:show, :index]    end    resources :stop_area_referentials, :only => [:show] do | 
