exposeMethod('checkCyclicDependency'); } public function checkCyclicDependency(Vtiger_Request $request) { $module = $request->get('sourceModule'); $moduleModel = Vtiger_Module_Model::getInstance($module); $sourceField = $request->get('sourcefield'); $targetField = $request->get('targetfield'); $result = Vtiger_DependencyPicklist::checkCyclicDependency($module, $sourceField, $targetField); if($result) { $currentSourceField = Vtiger_DependencyPicklist::getPicklistSourceField($module, $sourceField, $targetField); $currentSourceFieldModel = Vtiger_Field_Model::getInstance($currentSourceField, $moduleModel); $targetFieldModel = Vtiger_Field_Model::getInstance($targetField, $moduleModel); $errorMessage = vtranslate('LBL_CYCLIC_DEPENDENCY_ERROR', $request->getModule(false)); $message = sprintf($errorMessage, '"'.vtranslate($currentSourceFieldModel->get('label'), $module).'"', '"'.vtranslate($targetFieldModel->get('label'), $module).'"'); } $response = new Vtiger_Response(); $response->setResult(array('result'=>$result, 'message' => $message)); $response->emit(); } }