2014-05-22 07:38:48 -04:00
|
|
|
module BranchesHelper
|
|
|
|
def can_remove_branch?(project, branch_name)
|
2014-06-02 09:18:16 -04:00
|
|
|
if project.protected_branch? branch_name
|
|
|
|
false
|
|
|
|
elsif branch_name == project.repository.root_ref
|
|
|
|
false
|
|
|
|
else
|
|
|
|
can?(current_user, :push_code, project)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def can_push_branch?(project, branch_name)
|
2016-06-20 09:38:54 -04:00
|
|
|
return false unless project.repository.branch_exists?(branch_name)
|
2015-12-08 10:42:10 -05:00
|
|
|
|
2016-06-30 17:01:49 -04:00
|
|
|
::Gitlab::GitAccess.new(current_user, project, 'web').can_push_to_branch?(branch_name)
|
2014-05-22 07:38:48 -04:00
|
|
|
end
|
2016-06-10 11:43:25 -04:00
|
|
|
|
|
|
|
def project_branches
|
|
|
|
options_for_select(@project.repository.branch_names, @project.default_branch)
|
|
|
|
end
|
2014-05-22 07:38:48 -04:00
|
|
|
end
|