Feature: remember value of chart period selector (#1528)

* feat: remember chart period by last selection not user preferences

* feat: schema update

* fix: revert unnecessary parts of schema.rb update

* fix: check period key is valid before setting it

* revert: no database changes and keep the UI setting

* refactor: don't store the default period in the session, just use the user

* fix: migration

The migration uses the User model directly, which loads all current enums
including ui_layout which doesn't exist yet at that point in migration history.
Fix it with raw SQL.

* revert: not relevant to this PR
This commit is contained in:
Roger Saner
2026-04-21 19:02:41 +02:00
committed by GitHub
parent 30481fbc07
commit b3c88e09f3
3 changed files with 10 additions and 5 deletions

View File

@@ -7,7 +7,12 @@ module Periodable
private
def set_period
period_key = params[:period] || Current.user&.default_period
if params[:period].present?
period_key = params[:period]
Current.user&.update!(default_period: period_key) if Period.valid_key?(period_key)
else
period_key = Current.user&.default_period
end
@period = if period_key == "current_month"
Period.current_month_for(Current.family)