FarmBot/Farmbot-Web-App

View on GitHub
app/controllers/api/sequence_versions_controller.rb

Summary

Maintainability
A
0 mins
Test Coverage
module Api
  # Unfortunately, there was a naming collision between Rails
  # and the Api::AbstractController (`Fragments` is a part of
  # Rails)
  ShowFragment = Fragments::Show

  class SequenceVersionsController < Api::AbstractController
    def show
      celery = ShowFragment.run!(owner: sequence_version)
      render json: version_meta.merge(celery)
    end

    private

    def version_meta
      {
        id: sequence_version.id,
        created_at: sequence_version.created_at,
        description: sequence_version.description,
        copyright: sequence_version.copyright,
        name: sequence_version.name,
        color: sequence_version.color,
      }
    end

    def sequence_version
      @sequence_version ||= SequenceVersion.find(params[:id])
    end
  end
end