Files
2026-04-22 02:15:16 +03:00

52 lines
1.0 KiB
Ruby

# frozen_string_literal: true
module ProjectAdmin
class WorkflowsController < ApplicationController
before_action :fetch_workflow, only: %w[show edit update destroy]
def index
@workflows = @project.workflows
end
def show
# TODO: add loading statuses and other things
end
def new
@workflow = @project.workflows.build
end
def create
@workflow = @project.workflows.build(workflow_params)
if @workflow.save
redirect_to project_admin_workflow_path(@project, @workflow)
else
render :new, status: :unprocessable_entity
end
end
def edit; end
def update
if @workflow.update(workflow_params)
redirect_to project_admin_workflow_path(@project, @workflow)
else
render :edit, status: :unprocessable_entity
end
end
def destroy
end
private
def fetch_workflow
@workflow = @project.workflows.find(params[:id])
end
def workflow_params
params.expect(workflow: %i[name color icon])
end
end
end