function nf_testsuite_yesno_posthandler($processid, $taskid, $userid, $projectid) { if ($processid > 0 and $taskid > 0) { $nfclass = new nexflow($processid); $nfclass->set_currentTaskid($taskid); $msg = $nfclass->get_taskOptionalParm(); if ($_POST['action'] == 'Accept') { $nfclass->complete_task($taskid); nf_changeLog("{$msg} - Accepted"); return "Task: {$taskid}, Interactive Testsuite Function Completed - Accept Detected"; } else { if ($_POST['action'] == 'Reject') { $nfclass->cancel_task($taskid); nf_changeLog("{$msg} - Rejected"); return "Task: {$taskid}, Interactive Testsuite Function Completed - Reject Detected"; } } } }
} if ($layout == 'status') { echo display_wfFlowsStatus($usermodeUID, true); } else { echo display_wfFlowsTabular($usermodeUID, true); } break; case 'mytasks': echo taskconsoleShowNavbar('My Tasks'); echo display_mytasks(); break; case 'canceltask': if ($taskid != NULL) { $nfclass = new nexflow(); $nfclass->set_debug(false); $nfclass->cancel_task($taskid); } echo taskconsoleShowNavbar('My Tasks'); echo display_mytasks(); break; case 'Re-Assign': if (SEC_hasRights('nexflow.admin')) { $variable_id = COM_applyFilter($_POST['variable_id'], true); $reassign_uid = COM_applyFilter($_POST['task_reassign_uid']); $assignmentRecId = COM_applyFilter($_REQUEST['id'], true); $taskid = COM_applyFilter($_REQUEST['id'], true); $currentlyAssignedUID = nf_getAssignedUID($taskid); nf_reassign_task($taskid, $reassign_uid, $fromFromTaskUser, $variable_id); } echo taskconsoleShowNavbar('My Tasks'); echo display_mytasks($prj_id);
function nf_approveEditForm_posthandler($processid, $taskid, $userid, $projectid) { global $_CONF, $_TABLES, $_DB_table_prefix; $nfclass = new nexflow($processid); if ($projectid == '' or $projectid == 0) { $projectid = $nfclass->get_processVariable('PID'); } $actionopt = COM_applyFilter($_POST['actionopt']); $taskid = COM_applyFilter($_POST['taskid']); $formid = COM_applyFilter($_POST['formid']); $processid = COM_applyFilter($_POST['processid']); if ($projectid > 0) { $prj_formid = DB_getItem($_TABLES['nf_projectforms'], 'id', "project_id='{$projectid}' AND form_id='{$formid}'"); } $status = DB_getItem($_TABLES['nf_projectforms'], 'status', "id='{$prj_formid}'"); if (DB_count($_TABLES['nf_project_approvals'], array('uid', 'form_id', 'process_id'), array($userid, $prj_formid, $processid)) == 0) { DB_query("INSERT INTO {$_TABLES['nf_project_approvals']} (process_id,form_id,uid) VALUES ('{$processid}','{$prj_formid}','{$userid}')"); } if ($actionopt == 'accept') { DB_query("UPDATE {$_TABLES['nf_project_approvals']} SET status='3', date_updated=UNIX_TIMESTAMP() WHERE uid='{$userid}' AND form_id='{$prj_formid}'"); } elseif ($actionopt == 'reject') { DB_query("UPDATE {$_TABLES['nf_project_approvals']} SET status='6', date_updated=UNIX_TIMESTAMP() WHERE uid='{$userid}' AND form_id='{$prj_formid}'"); } if (trim($_POST['notes']) != '') { $notes = ppPrepareForDB($_POST['notes']); if (DB_count($_TABLES['nf_projectcomments'], array('project_id', 'task_id'), array($projectid, $taskid)) == 0) { $sql = "INSERT INTO {$_TABLES['nf_projectcomments']} (project_id, task_id, uid, timestamp, comment) "; $sql .= "VALUES ('{$projectid}','{$taskid}','{$userid}',UNIX_TIMESTAMP(),'{$notes}')"; } else { $sql = "UPDATE {$_TABLES['nf_projectcomments']} SET comment='{$notes}', timestamp=UNIX_TIMESTAMP() "; $sql .= "WHERE project_id='{$projectid}' AND task_id='{$taskid}' "; } DB_query($sql); } $formtype = DB_getItem($_TABLES['nf_projectforms'], 'formtype', "id='{$prj_formid}'"); if ($_POST['taskaction'] == 'Complete Task') { if ($processid > 0 and $taskid > 0) { $nfclass = new nexflow($processid, $userid); if ($actionopt == 'accept') { $statusmsg = "{$formtype} approved"; nf_updateStatusLog($projectid, $prj_formid, $statusmsg); $status = DB_getItem($_TABLES['nf_projectforms'], 'status', "id='{$prj_formid}'"); $nfclass = new nexflow($processid, $userid); // Set Process Variable to true which may be checked in the workflow $nfclass->set_ProcessVariable('Review_Approval', 0); $nfclass->complete_task($taskid); // If the form has not yet been rejected by another member then mark it accepted if ($status != 6) { DB_query("UPDATE {$_TABLES['nf_projectforms']} SET status='3' WHERE id='{$prj_formid}'"); } } elseif ($actionopt == 'reject') { DB_query("UPDATE {$_TABLES['nf_projectforms']} SET status='6' WHERE id='{$prj_formid}'"); $statusmsg = "{$formtype} Rejected"; nf_updateStatusLog($projectid, $prj_formid, $statusmsg); // Set Process Variable to false which may be checked in the workflow $nfclass->set_ProcessVariable('Review_Approval', 1); $nfclass->cancel_task($taskid); } else { return "Need to check 'Reject' or 'Accept' to complete the task"; } } } }