Загружается оригинальная картинка в свойство "оригинальная картинка". Есть 3 свойства "большой квадрат", "маленький квадрат" и "прямоугольник"
так же есть 3 временных свойства "большой квадрат (временное)", "маленький квадрат (временное)" и "прямоугольник (временное)"
проблема в том, что картинки после второго ресайза добавляются те же самые, что и после первого. размеры одинаковые, хотя пути разные. в чем может быть проблема?
код
так же есть 3 временных свойства "большой квадрат (временное)", "маленький квадрат (временное)" и "прямоугольник (временное)"
проблема в том, что картинки после второго ресайза добавляются те же самые, что и после первого. размеры одинаковые, хотя пути разные. в чем может быть проблема?
код
Код |
---|
class AddImage{ function AddImageFunc($arFields){ $el = new CIBlockElement; $element_id = $arFields['ID']; // первый ресайз $res = CIBlockElement::GetList( array('sort'), array('ID' => $element_id), false, false, array("ID", "NAME", "PROPERTY_ORIGINAL") ); while($ob = $res->GetNextElement()){ $arFieldsElement = $ob->GetFields(); } $original_image_id = $arFieldsElement['PROPERTY_ORIGINAL_VALUE']; $big_r1 = CFile::ResizeImageGet( $original_image_id, array('width'=>820, 'height'=>820), BX_RESIZE_IMAGE_PROPORTIONAL_ALT, true ); $small_r1 = CFile::ResizeImageGet( $original_image_id, array('width'=>410, 'height'=>410), BX_RESIZE_IMAGE_PROPORTIONAL_ALT, true ); $rectangle_r1 = CFile::ResizeImageGet( $original_image_id, array('width'=>820, 'height'=>410), BX_RESIZE_IMAGE_PROPORTIONAL_ALT, true ); $big_file_array = CFile::MakeFileArray($big_r1['src']); $small_file_array = CFile::MakeFileArray($small_r1['src']); $rectangle_file_array = CFile::MakeFileArray($rectangle_r1['src']); $PROP = array( 'BIG_TIME' => array("n0" => $big_file_array), 'SMALL_TIME' => array("n0" => $small_file_array), 'RECTANGLE_TIME' => array("n0" => $rectangle_file_array) ); $el->Update($element_id, array('PROPERTY_VALUES' => $PROP)); // второй ресайз $res = CIBlockElement::GetList( array('sort'), array('ID' => $element_id), false, false, array("ID", "NAME", "PROPERTY_BIG_TIME", "PROPERTY_SMALL_TIME", "PROPERTY_RECTANGLE_TIME") ); while($ob = $res->GetNextElement()){ $arFieldsElement = $ob->GetFields(); } $big_image_id = $arFieldsElement['PROPERTY_BIG_TIME_VALUE']; $small_image_id = $arFieldsElement['PROPERTY_SMALL_TIME_VALUE']; $recangle_image_id = $arFieldsElement['PROPERTY_RECTANGLE_TIME_VALUE']; $big_r2 = CFile::ResizeImageGet( $big_image_id, array('width'=>820, 'height'=>820), BX_RESIZE_IMAGE_EXACT, true ); $small_r2 = CFile::ResizeImageGet( $small_image_id, array('width'=>410, 'height'=>410), BX_RESIZE_IMAGE_EXACT, true ); $rectangle_r2 = CFile::ResizeImageGet( $recangle_image_id, array('width'=>820, 'height'=>410), BX_RESIZE_IMAGE_EXACT, true ); $big_file_array2 = CFile::MakeFileArray($big_r2['src']); $small_file_array2 = CFile::MakeFileArray($small_r2['src']); $rectangle_file_array2 = CFile::MakeFileArray($rectangle_r2['src']); $PROP2 = array( 'BIG' => array("n0" => $big_file_array2), 'SMALL' => array("n0" => $small_file_array2), 'RECTANGLE' => array("n0" => $rectangle_file_array2) ); $el->Update($element_id, array('PROPERTY_VALUES' => $PROP2)); } } |