/**
  * Add a related product
  *
  * @param string $passkey
  * @param int $intProductId
  * @param int $intRelatedId
  * @param int $intAutoadd
  * @param float $fltQty
  * @return string
  */
 public function add_related_product($passkey, $intProductId, $intRelatedId, $intAutoadd, $fltQty)
 {
     if (!$this->check_passkey($passkey)) {
         return self::FAIL_AUTH;
     }
     Yii::app()->db->createCommand('SET FOREIGN_KEY_CHECKS=0;')->execute();
     $related = ProductRelated::LoadByProductIdRelatedId($intProductId, $intRelatedId);
     $objProduct = Product::model()->findByPk($intProductId);
     $new = false;
     if (!$related instanceof ProductRelated) {
         $related = new ProductRelated();
     }
     //You can't auto add a master product
     if ($objProduct->master_model == 1) {
         $intAutoadd = 0;
     }
     $related->product_id = $intProductId;
     $related->related_id = $intRelatedId;
     $related->autoadd = $intAutoadd;
     $related->qty = $fltQty;
     if (!$related->save()) {
         Yii::log("SOAP ERROR : Error saving related {$intProductId} " . print_r($related->getErrors()), 'error', 'application.' . __CLASS__ . "." . __FUNCTION__);
         return self::UNKNOWN_ERROR . " Error saving category {$intProductId} " . print_r($related->getErrors(), true);
     }
     Yii::app()->db->createCommand('SET FOREIGN_KEY_CHECKS=1;')->execute();
     return self::OK;
 }
 /**
  * Add a related product
  *
  * @param string $passkey
  * @param int $intProductId
  * @param int $intRelatedId
  * @param int $intAutoadd
  * @param float $fltQty
  * @return string
  * @throws SoapFault
  *
  * @soap
  */
 public function add_related_product($passkey, $intProductId, $intRelatedId, $intAutoadd, $fltQty)
 {
     self::check_passkey($passkey);
     Yii::app()->db->createCommand('SET FOREIGN_KEY_CHECKS=0;')->execute();
     $related = ProductRelated::LoadByProductIdRelatedId($intProductId, $intRelatedId);
     $objProduct = Product::model()->findByPk($intProductId);
     $new = false;
     if (!$related instanceof ProductRelated) {
         $related = new ProductRelated();
     }
     //You can't auto add a master product
     if ($objProduct->master_model == 1) {
         $intAutoadd = 0;
     }
     $related->product_id = $intProductId;
     $related->related_id = $intRelatedId;
     $related->autoadd = $intAutoadd;
     $related->qty = $fltQty;
     if (!$related->save()) {
         $strMsg = "Error saving related {$intProductId}";
         Yii::log("SOAP ERROR : {$strMsg} " . print_r($related->getErrors()), CLogger::LEVEL_ERROR, 'application.' . __CLASS__ . "." . __FUNCTION__);
         throw new SoapFault($strMsg, WsSoapException::ERROR_UNKNOWN);
     }
     Yii::app()->db->createCommand('SET FOREIGN_KEY_CHECKS=1;')->execute();
     return self::OK;
 }