Class: ResultsController

Inherits:
ApplicationController show all
Includes:
Applicat::Mvc::Controller::Resource, Wizard::Controller
Defined in:
app/controllers/results_controller.rb

Instance Method Summary collapse

Methods included from Wizard::Controller::Concerns::Paths

#next_wizard_path, #previous_wizard_path, #wizard_path

Methods included from Wizard::Controller::Concerns::Steps

#current_step?, #future_step?, #jump_to, #last_step?, #next_step, #next_step?, #past_step?, #previous_step, #previous_step?, #skip_step, #step, #wizard_resource_class_name, #wizard_step_per_state, #wizard_steps

Methods included from Applicat::Mvc::Controller::Resource

included

Methods inherited from ApplicationController

#current_ability

Methods included from Voluntary::V1::BaseController

#voluntary_application_javascripts, #voluntary_application_stylesheets

Methods included from Applicat::Mvc::Controller

included

Instance Method Details

#createObject



27
28
29
30
31
32
33
# File 'app/controllers/results_controller.rb', line 27

def create
  if @result.initialization
    redirect_to edit_result_path(@result) and return
  else
    render_wizard
  end
end

#destroyObject



62
63
64
65
66
# File 'app/controllers/results_controller.rb', line 62

def destroy
  @result = Result.find(params[:id])
  @result.destroy
  redirect_to @result.task, notice: t('general.form.destroyed')
end

#editObject



35
36
37
38
39
40
41
42
# File 'app/controllers/results_controller.rb', line 35

def edit
  if @result.results.none?
    @result.results << @result.result_class.new
    @result.results.first.errors.clear
  end
  
  render_wizard
end

#indexObject



14
15
16
17
# File 'app/controllers/results_controller.rb', line 14

def index
  parent = find_parent Result::PARENT_TYPES
  @results = parent ? parent.results : Result.all
end

#newObject



23
24
25
# File 'app/controllers/results_controller.rb', line 23

def new
  render_wizard
end

#parentObject



76
77
78
# File 'app/controllers/results_controller.rb', line 76

def parent
  @task
end

#resourceObject



68
69
70
71
72
# File 'app/controllers/results_controller.rb', line 68

def resource
  @result = Result.find(params[:id]) unless @result || !params[:id].present?
  @task = @result.task unless @task || !@result
  @result
end

#resource=(value) ⇒ Object



74
# File 'app/controllers/results_controller.rb', line 74

def resource=(value); @result = value; end

#showObject



19
20
21
# File 'app/controllers/results_controller.rb', line 19

def show
  @comments = @result.comments
end

#updateObject



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'app/controllers/results_controller.rb', line 44

def update
  @result.attributes = params[:result]
  
  # shift the first empty result set after initialization on state :initialized
  @result.results.shift if params[:next_step] == '1' && !@result.results.first.valid?
  success = params[:next_step] == '1' ? @result.send(step) : @result.save
    
  if success
    redirect_to(
      edit_result_path(@result), notice: t('general.form.successfully_updated')
    )
  else
    render_wizard
  end
  
  return
end