Class: Decidim::TimeTracker::Admin::AssigneeQuestionnaireController

Inherits:
ApplicationController
  • Object
show all
Includes:
Forms::Admin::Concerns::HasQuestionnaire, Forms::Admin::Concerns::HasQuestionnaireAnswers
Defined in:
app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb

Instance Method Summary collapse

Instance Method Details

#after_update_urlObject



48
49
50
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 48

def after_update_url
  EngineRouter.admin_proxy(current_component).root_path
end

#allow_answers?Boolean

only allows answers if not in preview mode

Returns:

  • (Boolean)


11
12
13
14
15
16
17
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 11

def allow_answers?
  return false unless current_user

  return true if params[:action] == "preview" && current_user.admin?

  activity.allow_answers_for? current_user
end

#answer_options_url(params) ⇒ Object



52
53
54
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 52

def answer_options_url(params)
  EngineRouter.admin_proxy(current_component).answer_options_assignee_questionnaire_path(format: :json, **params)
end

#public_urlObject

URL is a custom preview path so we can take control of the answer action



44
45
46
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 44

def public_url
  EngineRouter.main_proxy(current_component).preview_assignee_questionnaire_path
end

#questionnaire_export_response_url(session_token) ⇒ Object



35
36
37
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 35

def questionnaire_export_response_url(session_token)
  export_response_assignee_questionnaire_url(session_token: session_token, format: "pdf")
end

#questionnaire_forObject



19
20
21
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 19

def questionnaire_for
  time_tracker.assignee_data
end

#questionnaire_participant_answers_url(session_token) ⇒ Object



31
32
33
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 31

def questionnaire_participant_answers_url(session_token)
  show_assignee_questionnaire_url(session_token: session_token)
end

#questionnaire_participants_urlObject



23
24
25
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 23

def questionnaire_participants_url
  index_assignee_questionnaire_url
end

#questionnaire_urlObject



27
28
29
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 27

def questionnaire_url
  assignee_questionnaire_url
end

#update_urlObject



39
40
41
# File 'app/controllers/decidim/time_tracker/admin/assignee_questionnaire_controller.rb', line 39

def update_url
  EngineRouter.admin_proxy(current_component).assignee_questionnaire_path
end