You are here

function uc_quote_node_update in Ubercart 8.4

Same name and namespace in other branches
  1. 7.3 shipping/uc_quote/uc_quote.module \uc_quote_node_update()

Implements hook_node_update().

1 call to uc_quote_node_update()
uc_quote_node_insert in shipping/uc_quote/uc_quote.module
Implements hook_node_insert().

File

shipping/uc_quote/uc_quote.module, line 49
The controller module for fulfillment modules that process physical goods.

Code

function uc_quote_node_update($node) {
  if (uc_product_is_product($node)) {
    $connection = \Drupal::database();
    if (isset($node->shipping_type)) {
      uc_quote_set_shipping_type('product', $node
        ->id(), $node->shipping_type);
    }
    if (!empty($node->shipping_address['street1'])) {
      $connection
        ->merge('uc_quote_product_locations')
        ->key([
        'nid' => $node
          ->id(),
      ])
        ->fields([
        'first_name' => $node->shipping_address['first_name'],
        'last_name' => $node->shipping_address['last_name'],
        'company' => $node->shipping_address['company'],
        'street1' => $node->shipping_address['street1'],
        'street2' => $node->shipping_address['street2'],
        'city' => $node->shipping_address['city'],
        'zone' => $node->shipping_address['zone'],
        'postal_code' => $node->shipping_address['postal_code'],
        'country' => $node->shipping_address['country'],
        'phone' => $node->shipping_address['phone'],
      ])
        ->execute();
    }
    else {
      $connection
        ->delete('uc_quote_product_locations')
        ->condition('nid', $node
        ->id())
        ->execute();
    }
  }
}