diff options
author | Douwe Maan <douwe@selenight.nl> | 2016-08-09 18:45:25 -0500 |
---|---|---|
committer | Douwe Maan <douwe@selenight.nl> | 2016-08-09 18:45:25 -0500 |
commit | 3f0737384251501a95bdb601e90592cfd08bc0bc (patch) | |
tree | 99d3d9bbfc0ea99bd6c23d0841e9f651137a4f99 /app | |
parent | c36362969155669b3455e96eb408313f7284f180 (diff) | |
parent | 8abc757539454e13835073318f896796b1a85faf (diff) | |
download | gitlab-ce-3f0737384251501a95bdb601e90592cfd08bc0bc.tar.gz |
Merge branch 'adambuckland/gitlab-ce-19727-sort-submodules-with-files'
Diffstat (limited to 'app')
-rw-r--r-- | app/helpers/tree_helper.rb | 18 | ||||
-rw-r--r-- | app/views/projects/tree/_tree_row.html.haml | 6 |
2 files changed, 9 insertions, 15 deletions
diff --git a/app/helpers/tree_helper.rb b/app/helpers/tree_helper.rb index dbedf417fa5..4a76c679bad 100644 --- a/app/helpers/tree_helper.rb +++ b/app/helpers/tree_helper.rb @@ -4,23 +4,11 @@ module TreeHelper # # contents - A Grit::Tree object for the current tree def render_tree(tree) - # Render Folders before Files/Submodules + # Sort submodules and folders together by name ahead of files folders, files, submodules = tree.trees, tree.blobs, tree.submodules - tree = "" - - # Render folders if we have any - tree << render(partial: 'projects/tree/tree_item', collection: folders, - locals: { type: 'folder' }) if folders.present? - - # Render files if we have any - tree << render(partial: 'projects/tree/blob_item', collection: files, - locals: { type: 'file' }) if files.present? - - # Render submodules if we have any - tree << render(partial: 'projects/tree/submodule_item', - collection: submodules) if submodules.present? - + items = (folders + submodules).sort_by(&:name) + files + tree << render(partial: "projects/tree/tree_row", collection: items) if items.present? tree.html_safe end diff --git a/app/views/projects/tree/_tree_row.html.haml b/app/views/projects/tree/_tree_row.html.haml new file mode 100644 index 00000000000..0a5c6f048f7 --- /dev/null +++ b/app/views/projects/tree/_tree_row.html.haml @@ -0,0 +1,6 @@ +- if tree_row.type == :tree + = render partial: 'projects/tree/tree_item', object: tree_row, as: 'tree_item', locals: { type: 'folder' } +- elsif tree_row.type == :blob + = render partial: 'projects/tree/blob_item', object: tree_row, as: 'blob_item', locals: { type: 'file' } +- elsif tree_row.type == :commit + = render partial: 'projects/tree/submodule_item', object: tree_row, as: 'submodule_item' |