summaryrefslogtreecommitdiff
path: root/app/controllers/dashboard/snippets_controller.rb
blob: 01dc0b1ab0036baaad9aa7a1fc8ddaeb96c8cf77 (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
# frozen_string_literal: true

class Dashboard::SnippetsController < Dashboard::ApplicationController
  include PaginatedCollection
  include Gitlab::NoteableMetadata
  include SnippetsSort

  skip_cross_project_access_check :index

  feature_category :snippets

  def index
    @snippet_counts = Snippets::CountService
      .new(current_user, author: current_user)
      .execute

    @snippets = SnippetsFinder.new(current_user, author: current_user, scope: params[:scope], sort: sort_param)
      .execute
      .page(params[:page])
      .inc_author
      .inc_projects_namespace_route

    return if redirect_out_of_range(@snippets)

    @noteable_meta_data = noteable_meta_data(@snippets, 'Snippet')
  end
end