Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorStan Hu <stanhu@gmail.com>2019-09-11 03:24:05 +0300
committerStan Hu <stanhu@gmail.com>2019-09-11 03:24:05 +0300
commitd20ce7de3e9174fba2b35673bcc23085136523b3 (patch)
tree2475cf85620f6397d8efa20465b974142bd3947d /app
parentc0b9e50af9ecdbaf6cd8bb0dbcf23388c3c388e4 (diff)
parenta38aa7e3df0f91ebaa017b29cd508958fa7b0df1 (diff)
Merge branch '66023-public-private-fork-counts' into 'master'
Resolve "Forks count do not match after searching" Closes #66023 See merge request gitlab-org/gitlab-ce!31930
Diffstat (limited to 'app')
-rw-r--r--app/controllers/projects/forks_controller.rb15
-rw-r--r--app/views/projects/forks/index.html.haml2
-rw-r--r--app/views/shared/projects/_list.html.haml6
3 files changed, 10 insertions, 13 deletions
diff --git a/app/controllers/projects/forks_controller.rb b/app/controllers/projects/forks_controller.rb
index ac1c4bc7fd3..1bb21857dcf 100644
--- a/app/controllers/projects/forks_controller.rb
+++ b/app/controllers/projects/forks_controller.rb
@@ -2,6 +2,7 @@
class Projects::ForksController < Projects::ApplicationController
include ContinueParams
+ include RendersMemberAccess
# Authorize
before_action :whitelist_query_limiting, only: [:create]
@@ -11,14 +12,16 @@ class Projects::ForksController < Projects::ApplicationController
# rubocop: disable CodeReuse/ActiveRecord
def index
- base_query = project.forks.includes(:creator)
+ @total_forks_count = project.forks.size
+ @public_forks_count = project.forks.public_only.size
+ @private_forks_count = @total_forks_count - project.forks.public_and_internal_only.size
+ @internal_forks_count = @total_forks_count - @public_forks_count - @private_forks_count
- forks = ForkProjectsFinder.new(project, params: params.merge(search: params[:filter_projects]), current_user: current_user).execute
- @total_forks_count = base_query.size
- @private_forks_count = @total_forks_count - forks.size
- @public_forks_count = @total_forks_count - @private_forks_count
+ @forks = ForkProjectsFinder.new(project, params: params.merge(search: params[:filter_projects]), current_user: current_user).execute
+ @forks = @forks.includes(:route, :creator, :group, namespace: [:route, :owner])
+ .page(params[:page])
- @forks = forks.page(params[:page])
+ prepare_projects_for_rendering(@forks)
respond_to do |format|
format.html
diff --git a/app/views/projects/forks/index.html.haml b/app/views/projects/forks/index.html.haml
index 0397a7034c7..8384561891a 100644
--- a/app/views/projects/forks/index.html.haml
+++ b/app/views/projects/forks/index.html.haml
@@ -1,6 +1,6 @@
.top-area
.nav-text
- - full_count_title = "#{@public_forks_count} public and #{@private_forks_count} private"
+ - full_count_title = "#{@public_forks_count} public, #{@internal_forks_count} internal, and #{@private_forks_count} private"
#{pluralize(@total_forks_count, 'fork')}: #{full_count_title}
.nav-controls
diff --git a/app/views/shared/projects/_list.html.haml b/app/views/shared/projects/_list.html.haml
index bb05658c719..d70a1631010 100644
--- a/app/views/shared/projects/_list.html.haml
+++ b/app/views/shared/projects/_list.html.haml
@@ -42,12 +42,6 @@
avatar: avatar, stars: stars, css_class: css_class, ci: ci, use_creator_avatar: use_creator_avatar,
forks: forks, show_last_commit_as_description: show_last_commit_as_description, user: user, merge_requests: merge_requests,
issues: issues, pipeline_status: pipeline_status, compact_mode: compact_mode
-
- - if @private_forks_count && @private_forks_count > 0
- %li.project-row.private-forks-notice
- = icon('lock fw', base: 'circle', class: 'fa-lg private-fork-icon')
- %strong= pluralize(@private_forks_count, 'private fork')
- %span &nbsp;you have no access to.
= paginate_collection(projects, remote: remote) unless skip_pagination
- else
- if @contributed_projects