$self = whoami(); $GLOBALS['dh'] = AMACompleteDataHandler::instance(MultiPort::getDSN($_SESSION['sess_selected_tester'])); $data = ''; $containerDIV = CDOMElement::create('div', 'id:moduleContent'); try { if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST)) { // there are post datas, save them $conditionPOST = $_POST['condition']; $conditionParamsPOST = $_POST['param']; $savedOK = false; fixPOSTArray($conditionPOST, $conditionParamsPOST); if (!empty($conditionPOST)) { $conditionSetId = isset($_POST['conditionSetId']) && intval($_POST['conditionSetId']) > 0 ? intval($_POST['conditionSetId']) : null; $description = isset($_POST['description']) && trim($_POST['description']) !== '' ? trim($_POST['description']) : ''; if ($description !== '') { $saveCondition = new CompleteConditionSet($conditionSetId, $description); $saveCondition->setOperation(Operation::buildOperationTreeFromPOST($conditionPOST)); $savedOK = $GLOBALS['dh']->saveCompleteConditionSet($saveCondition); if ($savedOK) { $msg = translateFN('set di condizioni salvato'); } else { $msg = translateFN('problemi con il salvataggio'); } } else { $msg = translateFN('la descrizione non può essere vuota'); } } else { $msg = translateFN('niente da salvare'); } /// if it's an ajax request, output html and die if (isset($_POST['requestType']) && trim($_POST['requestType']) === 'ajax') {
/** * loads a CompleteConditionSet from the DB, * returning the generated object * * @param int $id_conditionSet the id of the condition set to be loaded * @throws Exception * @return CompleteConditionSet * @access public */ public function getCompleteConditionSet($id_conditionSet) { $sql = 'SELECT A.descrizione, B.* FROM `' . self::$PREFIX . 'conditionset` A, `' . self::$PREFIX . 'operations` B WHERE A.id=? AND A.id = B.id_conditionset ORDER BY priority ASC, A.id ASC '; $arrOperations = $this->getAllPrepared($sql, $id_conditionSet, AMA_FETCH_ASSOC); if (!AMA_DB::isError($arrOperations) && !empty($arrOperations)) { $conditionSet = new CompleteConditionSet($arrOperations[0]['id_conditionset'], $arrOperations[0]['descrizione']); $conditionSet->setOperation(Operation::buildOperationTreeFromArray($arrOperations)); return $conditionSet; } else { throw new Exception('Could not load conditionSet', ADA_ERROR_ID_UNKNOWN_ERROR); return null; } }