exposeMethod('addListPrice'); } /* * Function to add relation for specified source record id and related record id list * @param $request */ function addRelation($request) { $sourceModule = $request->getModule(); $sourceRecordId = $request->get('src_record'); $relatedModule = $request->get('related_module'); $relatedRecordIdList = $request->get('related_record_list'); $sourceModuleModel = Vtiger_Module_Model::getInstance($sourceModule); $relatedModuleModel = Vtiger_Module_Model::getInstance($relatedModule); $relationModel = Vtiger_Relation_Model::getInstance($sourceModuleModel, $relatedModuleModel); foreach($relatedRecordIdList as $relatedRecordId) { $relationModel->addRelation($sourceRecordId,$relatedRecordId,$listPrice); if($relatedModule == 'PriceBooks'){ $recordModel = Vtiger_Record_Model::getInstanceById($relatedRecordId); if ($sourceRecordId && ($sourceModule === 'Products' || $sourceModule === 'Services')) { $parentRecordModel = Vtiger_Record_Model::getInstanceById($sourceRecordId, $sourceModule); $recordModel->updateListPrice($sourceRecordId, $parentRecordModel->get('unit_price')); } } } } /** * Function adds Products/Services-PriceBooks Relation * @param type $request */ function addListPrice($request) { $sourceModule = $request->getModule(); $sourceRecordId = $request->get('src_record'); $relatedModule = $request->get('related_module'); $relInfos = $request->get('relinfo'); $sourceModuleModel = Vtiger_Module_Model::getInstance($sourceModule); $relatedModuleModel = Vtiger_Module_Model::getInstance($relatedModule); $relationModel = Vtiger_Relation_Model::getInstance($sourceModuleModel, $relatedModuleModel); foreach($relInfos as $relInfo) { $price = CurrencyField::convertToDBFormat($relInfo['price'], null, true); $relationModel->addListPrice($sourceRecordId, $relInfo['id'], $price); } } } ?>