protected function edostavka_calculate($package)
 {
     $state = isset($package['destination']['state']) && !empty($package['destination']['state']) ? $package['destination']['state'] : WC()->customer->get_state();
     $connect = new WC_Edostavka_Connect();
     $connect->set_services($this->edostavka_services());
     $_package = $connect->set_package($package);
     $_package->set_minimum_height($this->minimum_height);
     $_package->set_minimum_width($this->minimum_width);
     $_package->set_minimum_length($this->minimum_length);
     $_package->set_minimum_weight($this->minimum_weight);
     $connect->set_city_origin($this->city_origin);
     $connect->set_city_destination($state);
     $connect->set_debug($this->debug);
     $connect->set_login($this->login);
     $connect->set_password($this->password);
     if (isset($package['post_data']['billing_date']) && !empty($package['post_data']['billing_date'])) {
         // Конвертируем дату доствки в нужный формат для СДЕК
         $date_string = $package['post_data']['billing_date'];
         $date_time = strtotime($date_string);
         $date_conv = date('Y-m-d', $date_time);
         $connect->set_date($date_conv);
     }
     $shipping = $connect->get_shipping();
     if (!empty($shipping)) {
         return $shipping;
     } else {
         if ('yes' == $this->debug) {
             $this->log->add('edostavka', 'Корзина только с виртуальными продуктами.');
         }
         return array();
     }
 }
 protected function edostavka_calculate($package)
 {
     $connect = new WC_Edostavka_Connect();
     $connect->set_services($this->edostavka_services());
     $_package = $connect->set_package($package);
     $_package->set_minimum_height($this->minimum_height);
     $_package->set_minimum_width($this->minimum_width);
     $_package->set_minimum_length($this->minimum_length);
     $_package->set_minimum_weight($this->minimum_weight);
     $connect->set_city_origin($this->city_origin);
     $connect->set_debug($this->debug);
     $connect->set_login($this->login);
     $connect->set_password($this->password);
     if (!empty($package['destination']['state_id']) && is_numeric($package['destination']['state_id'])) {
         $connect->set_city_destination($package['destination']['state_id']);
     } elseif ('yes' == $this->debug) {
         $this->log->add('edostavka', 'Не удалось получить данные о городе получателя.');
     }
     if (isset($package['post_data']['billing_date']) && !empty($package['post_data']['billing_date'])) {
         // Конвертируем дату доствки в нужный формат для СДЕК
         $date_string = $package['post_data']['billing_date'];
         $date_time = strtotime($date_string);
         $date_conv = date('Y-m-d', $date_time);
         $connect->set_date($date_conv);
     }
     $shipping = $connect->get_shipping();
     if (!empty($shipping)) {
         return $shipping;
     } else {
         if ('yes' == $this->debug) {
             $this->log->add('edostavka', 'Не удалось получить ни одного метода доставки.');
         }
         return array();
     }
 }