Module: SortingPreference
- Includes:
- CookiesHelper, SortingHelper
- Included in:
- Dashboard::ProjectsController, Explore::ProjectsController, Groups::ApplicationController, IssuableCollections
- Defined in:
- app/controllers/concerns/sorting_preference.rb
Constant Summary
Constants included from CookiesHelper
CookiesHelper::COOKIE_TYPE_ENCRYPTED, CookiesHelper::COOKIE_TYPE_PERMANENT
Constants included from SortingTitlesValuesHelper
SortingTitlesValuesHelper::SORT_NAME, SortingTitlesValuesHelper::SORT_UPDATED_OLDEST, SortingTitlesValuesHelper::SORT_UPDATED_RECENT
Instance Method Summary collapse
-
#default_sort_order ⇒ Object
Implement default_sort_order method on controllers to choose which default sort should be applied if sort param is not provided.
-
#legacy_sort_cookie_name ⇒ Object
Implement legacy_sort_cookie_name method on controllers to set sort from cookie for backwards compatibility.
- #set_sort_order(field = sorting_field, default_order = default_sort_order) ⇒ Object
-
#sorting_field ⇒ Object
Implement sorting_field method on controllers to choose which column to store the sorting parameter.
Methods included from CookiesHelper
Methods included from SortingHelper
#admin_groups_sort_options_hash, #admin_users_sort_options, #audit_logs_sort_order_hash, #branches_sort_options_hash, #can_sort_by_issue_weight?, #can_sort_by_merged_date?, #due_date_option, #forks_reverse_sort_options_hash, #forks_sort_direction_button, #forks_sort_options_hash, #groups_sort_options_hash, #issuable_reverse_sort_order_hash, #issuable_sort_direction_button, #issuable_sort_option_overrides, #issuable_sort_option_title, #issuable_sort_options, #label_priority_option, #label_sort_options_hash, #merged_option, #milestones_sort_options_hash, #packages_reverse_sort_order_hash, #packages_sort_direction_button, #packages_sort_option_title, #packages_sort_options_hash, #popularity_option, #projects_sort_options_hash, #relative_position_option, #sort_direction_button, #sort_direction_icon, #sort_options_hash, #starrers_sort_options_hash, #subgroups_sort_options_hash, #tags_sort_options_hash, #title_option, #users_sort_options_hash
Methods included from ButtonHelper
#clipboard_button, #deprecated_clipboard_button, #dropdown_item_with_description, #http_clone_button, #http_dropdown_description, #link_button_to, #ssh_clone_button
Methods included from SortingTitlesValuesHelper
#sort_title_closed_date, #sort_title_closed_earlier, #sort_title_closed_recently, #sort_title_contacted_date, #sort_title_created_date, #sort_title_downvotes, #sort_title_due_date, #sort_title_due_date_later, #sort_title_due_date_soon, #sort_title_expire_date, #sort_title_label_priority, #sort_title_largest_group, #sort_title_largest_repo, #sort_title_latest_activity, #sort_title_merged_date, #sort_title_merged_earlier, #sort_title_merged_recently, #sort_title_milestone, #sort_title_milestone_later, #sort_title_milestone_soon, #sort_title_most_stars, #sort_title_name, #sort_title_name_asc, #sort_title_name_desc, #sort_title_oldest_activity, #sort_title_oldest_created, #sort_title_oldest_last_activity, #sort_title_oldest_signin, #sort_title_oldest_starred, #sort_title_oldest_updated, #sort_title_popularity, #sort_title_priority, #sort_title_recently_created, #sort_title_recently_last_activity, #sort_title_recently_signin, #sort_title_recently_starred, #sort_title_recently_updated, #sort_title_relative_position, #sort_title_size, #sort_title_stars, #sort_title_start_date_later, #sort_title_start_date_soon, #sort_title_title, #sort_title_upvotes, #sort_title_version_asc, #sort_title_version_desc, #sort_value_closed_date, #sort_value_closed_earlier, #sort_value_closed_recently, #sort_value_contacted_date, #sort_value_created_date, #sort_value_downvotes, #sort_value_due_date, #sort_value_due_date_later, #sort_value_due_date_soon, #sort_value_expire_date, #sort_value_label_priority, #sort_value_largest_group, #sort_value_largest_repo, #sort_value_latest_activity, #sort_value_least_popular, #sort_value_merged_date, #sort_value_merged_earlier, #sort_value_merged_recently, #sort_value_milestone, #sort_value_milestone_later, #sort_value_milestone_soon, #sort_value_most_popular, #sort_value_name, #sort_value_name_desc, #sort_value_oldest_activity, #sort_value_oldest_created, #sort_value_oldest_last_activity, #sort_value_oldest_signin, #sort_value_oldest_updated, #sort_value_popularity, #sort_value_priority, #sort_value_recently_created, #sort_value_recently_last_activity, #sort_value_recently_signin, #sort_value_recently_updated, #sort_value_relative_position, #sort_value_size, #sort_value_stars_asc, #sort_value_stars_desc, #sort_value_start_date_later, #sort_value_start_date_soon, #sort_value_title, #sort_value_title_desc, #sort_value_upvotes, #sort_value_version_asc, #sort_value_version_desc
Instance Method Details
#default_sort_order ⇒ Object
Implement default_sort_order method on controllers to choose which default sort should be applied if sort param is not provided.
25 26 27 |
# File 'app/controllers/concerns/sorting_preference.rb', line 25 def default_sort_order nil end |
#legacy_sort_cookie_name ⇒ Object
Implement legacy_sort_cookie_name method on controllers to set sort from cookie for backwards compatibility.
31 32 33 |
# File 'app/controllers/concerns/sorting_preference.rb', line 31 def nil end |
#set_sort_order(field = sorting_field, default_order = default_sort_order) ⇒ Object
7 8 9 10 11 12 13 14 |
# File 'app/controllers/concerns/sorting_preference.rb', line 7 def set_sort_order(field = sorting_field, default_order = default_sort_order) sort_order = set_sort_order_from_user_preference(field) || (field) || params[:sort] # some types of sorting might not be available on the dashboard return default_order unless valid_sort_order?(sort_order) sort_order end |
#sorting_field ⇒ Object
Implement sorting_field method on controllers to choose which column to store the sorting parameter.
18 19 20 |
# File 'app/controllers/concerns/sorting_preference.rb', line 18 def sorting_field nil end |