Skip to content
Snippets Groups Projects
Commit a57ded85 authored by Arinde Eniola's avatar Arinde Eniola
Browse files

Add filter dropdown to tag page

parent 0bdb68ef
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -6,7 +6,8 @@ class Projects::TagsController < Projects::ApplicationController
before_action :authorize_admin_project!, only: [:destroy]
 
def index
sorted = VersionSorter.rsort(@repository.tag_names)
@sort = params[:sort]
sorted = tags_sorted_by(@sort)
@tags = Kaminari.paginate_array(sorted).page(params[:page])
@releases = project.releases.where(tag: @tags)
end
Loading
Loading
@@ -41,4 +42,19 @@ class Projects::TagsController < Projects::ApplicationController
format.js
end
end
private
def tags_sorted_by(value)
default_sort = VersionSorter.rsort(@repository.tag_names)
case value
when 'recently_released'
default_sort
when 'last_released'
VersionSorter.sort(@repository.tag_names)
else
default_sort
end
end
end
Loading
Loading
@@ -44,6 +44,14 @@ module SortingHelper
'Last created'
end
 
def sort_title_recently_released
'Last released'
end
def sort_title_oldest_released
'Oldest released'
end
def sort_title_milestone_soon
'Milestone due soon'
end
Loading
Loading
Loading
Loading
@@ -8,6 +8,21 @@
= link_to new_namespace_project_tag_path(@project.namespace, @project), class: 'btn btn-create new-tag-btn' do
= icon('plus')
New tag
&nbsp;
.dropdown.inline
%button.dropdown-toggle.btn{type: 'button', 'data-toggle' => 'dropdown'}
%span.light
- if @sort.present?
= @sort.humanize
- else
Filter
%b.caret
%ul.dropdown-menu.dropdown-menu-align-right
%li
= link_to namespace_project_tags_path(sort: 'recently_released') do
= sort_title_recently_released
= link_to namespace_project_tags_path(sort: 'last_released') do
= sort_title_oldest_released
.oneline
Tags give the ability to mark specific points in history as being important
 
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment