fixes #2411 disable 3xl and 4xl by default

- Add 3XL and 4XL sizes to defaults but keep them disabled by default
- Update admin restore default derivatives resets sizes and clears cache
- Update migration 177 => updates existing installs: set 3XL/4XL as disabled
This commit is contained in:
Linty
2025-09-19 18:49:05 +02:00
parent 8682a9bedc
commit 18bb865a23
5 changed files with 93 additions and 56 deletions

View File

@@ -355,10 +355,12 @@ WHERE param = \''.$row['param'].'\'
// restore default derivatives settings
if ('sizes' == $page['section'] and isset($_GET['action']) and 'restore_settings' == $_GET['action'])
{
ImageStdParams::set_and_save( ImageStdParams::get_default_sizes() );
pwg_query('DELETE FROM '.CONFIG_TABLE.' WHERE param = \'disabled_derivatives\'');
ImageStdParams::restore_default();
clear_derivative_cache();
// reset conf
load_conf_from_db();
$template->assign(
array(
'save_success' => l10n('Your configuration settings are saved'),
@@ -569,7 +571,7 @@ switch ($page['section'])
// derivatives = multiple size
$enabled = ImageStdParams::get_defined_type_map();
$disabled = @unserialize(@$conf['disabled_derivatives']);
$disabled = safe_unserialize(ImageStdParams::get_disabled_type_map());
if ($disabled === false)
{
$disabled = array();

View File

@@ -134,7 +134,7 @@ if (count($errors) == 0)
ImageStdParams::$quality = intval($_POST['resize_quality']);
$enabled = ImageStdParams::get_defined_type_map();
$disabled = @unserialize( @$conf['disabled_derivatives'] );
$disabled = safe_unserialize(ImageStdParams::get_disabled_type_map());
if ($disabled === false)
{
$disabled = array();
@@ -228,16 +228,7 @@ if (count($errors) == 0)
}
ImageStdParams::set_and_save($enabled_by);
if (count($disabled) == 0)
{
$query='DELETE FROM '.CONFIG_TABLE.' WHERE param = \'disabled_derivatives\'';
pwg_query($query);
}
else
{
conf_update_param('disabled_derivatives', addslashes(serialize($disabled)) );
}
$conf['disabled_derivatives'] = serialize($disabled);
ImageStdParams::set_and_save_disabled($disabled);
if (count($changed_types))
{

View File

@@ -1105,7 +1105,7 @@ function get_optimal_dimensions_for_representative()
global $conf;
$enabled = ImageStdParams::get_defined_type_map();
$disabled = @unserialize(@$conf['disabled_derivatives']);
$disabled = safe_unserialize(ImageStdParams::get_disabled_type_map());
if ($disabled === false)
{
$disabled = array();