summaryrefslogtreecommitdiff
path: root/app/controllers/projects/protected_branches_controller.rb
blob: d4f7d0bc52155fc0e8f422b675d9747800b49b74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# frozen_string_literal: true

class Projects::ProtectedBranchesController < Projects::ProtectedRefsController
  protected

  def project_refs
    @project.repository.branches
  end

  def service_namespace
    ::ProtectedBranches
  end

  def load_protected_ref
    @protected_ref = @project.protected_branches.find(params[:id])
  end

  def access_levels
    [:merge_access_levels, :push_access_levels]
  end

  def protected_ref_params(*attrs)
    attrs = ([:name,
              merge_access_levels_attributes: access_level_attributes,
              push_access_levels_attributes: access_level_attributes] + attrs).uniq

    params.require(:protected_branch).permit(attrs)
  end
end

Projects::ProtectedBranchesController.prepend_if_ee('EE::Projects::ProtectedBranchesController')