Sha256: 908b102940b7d2c1a67bb0f6255eb69e88cf646ed14eb380860a50e8c9f2c0c9

Contents?: true

Size: 958 Bytes

Versions: 4

Compression:

Stored size: 958 Bytes

Contents

module AtomicAdmin
  class AtomicLtiPlatformController < ApplicationController
    def platform_params
      params.permit(:iss, :jwks_url, :token_url, :oidc_url)
    end

    def find_platform
      AtomicLti::Platform.find_by(id: params[:id])
    end

    def index
      page = AtomicLti::Platform.all.order(:id).paginate(page: params[:page], per_page: 30)

      render json: {
        platforms: page,
        page: params[:page],
        total_pages: page.total_pages
      }
    end

    def create
      platform = AtomicLti::Platform.create!(platform_params)
      render json: { platform: platform }
    end

    def show
      platform = find_platform
      render json: platform
    end

    def update
      platform = find_platform
      platform.update!(platform_params)
      render json: { platform: find_platform }
    end

    def destroy
      platform = find_platform
      platform.destroy
      render json: platform
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
atomic_admin-1.1.0 app/controllers/atomic_admin/atomic_lti_platform_controller.rb
atomic_admin-1.0.0 app/controllers/atomic_admin/atomic_lti_platform_controller.rb
atomic_admin-0.2.0 app/controllers/atomic_admin/atomic_lti_platform_controller.rb
atomic_admin-0.1.0 app/controllers/atomic_admin/atomic_lti_platform_controller.rb