diff --git a/app/controllers/observations_controller.rb b/app/controllers/observations_controller.rb index 81b768a1021..79eed4be517 100644 --- a/app/controllers/observations_controller.rb +++ b/app/controllers/observations_controller.rb @@ -1211,6 +1211,8 @@ def by_login current_user: current_user) search_params = Observation.apply_pagination_options(search_params, user_preferences: @prefs) + search_params[:order_by] = @prefs["edit_observations_order"] if @prefs["edit_observations_order"] + search_params[:order] = @prefs["edit_observations_sort"] if @prefs["edit_observations_sort"] @observations = Observation.page_of_results(search_params) set_up_instance_variables(search_params) Observation.preload_for_component(@observations, logged_in: !!current_user) diff --git a/app/models/user.rb b/app/models/user.rb index 08ee024505e..bd01a3492e0 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -101,6 +101,8 @@ def set_uuid preference :identify_side_bar, :boolean, default: false preference :lifelist_nav_view, :string preference :lifelist_details_view, :string + preference :edit_observations_sort, :string, default: "desc" + preference :edit_observations_order, :string, default: "created_at" preference :lifelist_tree_mode, :string NOTIFICATION_PREFERENCES = %w( diff --git a/app/views/observations/_observations_table_header.html.erb b/app/views/observations/_observations_table_header.html.erb index a50e65f803a..1b60bc49c0f 100644 --- a/app/views/observations/_observations_table_header.html.erb +++ b/app/views/observations/_observations_table_header.html.erb @@ -13,14 +13,14 @@
"> <% order = @order == 'desc' ? 'asc' : 'desc' if @order_by == 'observed_on' %> - <%= link_to t(:date_observed), url_for_params(:order => order, :order_by => 'observed_on') %> + <%= link_to t(:date_observed), url_for_params(order: order, order_by: 'observed_on', preferences: { edit_observations_sort: order, edit_observations_order: 'observed_on' }) %>
<%= t(:place) %>
" style="display: none"> <% order = @order == 'desc' ? 'asc' : 'desc' if %w(id observations.id created_at).include?(@order_by) %> - <%= link_to t(:date_added), url_for_params(:order => order, :order_by => 'created_at') %> + <%= link_to t(:date_added), url_for_params(order: order, order_by: 'created_at', preferences: { edit_observations_sort: order, edit_observations_order: 'created_at' }) %>