mirror of
https://github.com/discourse/discourse.git
synced 2025-04-17 12:49:04 +08:00
phpBB3 importer: Fix validation of site settings
This commit is contained in:
parent
df096f7803
commit
e9fb2c5756
@ -34,32 +34,9 @@ module ImportScripts::PhpBB3
|
|||||||
end
|
end
|
||||||
|
|
||||||
def change_site_settings
|
def change_site_settings
|
||||||
# let's make sure that we import all attachments no matter how big they are
|
|
||||||
setting_keys = [:max_image_size_kb, :max_attachment_size_kb]
|
|
||||||
original_validators = disable_setting_validators(setting_keys)
|
|
||||||
|
|
||||||
super
|
super
|
||||||
|
|
||||||
@importers.permalink_importer.change_site_settings
|
@importers.permalink_importer.change_site_settings
|
||||||
|
|
||||||
enable_setting_validators(original_validators)
|
|
||||||
end
|
|
||||||
|
|
||||||
def disable_setting_validators(setting_keys)
|
|
||||||
original_validators = {}
|
|
||||||
|
|
||||||
setting_keys.each do |key|
|
|
||||||
original_validators[key] = SiteSetting.validators[key]
|
|
||||||
SiteSetting.validators[key] = nil
|
|
||||||
end
|
|
||||||
|
|
||||||
original_validators
|
|
||||||
end
|
|
||||||
|
|
||||||
def enable_setting_validators(original_validators)
|
|
||||||
original_validators.each do |key, validator|
|
|
||||||
SiteSetting.validators[key] = validator
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def get_site_settings_for_import
|
def get_site_settings_for_import
|
||||||
@ -69,6 +46,10 @@ module ImportScripts::PhpBB3
|
|||||||
settings[:max_image_size_kb] = [max_file_size_kb, SiteSetting.max_image_size_kb].max
|
settings[:max_image_size_kb] = [max_file_size_kb, SiteSetting.max_image_size_kb].max
|
||||||
settings[:max_attachment_size_kb] = [max_file_size_kb, SiteSetting.max_attachment_size_kb].max
|
settings[:max_attachment_size_kb] = [max_file_size_kb, SiteSetting.max_attachment_size_kb].max
|
||||||
|
|
||||||
|
# temporarily disable validation since we want to import all existing images and attachments
|
||||||
|
SiteSetting.type_supervisor.load_setting(:max_image_size_kb, max: settings[:max_image_size_kb])
|
||||||
|
SiteSetting.type_supervisor.load_setting(:max_attachment_size_kb, max: settings[:max_attachment_size_kb])
|
||||||
|
|
||||||
settings
|
settings
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user