function fn_yandex_delivery_pre_place_order(&$cart, $allow, $product_groups) { foreach ($cart['product_groups'] as $group_key => &$group) { if (!empty($group['chosen_shippings'])) { foreach ($group['chosen_shippings'] as &$shipping) { if ($shipping['module'] == 'yandex' && !empty($shipping['pickup_data'])) { if (!empty($shipping['pickup_data']['schedules'])) { $shipping['pickup_data']['work_time'] = YandexDelivery::getScheduleDays($shipping['pickup_data']['schedules']); } } } } } }
private function _fillSessionData($response, $delivery_index, $pickuppoint_index) { $group_key = $this->_shipping_info['keys']['group_key']; $shipping_id = $this->_shipping_info['keys']['shipping_id']; if ($response['data'][$delivery_index]['type'] == 'PICKUP') { $response['data'][$delivery_index]['schedule_days'] = YandexDelivery::getScheduleDays($response['data'][$delivery_index]['pickupPoints'][$pickuppoint_index]['schedules']); } $_SESSION['cart']['shippings_extra']['yd']['index'][$group_key][$shipping_id] = $delivery_index; $_SESSION['cart']['shippings_extra']['yd']['pickup_index'][$group_key][$shipping_id] = $pickuppoint_index; $_SESSION['cart']['shippings_extra']['yd']['data'][$group_key][$shipping_id] = $response['data'][$delivery_index]; $_SESSION['cart']['shippings_extra']['yd']['package_size'][$group_key] = $this->getSizePackage($this->_shipping_info['package_info']); return true; }