Class: Decidim::TimeTracker::MilestonesController

Inherits:
ApplicationController show all
Includes:
FormFactory, ApplicationHelper
Defined in:
app/controllers/decidim/time_tracker/milestones_controller.rb

Instance Method Summary collapse

Methods included from ApplicationHelper

#activities_empty?, #activities_label, #assignation_date, #assignation_status_label, #assignations_label, #clockify_seconds, #milestones_label, #milestones_path, #must_fill_in_data?, #tasks_label, #time_events_label, #user_joined_at, #user_last_milestone, #user_total_time_dedicated

Instance Method Details

#createObject

creates a milestone



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'app/controllers/decidim/time_tracker/milestones_controller.rb', line 18

def create
  enforce_permission_to :create, :milestone, activity: activity

  @form = form(MilestoneForm).from_params(milestone_params)

  CreateMilestone.call(@form, current_user) do
    on(:ok) do |_milestone|
      flash[:notice] = I18n.t("milestones.create.success", scope: "decidim.time_tracker")
      redirect_to milestones_path(nickname: current_user.nickname)
    end
    on(:invalid) do |_message|
      flash[:alert] = I18n.t("milestones.create.error", scope: "decidim.time_tracker")
      redirect_to root_path
    end
  end
end

#indexObject



11
12
13
14
15
# File 'app/controllers/decidim/time_tracker/milestones_controller.rb', line 11

def index
  return redirect_to root_path if user.blank?

  enforce_permission_to :index, :milestones, user: user
end