diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml index 1b1a508e8c7..a2ce27259b3 100644 --- a/config/locales/server.en.yml +++ b/config/locales/server.en.yml @@ -36,6 +36,7 @@ en: is_reserved: "is reserved" purge_reason: "Automatically deleted due to being old and unverified" + disable_remote_images_download_reason: "Remote images download was disabled because there wasn't enough disk space available." errors: messages: diff --git a/lib/cooked_post_processor.rb b/lib/cooked_post_processor.rb index d665e9c9080..719d4f79519 100644 --- a/lib/cooked_post_processor.rb +++ b/lib/cooked_post_processor.rb @@ -245,7 +245,12 @@ class CookedPostProcessor def disable_if_low_on_disk_space if available_disk_space < SiteSetting.download_remote_images_threshold SiteSetting.download_remote_images_to_local = false - SystemMessage.create(Discourse.site_contact_user, :download_remote_images_disabled) + # log the site setting change + reason = I18n.t("disable_remote_images_download_reason") + staff_action_logger = StaffActionLogger.new(Discourse.system_user) + staff_action_logger.log_site_setting_change("download_remote_images_to_local", true, false, { details: reason }) + # also send a private message to the site contact user + SystemMessage.create_from_system_user(Discourse.site_contact_user, :download_remote_images_disabled) return true end false diff --git a/spec/components/cooked_post_processor_spec.rb b/spec/components/cooked_post_processor_spec.rb index cd96514adad..db768190052 100644 --- a/spec/components/cooked_post_processor_spec.rb +++ b/spec/components/cooked_post_processor_spec.rb @@ -346,7 +346,8 @@ describe CookedPostProcessor do before { SiteSetting.expects(:download_remote_images_threshold).returns(75) } it "disables download_remote_images_threshold and send a notification to the admin" do - SystemMessage.expects(:create).with(Discourse.site_contact_user, :download_remote_images_disabled).once + StaffActionLogger.any_instance.expects(:log_site_setting_change).once + SystemMessage.expects(:create_from_system_user).with(Discourse.site_contact_user, :download_remote_images_disabled).once cpp.disable_if_low_on_disk_space.should == true SiteSetting.download_remote_images_to_local.should == false end