summaryrefslogtreecommitdiff
path: root/app/views/projects/tree/_tree_header.html.haml
blob: 5ef5e9c09a2bef1b68c3f5725683efc50dee5357 (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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
.tree-ref-container
  .tree-ref-holder
    = render 'shared/ref_switcher', destination: 'tree', path: @path, show_create: true

    - if on_top_of_branch?
      - addtotree_toggle_attributes = { href: '#', 'data-toggle': 'dropdown', 'data-target': '.add-to-tree-dropdown' }
    - else
      - addtotree_toggle_attributes = { title: _("You can only add files when you are on a branch"), data: { container: 'body' }, class: 'disabled has-tooltip' }

  %ul.breadcrumb.repo-breadcrumb
    %li
      = link_to project_tree_path(@project, @ref) do
        = @project.path
    - path_breadcrumbs do |title, path|
      %li
        = link_to truncate(title, length: 40), project_tree_path(@project, tree_join(@ref, path))

    - if current_user
      %li
        %a.btn.add-to-tree{ addtotree_toggle_attributes }
          = sprite_icon('plus', size: 16, css_class: 'pull-left')
          = sprite_icon('arrow-down', size: 16, css_class: 'pull-left')
        - if on_top_of_branch?
          .add-to-tree-dropdown
            %ul.dropdown-menu
              - if can_edit_tree?
                %li.dropdown-header
                  #{ _('This directory') }
                %li
                  = link_to project_new_blob_path(@project, @id) do
                    #{ _('New file') }
                %li
                  = link_to '#modal-upload-blob', { 'data-target' => '#modal-upload-blob', 'data-toggle' => 'modal' } do
                    #{ _('Upload file') }
                %li
                  = link_to '#modal-create-new-dir', { 'data-target' => '#modal-create-new-dir', 'data-toggle' => 'modal' } do
                    #{ _('New directory') }
              - elsif can?(current_user, :fork_project, @project)
                %li
                  - continue_params = { to:         project_new_blob_path(@project, @id),
                                        notice:     edit_in_new_fork_notice,
                                        notice_now: edit_in_new_fork_notice_now }
                  - fork_path = project_forks_path(@project, namespace_key:  current_user.namespace.id,
                                                                                          continue:       continue_params)
                  = link_to fork_path, method: :post do
                    #{ _('New file') }
                %li
                  - continue_params = { to:         request.fullpath,
                                        notice:     edit_in_new_fork_notice + " Try to upload a file again.",
                                        notice_now: edit_in_new_fork_notice_now }
                  - fork_path = project_forks_path(@project, namespace_key:  current_user.namespace.id,
                                                                                          continue:       continue_params)
                  = link_to fork_path, method: :post do
                    #{ _('Upload file') }
                %li
                  - continue_params = { to:         request.fullpath,
                                        notice:     edit_in_new_fork_notice + " Try to create a new directory again.",
                                        notice_now: edit_in_new_fork_notice_now }
                  - fork_path = project_forks_path(@project, namespace_key:  current_user.namespace.id,
                                                                                          continue:       continue_params)
                  = link_to fork_path, method: :post do
                    #{ _('New directory') }

              %li.divider
              %li.dropdown-header
                #{ _('This repository') }
              %li
                = link_to new_project_branch_path(@project) do
                  #{ _('New branch') }
              %li
                = link_to new_project_tag_path(@project) do
                  #{ _('New tag') }

.tree-controls
  = link_to s_('Commits|History'), project_commits_path(@project, @id), class: 'btn'

  = render 'projects/find_file_link'

  = succeed " " do
    = link_to ide_edit_path(@project, @id, ""), class: 'btn btn-default' do
      = _('Web IDE')

  = render 'projects/buttons/download', project: @project, ref: @ref