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

projects.html.haml « groups « views « app - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 76758769d01be692b9ce6eb96ff5b20663cf0491 (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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
- breadcrumb_title _("Projects")
- page_title _("Projects")
- add_page_specific_style 'page_bundles/projects'
- @force_desktop_expanded_sidebar = true

= render Pajamas::CardComponent.new(card_options: { class: 'gl-new-card js-search-settings-section' }, header_options: { class: 'gl-new-card-header gl-display-flex' }, body_options: { class: 'gl-new-card-body' }) do |c|
  - c.with_header do
    .gl-new-card-title-wrapper
      %h3.gl-new-card-title
        = _('Projects')
      .gl-new-card-count
        = sprite_icon('project', css_class: 'gl-mr-2')
        = @projects.size
    .gl-new-card-actions
      - if can? current_user, :admin_group, @group
        = render Pajamas::ButtonComponent.new(href: new_project_path(namespace_id: @group.id), size: :small) do
          = _("New project")
  - c.with_body do
    %ul.content-list{ class: 'gl-px-3!' }
      - @projects.each_with_index do |project, idx|
        %li.project-row.gl-align-items-center{ class: 'gl-display-flex!', data: { qa_selector: 'project_row_container', qa_index: idx } }
          .avatar-container.rect-avatar.s40.gl-flex-shrink-0
            = project_icon(project, alt: '', class: 'avatar project-avatar s40', width: 40, height: 40)
          .gl-min-w-0.gl-flex-grow-1
            .title
              = link_to project_path(project), class: 'js-prefetch-document' do
                %span.project-full-name{ data: { qa_selector: 'project_fullname_content' } }
                  %span.namespace-name{ data: { qa_selector: 'project_namespace_content' } }
                    - if project.namespace
                      = project.namespace.human_name
                      \/
                  %span.project-name{ data: { qa_selector: 'project_name_content', qa_project_name: project.name } }
                    = project.name
              = visibility_level_content(project, css_class: 'visibility-icon gl-text-secondary gl-ml-2', icon_css_class: 'icon')

            - if project.description.present?
              .description
                = markdown_field(project, :description)

          .stats.gl-text-gray-500.gl-flex-shrink-0.gl-display-none.gl-sm-display-flex.gl-gap-3
            = gl_badge_tag storage_counter(project.statistics&.storage_size)
            = render 'project_badges', project: project
          .controls.gl-flex-shrink-0.gl-ml-5
            = render Pajamas::ButtonComponent.new(href: project_project_members_path(project),
              variant: :link,
              button_options: { class: 'gl-mr-2', data: { qa_selector: 'project_members_button' } }) do
              = _('View members')
            = render Pajamas::ButtonComponent.new(href: edit_project_path(project),
              size: :small,
              button_options: { data: { qa_selector: 'project_edit_button' } }) do
              = _('Edit')
            = render 'delete_project_button', project: project, data: { qa_selector: 'project_delete_button' }
      - if @projects.blank?
        .nothing-here-block= _("This group has no projects yet")

= paginate @projects, theme: "gitlab"