@ -31,8 +31,8 @@ class RepositoriesController < ApplicationController
default_search_scope :changesets
before_filter :find_project_by_project_id , :only = > [ :new , :create , :newrepo ]
before_filter :find_repository , :only = > [ :edit , :update , :destroy , :committers , :forked ]
before_filter :find_project_repository , :except = > [ :new , :create , :newcreate , :edit , :update , :destroy , :committers , :newrepo , :to_gitlab ]
before_filter :find_repository , :only = > [ :edit , :update , :destroy , :committers ]
before_filter :find_project_repository , :except = > [ :new , :create , :newcreate , :edit , :update , :destroy , :committers , :newrepo , :to_gitlab , :forked ]
before_filter :find_changeset , :only = > [ :revision , :add_related_issue , :remove_related_issue ]
before_filter :authorize , :except = > [ :newrepo , :newcreate , :fork , :to_gitlab , :forked ]
accept_rss_auth :revisions
@ -64,6 +64,8 @@ class RepositoriesController < ApplicationController
end
def forked
@project = Project . find ( params [ :id ] )
@repository = Repository . where ( " project_id =? and type =? " , @project . id , " Repository::Gitlab " )
# 如果当前用户已经fork过该项目, 不会新fork项目, 则跳至已fork的项
unless has_forked? ( @project , User . current )
project = project_from_current_project ( @project . id , User . current . id )
@ -76,7 +78,11 @@ class RepositoriesController < ApplicationController
else
g = Gitlab . client
if User . current . gid . nil?
g . sync_user ( User . current )
begin
g . sync_user ( User . current )
ensure
logger . error " Synv user failed ==> #{ User . current . id } "
end
end
gproject = g . fork ( @project . gpid , User . current . gid )
if gproject
@ -351,7 +357,7 @@ update
@changesets = g . commits ( @project . gpid , :ref_name = > @rev )
# @changesets = @repository.latest_changesets(@path, @rev)
# @changesets_count = @repository.latest_changesets(@path, @rev).count
@changesets_all_count = 0
@changesets_all_count = @project . gpid . nil? ? 0 : g . commits_total_count ( @project . gpid ) . count
@changesets_latest_coimmit = @changesets [ 0 ]
@properties = @repository . properties ( @path , @rev )
@repositories = @project . repositories
@ -383,10 +389,10 @@ update
@commits = g . commits ( @project . gpid , page : ( params [ :page ] . to_i - 1 ) . to_s )
#add by hx
rep_count = commit_count ( @project )
#rep_count = commit_count(@project )
#页面传递必须要str类型,但是Paginator的初始化必须要num类型,需要类型转化
@commits_count = rep_count
@commits_count = params[ :commit_count ] . to_i
@commits_pages = Redmine :: Pagination :: Paginator . new @commits_count , limit , params [ :page ]
@commit = g . commit ( @project . gpid , @rev )