diff --git a/install/db/177-database.php b/install/db/177-database.php index 49004fb84..259c901f2 100644 --- a/install/db/177-database.php +++ b/install/db/177-database.php @@ -23,6 +23,37 @@ $derivatives = unserialize($conf['derivatives']); $default_sizes = ImageStdParams::get_default_sizes(); //Get 3XL and 4XL from default values +$default_derivative_3XL = $default_sizes['3xlarge']; +$default_derivative_4XL = $default_sizes['4xlarge']; + +//We need to make sure that a user hasn't redefined the XXL size bigger than the default 3XL +//Get xxl size +$xxl = $derivatives['d']['xxlarge']; +$xxl_height = $xxl->sizing->ideal_size[0]; +$xxl_width = $xxl->sizing->ideal_size[1]; + +//get 3xl size +$triple_xl_height = $default_sizes['3xlarge']->sizing->ideal_size[0]; +$triple_xl_width = $default_sizes['3xlarge']->sizing->ideal_size[1]; + +//Get 4xl size +$quad_xl_height = $default_sizes['3xlarge']->sizing->ideal_size[0]; +$quad_xl_width = $default_sizes['3xlarge']->sizing->ideal_size[1]; + +//Set 3XL and 4xl size to be bigger than XXL if needed +if ($triple_xl_height < $xxl_height or $triple_xl_width < $xxl_width) +{ + $new_3xl_height = ceil($xxl_height*1.5); + $new_3xl_width = ceil($xxl_width*1.5); + + $default_sizes['3xlarge']->sizing->ideal_size[0] = $new_3xl_height; + $default_sizes['3xlarge']->sizing->ideal_size[1] = $new_3xl_width; + + $default_sizes['4xlarge']->sizing->ideal_size[0] = ceil($new_3xl_width*1.5); + $default_sizes['4xlarge']->sizing->ideal_size[1] = ceil($new_3xl_width*1.5); +} + +//Add new 3xl and 4xl to derivatives sizes config $derivatives['d'][IMG_3XLARGE] = $default_sizes['3xlarge']; $derivatives['d'][IMG_4XLARGE] = $default_sizes['4xlarge'];