|
|
@ -37,8 +37,8 @@ class RepositoriesController < ApplicationController
|
|
|
|
accept_rss_auth :revisions
|
|
|
|
accept_rss_auth :revisions
|
|
|
|
# hidden repositories filter // 隐藏代码过滤器
|
|
|
|
# hidden repositories filter // 隐藏代码过滤器
|
|
|
|
before_filter :check_hidden_repo, :only => [:show, :stats, :revisions, :revision, :diff ]
|
|
|
|
before_filter :check_hidden_repo, :only => [:show, :stats, :revisions, :revision, :diff ]
|
|
|
|
helper :repositories
|
|
|
|
|
|
|
|
include RepositoriesHelper
|
|
|
|
include RepositoriesHelper
|
|
|
|
|
|
|
|
helper :repositories
|
|
|
|
include GitlabHelper
|
|
|
|
include GitlabHelper
|
|
|
|
#@root_path = RepositoriesHelper::ROOT_PATH
|
|
|
|
#@root_path = RepositoriesHelper::ROOT_PATH
|
|
|
|
|
|
|
|
|
|
|
@ -244,17 +244,24 @@ class RepositoriesController < ApplicationController
|
|
|
|
private :pickup_extra_info
|
|
|
|
private :pickup_extra_info
|
|
|
|
|
|
|
|
|
|
|
|
def committers
|
|
|
|
def committers
|
|
|
|
@committers = @repository.committers
|
|
|
|
gitlab_project = GitlabProject.find_by_repository_url(@repository.url)
|
|
|
|
@users = @project.users
|
|
|
|
if gitlab_project
|
|
|
|
additional_user_ids = @committers.collect(&:last).collect(&:to_i) - @users.collect(&:id)
|
|
|
|
# gitlab项目
|
|
|
|
@users += User.find_all_by_id(additional_user_ids) unless additional_user_ids.empty?
|
|
|
|
|
|
|
|
@users.compact!
|
|
|
|
else
|
|
|
|
@users.sort!
|
|
|
|
# 老模式
|
|
|
|
if request.post? && params[:committers].is_a?(Hash)
|
|
|
|
@committers = @repository.committers
|
|
|
|
# Build a hash with repository usernames as keys and corresponding user ids as values
|
|
|
|
@users = @project.users
|
|
|
|
@repository.committer_ids = params[:committers].values.inject({}) {|h, c| h[c.first] = c.last; h}
|
|
|
|
additional_user_ids = @committers.collect(&:last).collect(&:to_i) - @users.collect(&:id)
|
|
|
|
flash[:notice] = l(:notice_successful_update)
|
|
|
|
@users += User.find_all_by_id(additional_user_ids) unless additional_user_ids.empty?
|
|
|
|
redirect_to settings_project_path(@project, :tab => 'repositories')
|
|
|
|
@users.compact!
|
|
|
|
|
|
|
|
@users.sort!
|
|
|
|
|
|
|
|
if request.post? && params[:committers].is_a?(Hash)
|
|
|
|
|
|
|
|
# Build a hash with repository usernames as keys and corresponding user ids as values
|
|
|
|
|
|
|
|
@repository.committer_ids = params[:committers].values.inject({}) {|h, c| h[c.first] = c.last; h}
|
|
|
|
|
|
|
|
flash[:notice] = l(:notice_successful_update)
|
|
|
|
|
|
|
|
redirect_to settings_project_path(@project, :tab => 'repositories')
|
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|