/** * Method to give profiles's shipping methods. * * @param integer $item_id item_id of product . * @param Array $address address object * @param Array $cartItemDetail Single cart item Detail . * @param Array $shipMethod Shipping method detail eg methodId,client, . * * @since 2.2 * @return null */ public function getItemsShipMethods($item_id, $address, $cartItemDetail, $shipMethod) { $shipMethsDetail = array(); $profieId = $this->getItemsShipProfileId($item_id); $productHelper = new productHelper(); // $address->billing_address = $post->get('bill', array(), 'ARRAY'); // $address->shipping_address $vars = new stdClass(); $vars->productDetail = $productHelper->getProductsShipRelFields($item_id); $vars->billing_address = $address->billing_address; $vars->shipping_address = $address->shipping_address; $vars->ship_chk = $address->ship_chk; $vars->shipMethId = $shipMethod['methodId']; $vars->cartItemDetail = $cartItemDetail; if (!empty($shipMethod['client'])) { // Call specific plugin trigger JPluginHelper::importPlugin('tjshipping', $shipMethod['client']); $dispatcher = JDispatcher::getInstance(); $plgRes = $dispatcher->trigger('TjShip_getShipMethodChargeDetail', array($vars)); $plgActionRes = array(); if (!empty($plgRes)) { $plgActionRes = $plgRes[0]; if (!empty($plgActionRes)) { $plgActionRes['client'] = $shipMethod['client']; } $shipMethsDetail = $plgActionRes; } } return $shipMethsDetail; }