You are here

function uc_product_kit_uc_update_cart_item in Ubercart 7.3

Same name and namespace in other branches
  1. 8.4 uc_product_kit/uc_product_kit.module \uc_product_kit_uc_update_cart_item()

Implements hook_uc_update_cart_item().

Handles individual products or entire kits.

File

uc_product_kit/uc_product_kit.module, line 1145
The product kit module for Ubercart.

Code

function uc_product_kit_uc_update_cart_item($nid, $data = array(), $qty, $cid = NULL) {
  if (!$nid) {
    return NULL;
  }
  $cid = !(is_null($cid) || empty($cid)) ? $cid : uc_cart_get_id();
  if (isset($data['kit_id'])) {

    // Product was listed individually.
    uc_product_uc_update_cart_item($nid, $data, $qty, $cid);
  }
  else {
    $kit = node_load($nid);
    foreach ($data as $p_nid => $product) {
      uc_product_uc_update_cart_item($p_nid, $product->data, $qty * $kit->products[$p_nid]->qty, $cid);
    }
  }
}