summaryrefslogtreecommitdiff
path: root/app/views/shared/projects/_project.html.haml
blob: 72061e272f166529c427561a327d08b56af13e76 (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
- avatar = true unless local_assigns[:avatar] == false
- stars = true unless local_assigns[:stars] == false
- forks = false unless local_assigns[:forks] == true
- ci = false unless local_assigns[:ci] == true
- skip_namespace = false unless local_assigns[:skip_namespace] == true
- css_class = '' unless local_assigns[:css_class]
- show_last_commit_as_description = false unless local_assigns[:show_last_commit_as_description] == true && project.commit
- css_class += " no-description" if project.description.blank? && !show_last_commit_as_description
- ci_commit = project.ci_commit(project.commit.sha) if ci && !project.empty_repo? && project.commit
- cache_key = [project.namespace, project, controller.controller_name, controller.action_name, current_application_settings, 'v2.2']
- cache_key.push(ci_commit.status) if ci_commit

%li.project-row{ class: css_class }
  = cache(cache_key) do
    = link_to project_path(project), class: dom_class(project) do
      - if avatar
        .dash-project-avatar
          - if use_creator_avatar
            = image_tag avatar_icon(project.creator.email, 40), class: "avatar s40", alt:''
          - else
            = project_icon(project, alt: '', class: 'avatar project-avatar s40')
      %span.project-full-name
        %span.namespace-name
          - if project.namespace && !skip_namespace
            = project.namespace.human_name
            \/
        %span.project-name.filter-title
          = project.name

    .project-controls
      - if ci_commit
        %span
          = render_ci_status(ci_commit)
      - if forks
        %span
          = icon('code-fork')
          = project.forks_count
      - if stars
        %span
          = icon('star')
          = project.star_count
      %span.visibility-icon.has_tooltip{data: { container: 'body', placement: 'left' },
        title: "#{visibility_level_label(project.visibility_level)} - #{project_visibility_level_description(project.visibility_level)}"}
        = visibility_level_icon(project.visibility_level, fw: false)
    - if show_last_commit_as_description
      .project-description
        = link_to_gfm project.commit.title, namespace_project_commit_path(project.namespace, project, project.commit),
          class: "commit-row-message"
    - elsif project.description.present?
      .project-description
        = markdown(project.description, pipeline: :description)