Sha256: 86a78b5e67d6fbe1ca969bd90d9b5c14af8fbeb4f0b683fdee87566f5c9e77cd

Contents?: true

Size: 1.64 KB

Versions: 83

Compression:

Stored size: 1.64 KB

Contents

require_dependency "apidae/application_controller"

module Apidae
  class SelectionsController < ApplicationController
    before_action :set_selection, only: [:show, :edit, :update, :destroy, :refresh]

    def index
      if user_is_admin?
        @selections = Selection.all
      else
        projects_ids = Project.where(apidae_id: apidae_user.apidae_projects_ids).map {|p| p.id}
        @selections = Selection.where(apidae_project_id: projects_ids)
      end
    end

    def show
    end

    def new
      @selection = Selection.new
    end

    def edit
    end

    def create
      @selection = Selection.new(selection_params)

      if @selection.save
        redirect_to @selection, notice: 'Selection was successfully created.'
      else
        render :new
      end
    end

    def update
      if @selection.update(selection_params)
        redirect_to @selection, notice: 'Selection was successfully updated.'
      else
        render :edit
      end
    end

    def destroy
      @selection.destroy
      redirect_to selections_url, notice: 'Selection was successfully destroyed.'
    end

    def refresh
      referrer = (session.delete(:referrer) || selections_url)
      if @selection && @selection.add_or_refresh_objs
        redirect_to referrer, notice: "La sélection a bien été mise à jour."
      else
        redirect_to referrer, alert: "Une erreur s'est produite lors de la mise à jour de la sélection."
      end
    end

    private
      def set_selection
        @selection = Selection.find(params[:id])
      end

      def selection_params
        params.require(:selection).permit(:label, :reference, :apidae_id)
      end
  end
end

Version data entries

83 entries across 83 versions & 1 rubygems

Version Path
apidae-2.0.3 app/controllers/apidae/selections_controller.rb
apidae-1.4.15 app/controllers/apidae/selections_controller.rb
apidae-1.4.14 app/controllers/apidae/selections_controller.rb
apidae-2.0.2 app/controllers/apidae/selections_controller.rb
apidae-2.0.1 app/controllers/apidae/selections_controller.rb
apidae-2.0.0 app/controllers/apidae/selections_controller.rb
apidae-1.4.13 app/controllers/apidae/selections_controller.rb
apidae-1.4.12 app/controllers/apidae/selections_controller.rb
apidae-1.4.11 app/controllers/apidae/selections_controller.rb
apidae-1.4.10 app/controllers/apidae/selections_controller.rb
apidae-1.4.9 app/controllers/apidae/selections_controller.rb
apidae-1.4.8 app/controllers/apidae/selections_controller.rb
apidae-1.4.7 app/controllers/apidae/selections_controller.rb
apidae-1.4.6 app/controllers/apidae/selections_controller.rb
apidae-1.4.5 app/controllers/apidae/selections_controller.rb
apidae-1.4.4 app/controllers/apidae/selections_controller.rb
apidae-1.4.3 app/controllers/apidae/selections_controller.rb
apidae-1.2.35 app/controllers/apidae/selections_controller.rb
apidae-1.2.34 app/controllers/apidae/selections_controller.rb
apidae-1.2.33 app/controllers/apidae/selections_controller.rb