The original picture is loaded into the "original picture" property. There are 3 properties "big square", "small square" and "rectangle"
there are also 3 temporary properties "big square (temporary)", "small square (temporary)" and "rectangle (temporary)"
the problem is that the pictures after the second resize are added the same as after the first. sizes are the same, although the paths are different. what could be the problem?
code
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)); } }