Ejemplo n.º 1
0
function prj_beginCopyTasks($pid, $source_task)
{
    global $_TABLES, $_CONF, $_USER;
    $insertID = prj_insertTask($pid, 0);
    $sql = "select tid, pid, lhs, rhs, priority_id, status_id, duration_type_id, progress_id, name, parent_task, description, notification_enabled_flag, keywords, ";
    $sql .= "create_date, start_date, estimated_end_date, planned_end_date, actual_end_date, last_updated_date, duration, progress, ";
    $sql .= "make_private_enabled_flag from {$_TABLES['prj_tasks']} where tid='{$source_task}' and pid='{$pid}'";
    $res = DB_query($sql);
    $A = DB_fetchArray($res);
    $A['tid'] = $insertID;
    $A['name'] = "Copy of " . $A['name'];
    prj_updateTask($A);
    //copy permissions
    $sql = "insert into {$_TABLES['prj_projPerms']} (pid, taskid, uid, gid, viewread, writechange, fullaccess, seedetails) ";
    $sql .= "(select '{$pid}','{$insertID}', uid, gid, viewread, writechange, fullaccess, seedetails  from {$_TABLES['prj_projPerms']} ";
    $sql .= "where taskid='{$source_task}' and pid='{$pid}')";
    DB_query($sql);
    //copy ownership
    $sql = "insert into {$_TABLES['prj_task_users']} (tid, uid, role) ";
    $sql .= "(select '{$insertID}', uid, role from {$_TABLES['prj_task_users']} where tid='{$source_task}')";
    DB_query($sql);
    prj_copyProjectTasks($pid, $pid, $source_task, $insertID, 'Copy of ');
}
Ejemplo n.º 2
0
         $results1 = DB_query("SELECT uid FROM {$_TABLES['prj_users']} WHERE pid={$id}");
         $nrows = DB_numRows($results1);
         if ($nrows != "0") {
             for ($i = 0; $i < $nrows; $i++) {
                 list($adduid) = DB_fetchArray($results1);
                 $currentuid = $_USER['uid'];
                 if ($adduid != $currentuid) {
                     DB_query("INSERT INTO {$_TABLES['prj_users']} (pid, uid, role) VALUES ({$lastid}, {$adduid}, 'r')");
                     if ($is_using_docmgmt_flag == 'Y') {
                         DB_query("INSERT INTO {$_TABLES['nxfile_access']} (catid,uid,view, upload, upload_direct, upload_ver, approval, admin) VALUES ('{$newcid}','{$adduid}','1','1','0','0','0','0')");
                     }
                 }
             }
         }
         // Copy the Tasks
         prj_copyProjectTasks($id, $lastid, 0);
     }
     //end overall if
     $msg = 'copyProject';
     break;
 case 'erase':
     $token = '';
     $uid = $_USER['uid'];
     $protoken = prj_getProjectPermissions($id, $uid);
     $ownertoken = getTaskToken($id, $uid, "{$_TABLES['prj_task_users']}", "{$_TABLES['prj_tasks']}");
     if ($protoken['full'] != 0) {
         $result = DB_query("SELECT cid, is_using_docmgmt_flag, is_using_forum_flag, fid FROM {$_TABLES['prj_projects']} WHERE pid='{$id}'");
         list($cid, $document, $discussion, $fid) = DB_fetchArray($result);
         DB_query("DELETE FROM {$_TABLES['prj_projects']} WHERE pid='{$id}'");
         $result1 = DB_query("SELECT tid FROM {$_TABLES['prj_tasks']} WHERE {$_TABLES['prj_tasks']}.pid='{$id}'");
         DB_query("DELETE FROM {$_TABLES['prj_users']} WHERE pid={$id} and uid='{$uid}'");