Example #1
0
     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);
     break;
 case 'function':
     // Intertactive WorkFlow action - Execute CallBack Function
     $function_handler = COM_applyFilter($_POST['function_handler']);
     $prj_id = COM_applyFilter($_POST['projectid']);
     $taskid = COM_applyFilter($_POST['taskid']);
     $processid = COM_applyFilter($_POST['processid']);
     if (function_exists($function_handler)) {
         $errmsg = $function_handler($processid, $taskid, $usermodeUID, $prj_id);
     }
     echo taskconsoleShowNavbar('My Tasks');
     echo display_mytasks();
Example #2
0
}
switch ($op) {
    case 'deltask':
        $assignmentRecId = COM_applyFilter($_REQUEST['taskid'], true);
        DB_query("DELETE FROM {$_TABLES['nf_productionassignments']} WHERE task_id='{$assignmentRecId}'");
        // If there are no more assignment records for this task then remove the workflow queue item
        if (DB_count($_TABLES['nf_productionassignments'], 'task_id', $taskid) == 0) {
            DB_query("DELETE FROM {$_TABLES['nf_queue']} WHERE id='{$taskid}'");
            DB_query("DELETE FROM {$_TABLES['nf_projecttaskhistory']} WHERE task_id='{$taskid}'");
        }
        break;
    case 'reassign':
        $variable_id = COM_applyFilter($_POST['variable_id'], true);
        $reassign_uid = COM_applyFilter($_POST['task_reassign_uid']);
        $assignmentRecId = COM_applyFilter($_REQUEST['id'], true);
        nf_reassign_task($taskid, $reassign_uid, $currentlyAssignedUID, $variable_id);
        break;
    case 'assignback':
        nf_revertToOriginalOwner($assignmentRecId);
        break;
    case 'notify':
        $variable_id = COM_applyFilter($_POST['variable_id'], true);
        $notifyUID = $currentlyAssignedUID;
        $email = DB_getItem($_TABLES['users'], 'email', "uid='{$notifyUID}'");
        $message = nl2br($_POST['message']) . "\n\n";
        if ($email != '') {
            $sql = "SELECT a.id, a.nf_templateDataID,  b.taskname FROM {$_TABLES['nf_queue']} a ";
            $sql .= "LEFT JOIN {$_TABLES['nf_templatedata']} b on a.nf_templateDataID = b.id ";
            $sql .= "WHERE a.id='{$taskid}' ";
            $A = DB_fetchArray(DB_query($sql), false);
            $notifyUser = COM_getDisplayName($notifyUID);
Example #3
0
    $status = NXCOM_filterInt($status);
    if ($status == 0) {
        $nfclass->hold_process($taskid);
    } elseif ($status == 3) {
        $nfclass->unhold_process($taskid);
    }
    header("Cache-Control: no-store, no-cache, must-revalidate");
    header("content-type: text/xml");
    $XML = "<result>";
    $XML .= "</result>";
    print $XML;
} elseif ($op == 'setowner') {
    if (SEC_hasRights('nexflow.admin')) {
        $proessessid = DB_getItem($_TABLES['nf_queue'], 'nf_processID', "id={$taskid}");
        $assigneduid = DB_getItem($_TABLES['nf_productionassignments'], 'uid', "task_id={$taskid}");
        nf_reassign_task($taskid, $taskuser, $assigneduid, $variableid);
        $sql = "SELECT a.id, b.taskname FROM {$_TABLES['nf_queue']} a LEFT JOIN {$_TABLES['nf_templatedata']} b ON a.nf_templateDataID=b.id WHERE a.id={$taskid};";
        $res = DB_query($sql);
        $A = DB_fetchArray($res);
        $comment = 'Task Owner change, was ' . COM_getDisplayName($assigneduid) . ', now ';
        $comment .= COM_getDisplayName($taskuser) . " for task: {$A['taskname']}";
        $sql = "INSERT INTO {$_TABLES['nf_projectcomments']} (project_id, task_id, uid, timestamp, comment) ";
        $sql .= "VALUES ('{$project_id}',{$A['id']},'{$_USER['uid']}',UNIX_TIMESTAMP(),'{$comment}')";
        DB_query($sql);
    }
    require_once 'libprocessdetails.php';
    $p = new Template($_CONF['path_layout'] . 'nexflow/taskconsole');
    $p->set_file(array('outstanding' => 'project_detail_outstandingtasks.thtml', 'outstandingtasks' => 'project_detail_outstandingtask_record.thtml'));
    $p->set_var('rowid', $rowid);
    $p->set_var('project_id', $project_id);
    processDetailGetOutstandingTasks($project_id, $p);