mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-02-06 06:56:54 +08:00
Merge pull request #1891 from okriuchykhin/ok_SCI_3654
Fix project page view saving [SCI-3654]
This commit is contained in:
commit
82708f0124
2 changed files with 8 additions and 6 deletions
|
@ -59,7 +59,7 @@ class Team < ApplicationRecord
|
||||||
|
|
||||||
def validate_view_state(view_state)
|
def validate_view_state(view_state)
|
||||||
unless %w(new old atoz ztoa).include?(view_state.state.dig('projects', 'cards', 'sort')) &&
|
unless %w(new old atoz ztoa).include?(view_state.state.dig('projects', 'cards', 'sort')) &&
|
||||||
%w(active archived).include?(view_state.state.dig('projects', 'filter'))
|
%w(all active archived).include?(view_state.state.dig('projects', 'filter'))
|
||||||
view_state.errors.add(:state, :wrong_state)
|
view_state.errors.add(:state, :wrong_state)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -9,6 +9,7 @@ class ProjectsOverviewService
|
||||||
if @view_state.state.dig('projects', 'filter') != @params[:filter] &&
|
if @view_state.state.dig('projects', 'filter') != @params[:filter] &&
|
||||||
%w(active archived all).include?(@params[:filter])
|
%w(active archived all).include?(@params[:filter])
|
||||||
@view_state.state['projects']['filter'] = @params[:filter]
|
@view_state.state['projects']['filter'] = @params[:filter]
|
||||||
|
@view_state.save!
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -45,7 +46,12 @@ class ProjectsOverviewService
|
||||||
else
|
else
|
||||||
10
|
10
|
||||||
end
|
end
|
||||||
table_state['length'] = per_page if table_state['length'] != per_page
|
if table_state['length'] != per_page
|
||||||
|
table_state['length'] = per_page
|
||||||
|
table_state['time'] = Time.now.to_i
|
||||||
|
@view_state.state['projects']['table'] = table_state
|
||||||
|
@view_state.save!
|
||||||
|
end
|
||||||
page = @params[:start] ? (@params[:start].to_i / per_page) + 1 : 1
|
page = @params[:start] ? (@params[:start].to_i / per_page) + 1 : 1
|
||||||
records = fetch_dt_records
|
records = fetch_dt_records
|
||||||
records = records.where(archived: true) if @params[:filter] == 'archived'
|
records = records.where(archived: true) if @params[:filter] == 'archived'
|
||||||
|
@ -53,10 +59,6 @@ class ProjectsOverviewService
|
||||||
search_value = @params.dig(:search, :value)
|
search_value = @params.dig(:search, :value)
|
||||||
records = search(records, search_value) if search_value.present?
|
records = search(records, search_value) if search_value.present?
|
||||||
records = sort(records).page(page).per(per_page)
|
records = sort(records).page(page).per(per_page)
|
||||||
if @view_state.changed?
|
|
||||||
@view_state.state['projects']['table']['time'] = Time.now.to_i
|
|
||||||
@view_state.save!
|
|
||||||
end
|
|
||||||
records
|
records
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue