Togglable filter links (#4021)
* Togglable filter links * Rename is_selected to selected?
This commit is contained in:
parent
185b41beb4
commit
2d6128672f
2 changed files with 29 additions and 7 deletions
|
@ -6,15 +6,21 @@ module Admin::FilterHelper
|
||||||
|
|
||||||
FILTERS = ACCOUNT_FILTERS + REPORT_FILTERS
|
FILTERS = ACCOUNT_FILTERS + REPORT_FILTERS
|
||||||
|
|
||||||
def filter_link_to(text, more_params)
|
def filter_link_to(text, link_to_params, link_class_params = link_to_params)
|
||||||
new_url = filtered_url_for(more_params)
|
new_url = filtered_url_for(link_to_params)
|
||||||
link_to text, new_url, class: filter_link_class(new_url)
|
new_class = filtered_url_for(link_class_params)
|
||||||
|
link_to text, new_url, class: filter_link_class(new_class)
|
||||||
end
|
end
|
||||||
|
|
||||||
def table_link_to(icon, text, path, options = {})
|
def table_link_to(icon, text, path, options = {})
|
||||||
link_to safe_join([fa_icon(icon), text]), path, options.merge(class: 'table-action-link')
|
link_to safe_join([fa_icon(icon), text]), path, options.merge(class: 'table-action-link')
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def selected?(more_params)
|
||||||
|
new_url = filtered_url_for(more_params)
|
||||||
|
filter_link_class(new_url) == 'selected' ? true : false
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def filter_params(more_params)
|
def filter_params(more_params)
|
||||||
|
|
|
@ -6,14 +6,30 @@
|
||||||
%strong= t('admin.accounts.location.title')
|
%strong= t('admin.accounts.location.title')
|
||||||
%ul
|
%ul
|
||||||
%li= filter_link_to t('admin.accounts.location.all'), local: nil, remote: nil
|
%li= filter_link_to t('admin.accounts.location.all'), local: nil, remote: nil
|
||||||
%li= filter_link_to t('admin.accounts.location.local'), local: '1', remote: nil
|
%li
|
||||||
%li= filter_link_to t('admin.accounts.location.remote'), remote: '1', local: nil
|
- if selected? local: '1', remote: nil
|
||||||
|
= filter_link_to t('admin.accounts.location.local'), {local: nil, remote: nil}, {local: '1', remote: nil}
|
||||||
|
- else
|
||||||
|
= filter_link_to t('admin.accounts.location.local'), local: '1', remote: nil
|
||||||
|
%li
|
||||||
|
- if selected? remote: '1', local: nil
|
||||||
|
= filter_link_to t('admin.accounts.location.remote'), {remote: nil, local: nil}, {remote: '1', local: nil}
|
||||||
|
- else
|
||||||
|
= filter_link_to t('admin.accounts.location.remote'), remote: '1', local: nil
|
||||||
.filter-subset
|
.filter-subset
|
||||||
%strong= t('admin.accounts.moderation.title')
|
%strong= t('admin.accounts.moderation.title')
|
||||||
%ul
|
%ul
|
||||||
%li= filter_link_to t('admin.accounts.moderation.all'), silenced: nil, suspended: nil
|
%li= filter_link_to t('admin.accounts.moderation.all'), silenced: nil, suspended: nil
|
||||||
%li= filter_link_to t('admin.accounts.moderation.silenced'), silenced: '1'
|
%li
|
||||||
%li= filter_link_to t('admin.accounts.moderation.suspended'), suspended: '1'
|
- if selected? silenced: '1'
|
||||||
|
= filter_link_to t('admin.accounts.moderation.silenced'), {silenced: nil}, {silenced: '1'}
|
||||||
|
- else
|
||||||
|
= filter_link_to t('admin.accounts.moderation.silenced'), silenced: '1'
|
||||||
|
%li
|
||||||
|
- if selected? suspended: '1'
|
||||||
|
= filter_link_to t('admin.accounts.moderation.suspended'), {suspended: nil}, {suspended: '1'}
|
||||||
|
- else
|
||||||
|
= filter_link_to t('admin.accounts.moderation.suspended'), suspended: '1'
|
||||||
.filter-subset
|
.filter-subset
|
||||||
%strong= t('admin.accounts.order.title')
|
%strong= t('admin.accounts.order.title')
|
||||||
%ul
|
%ul
|
||||||
|
|
Loading…
Reference in a new issue