. * * For more information, contact Colosa Inc, 2566 Le Jeune Rd., * Coral Gables, FL, 33134, USA, or email info@colosa.com. * */ if (($RBAC_Response=$RBAC->userCanAccess("PM_FACTORY"))!=1) return $RBAC_Response; require_once('classes/model/Dynaform.php'); require_once 'classes/model/ObjectPermission.php'; require_once 'classes/model/Step.php'; require_once 'classes/model/StepSupervisor.php'; require_once 'classes/model/CaseTrackerObject.php'; /* In here we are deleting all datas about this Dynaform into DB */ if(isset($_POST['function'])) $sfunction =$_POST['function']; else $sfunction =$_POST['functions']; switch($sfunction){ case 'getRelationInfDynaform': $oStepSupervisor = new StepSupervisor(); $fields2=$oStepSupervisor->loadInfo($_POST['DYN_UID']); $result=false; if(is_array($fields2)){ $result=true; } return print $result; break; case 'getDynaformAssign': $oStep = new Step(); $aDependent=$oStep->loadInfoAssigDynaform($_POST['PRO_UID'],$_POST['DYN_UID']); $result=false; if(is_array($aDependent)){ $result=true; } return print $result; break; case 'deleteDynaform': $dynaform = new dynaform(); if (!isset($_POST['DYN_UID'])) return; //in table dynaform $dynaform->remove( $_POST['DYN_UID'] ); //in table Step $oStep = new Step(); $oStep->removeStep('DYNAFORM', $_POST['DYN_UID']); //in table ObjectPermission $oOP = new ObjectPermission(); $oOP->removeByObject('DYNAFORM', $_POST['DYN_UID']); //in table Step_supervisor $oSS = new StepSupervisor(); $oSS->removeByObject('DYNAFORM', $_POST['DYN_UID']); //in table case_tracker_object $oCTO = new CaseTrackerObject(); $oCTO->removeByObject('DYNAFORM', $_POST['DYN_UID']); break; /** erik: new and improved methods */ case 'getDynaformSupervisorRelations': try { $oStepSupervisor = new StepSupervisor(); $DYN_UIDS = explode(',', $_POST['DYN_UID']); $result->passed = true; foreach($DYN_UIDS as $i=>$DYN_UID) { $relationsList = $oStepSupervisor->loadInfo($DYN_UID); if( is_array($relationsList) ) { $result->passed = false; break; } } $result->success = true; $result->msg = $result->passed ? '' : G::LoadTranslation('ID_DYNAFORM_SUPERVISOR_RELATION_EXISTS'); } catch (Exception $e) { $result->success = false; $result->passed = false; $result->msg = $e->getMessage(); } print G::json_encode($result); break; case 'getDynaformTaskRelations': try { $oStepSupervisor = new StepSupervisor(); $DYN_UIDS = explode(',', $_POST['DYN_UID']); $results = Array(); $result->passed = true; foreach($DYN_UIDS as $i=>$DYN_UID) { $oStep = new Step(); $aDependent = $oStep->loadInfoAssigDynaform($_POST['PRO_UID'], $DYN_UID); if( is_array($aDependent) ) { $result->passed = false; break; } } $result->success = true; $result->msg = $result->passed ? '' : G::LoadTranslation('ID_DYNAFORM_TASK_RELATION_EXISTS'); } catch (Exception $e) { $result->success = false; $result->msg = $e->getMessage(); } print G::json_encode($result); break; case 'removeDynaform': try { if ( ! isset($_POST['DYN_UID']) ) throw new Exception('DYN_UID was not set!'); $DYN_UIDS = explode(',', $_POST['DYN_UID']); foreach($DYN_UIDS as $i=>$DYN_UID) { $dynaform = new dynaform(); //in table dynaform $dynaform->remove( $DYN_UID ); //in table Step $oStep = new Step(); $oStep->removeStep('DYNAFORM', $DYN_UID); //in table ObjectPermission $oOP = new ObjectPermission(); $oOP->removeByObject('DYNAFORM', $DYN_UID); //in table Step_supervisor $oSS = new StepSupervisor(); $oSS->removeByObject('DYNAFORM', $DYN_UID); //in table case_tracker_object $oCTO = new CaseTrackerObject(); $oCTO->removeByObject('DYNAFORM', $DYN_UID); } $result->success = true; $result->msg = G::LoadTranslation('ID_DYNAFORM_REMOVED'); } catch (Exception $e) { $result->success = false; $result->msg = $e->getMessage(); } print G::json_encode($result); break; }