From 11f45dc2f8ad7700ba62ba7e310e0155afa1eec8 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Sun, 30 Apr 2023 00:35:31 +0100 Subject: [PATCH] Give ContentConfig an updated_at attribute and a usable cache_key --- app/controllers/admin/contents_controller.rb | 2 ++ app/models/content_configuration.rb | 15 +++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/app/controllers/admin/contents_controller.rb b/app/controllers/admin/contents_controller.rb index 0a41cc389a..ac9263fdc0 100644 --- a/app/controllers/admin/contents_controller.rb +++ b/app/controllers/admin/contents_controller.rb @@ -18,6 +18,8 @@ module Admin end end + ContentConfig.updated_at = Time.zone.now + flash[:success] = t(:successfully_updated, resource: I18n.t('admin.contents.edit.your_content')) diff --git a/app/models/content_configuration.rb b/app/models/content_configuration.rb index d0160407a4..2d473db24f 100644 --- a/app/models/content_configuration.rb +++ b/app/models/content_configuration.rb @@ -83,4 +83,19 @@ class ContentConfiguration < Spree::Preferences::Configuration # User Guide preference :user_guide_link, :string, default: 'https://guide.openfoodnetwork.org/' + + # ContentConfig Caching + preference :updated_at_timestamp, :integer, default: Time.zone.today.to_time.to_i + + def updated_at + Time.zone.at updated_at_timestamp + end + + def updated_at=(time) + self.updated_at_timestamp = time.to_i + end + + def cache_key + "ContentConfig:#{updated_at_timestamp}" + end end