Class: Decidim::TimeTracker::Admin::CreateTimeTracker
- Inherits:
-
Rectify::Command
- Object
- Rectify::Command
- Decidim::TimeTracker::Admin::CreateTimeTracker
- Defined in:
- app/commands/decidim/time_tracker/admin/create_time_tracker.rb
Overview
A command with all the business logic when creating a task
Instance Attribute Summary collapse
-
#assignee_questionnaire ⇒ Object
readonly
Returns the value of attribute assignee_questionnaire.
-
#questionnaire ⇒ Object
readonly
Returns the value of attribute questionnaire.
-
#time_tracker ⇒ Object
readonly
Returns the value of attribute time_tracker.
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(component) ⇒ CreateTimeTracker
constructor
A new instance of CreateTimeTracker.
Constructor Details
#initialize(component) ⇒ CreateTimeTracker
Returns a new instance of CreateTimeTracker.
8 9 10 11 12 |
# File 'app/commands/decidim/time_tracker/admin/create_time_tracker.rb', line 8 def initialize(component) @questionnaire = Decidim::Forms::Questionnaire.new @assignee_questionnaire = Decidim::Forms::Questionnaire.new @time_tracker = Decidim::TimeTracker::TimeTracker.new(component: component, questionnaire: @questionnaire) end |
Instance Attribute Details
#assignee_questionnaire ⇒ Object (readonly)
Returns the value of attribute assignee_questionnaire.
27 28 29 |
# File 'app/commands/decidim/time_tracker/admin/create_time_tracker.rb', line 27 def assignee_questionnaire @assignee_questionnaire end |
#questionnaire ⇒ Object (readonly)
Returns the value of attribute questionnaire.
27 28 29 |
# File 'app/commands/decidim/time_tracker/admin/create_time_tracker.rb', line 27 def questionnaire @questionnaire end |
#time_tracker ⇒ Object (readonly)
Returns the value of attribute time_tracker.
27 28 29 |
# File 'app/commands/decidim/time_tracker/admin/create_time_tracker.rb', line 27 def time_tracker @time_tracker end |
Instance Method Details
#call ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'app/commands/decidim/time_tracker/admin/create_time_tracker.rb', line 14 def call begin @time_tracker.save! populate_questionnaire(Decidim::TimeTracker.default_activity_questionnaire, @questionnaire) populate_questionnaire(Decidim::TimeTracker.default_assignee_questionnaire, @assignee_questionnaire) create_assignee_data rescue StandardError return broadcast(:invalid) end broadcast(:ok) end |