Page MenuHomeGRNET

jobs_controller.rb
No OneTemporary

File Metadata

Created
Wed, Jun 10, 1:01 PM

jobs_controller.rb

class JobsController < ApplicationController
before_action :fetch_host, only: [:new, :edit, :show, :create, :update, :toggle_enable]
before_action :fetch_job, only: [:show, :edit, :update, :destroy, :toggle_enable]
# GET /jobs
def new
@job = @host.job_templates.new
end
# POST /jobs
def create
@job = @host.job_templates.new(fetch_params)
@restore_location = params[:job_template][:restore_location]
if @restore_location && @job.save_and_create_restore_job(@restore_location)
redirect_to host_path(@host)
else
render :new
end
end
# GET /jobs/1
def show; end
# GET /jobs/1/edit
def edit;end
# PUT /jobs/1
def update
if @job.update_attributes(fetch_params)
redirect_to host_job_path(@host, @job)
else
render :edit
end
end
# DELETE /jobs/1
def destroy
end
# PATCH /hosts/1/jobs/1/enable
def toggle_enable
@job.enabled = !@job.enabled
@job.save
redirect_to host_path(@host)
end
private
def fetch_job
@job = @host.job_templates.find(params[:id])
end
def fetch_host
@host = current_user.hosts.find(params[:host_id])
end
def fetch_params
params.require(:job_template).permit(:name, :fileset_id, :schedule_id)
end
end

Event Timeline