scinote-web/app/controllers/my_module_status_flow_controller.rb

27 lines
883 B
Ruby
Raw Normal View History

2020-07-22 15:45:56 +08:00
# frozen_string_literal: true
class MyModuleStatusFlowController < ApplicationController
2020-07-22 17:39:34 +08:00
before_action :load_my_module
before_action :check_view_permissions
2020-07-22 15:45:56 +08:00
def show
my_module_statuses = @my_module.my_module_status_flow
.my_module_statuses
.preload(:my_module_status_implications, next_status: :my_module_status_conditions)
.sort_by_position
render json: { html: render_to_string(partial: 'my_modules/modals/status_flow_modal_body',
2020-07-22 17:39:34 +08:00
locals: { my_module_statuses: my_module_statuses }) }
end
private
def load_my_module
@my_module = MyModule.find_by(id: params[:my_module_id])
render_404 unless @my_module
end
def check_view_permissions
render_403 unless can_read_my_module?(@my_module)
2020-07-22 15:45:56 +08:00
end
end