Решил не создавать новую тему, а написать сюда - т.к. касается изображений.
Что на самом деле делает установка "Всегда изменять размеры (4 варианта) изображения, если они превышают установленные
(always resize (....) image if its dimensions exceed max values)
Эти 4 пункта находится в меню Настройки > Товары > Настройки товаров > Изображения
Соответствующее значение (здесь и далее для примера tiny image) - таблица БД va_global_settings, resize_tiny_image
Смотрим на участок кода загрузки изображения (admin_upload.php):
Код:
if ($is_generate_tiny_image || $resize_tiny_image) {
$tiny_width = get_setting_value($settings, "tiny_image_max_width", 32);
$tiny_height = get_setting_value($settings, "tiny_image_max_height", 32);
if (@resize($uploaded_filename, $filepath, $images_root.$tiny_dir_suffix, $tiny_width, $tiny_height, $errors)) {
@chmod($images_root . $tiny_dir_suffix . $uploaded_filename, 0666);
}
}
Условие if ($is_generate_tiny_image || $resize_tiny_image) означает, что даже если Вы не хотите загружать tiny image, но в глобальных настройках у Вас включено Всегда изменять размеры... - tiny image всё равно будет пересчитано в 32х32 и записано в соотв. папку. Сюрприз: оно нигде не пропишется в настройках.
Таким образом, при загрузке только одного изображения получаем + еще 3 в нагрузку.
Решение 1 (видимо правильное):
"Всегда изменять размеры (...) изображения, если они превышают установленные" читаем как "Всегда загружать такое изображение, перекрывая настройку "Генерировать (создавать)..." в popup окне загрузки.
Решение 2 (видимо нафиг такое не надо?)
Хак на скорую руку (требует проверки, не тестировал): настройка делает именно то, что написано:
Код:
if ($is_generate_tiny_image) {
if ($resize_tiny_image) {
$tiny_width = get_setting_value($settings, "tiny_image_max_width", 32);
$tiny_height = get_setting_value($settings, "tiny_image_max_height", 32);
$resize_tiny = @resize($uploaded_filename, $filepath, $images_root.$tiny_dir_suffix, $tiny_width, $tiny_height, $errors);
} else {
$copy_tiny = @copy($filepath.$uploaded_filename, $images_root.$tiny_dir_suffix.$uploaded_filename);
}
if ($resize_tiny || $copy_tiny) {
@chmod($images_root . $tiny_dir_suffix . $uploaded_filename, 0666);
}
}
Социальные закладки