コード例 #1
0
ファイル: viewproject.php プロジェクト: hostellerie/nexpro
     }
     $display = '';
     $display .= "</div>";
     $display .= COM_siteFooter();
     echo $display;
     $msg = 'removeTask';
     exit;
     break;
 case 'copy':
     if (empty($pid)) {
         $pid = DB_getItem($_TABLES['prj_tasks'], 'pid', "tid={$tid}");
     }
     $uid = $_USER['uid'];
     $source_task = $tid;
     $protoken = prj_getProjectPermissions($pid, $uid, $task);
     $ownertoken = getProjectToken($pid, $uid, "{$_TABLES['prj_users']}");
     if ($protoken['full'] != 0 || $ownertoken != 0) {
         //Copy the Tasks
         prj_beginCopyTasks($pid, $source_task);
         $logentry = "Task ID-{$source_task} was copied";
         prg_updateAuditLog($logentry);
     } else {
         echo prj_breadcrumbs($tid, $pid, $strings["copy_task"], $strings["copy_subtask"]);
         $block = new block();
         $msg = 'permissiondenied';
         include "includes/messages.php";
         $block->messagebox($msgLabel);
         if (DB_getItem($_TABLES['prj_tasks'], 'parent_task', "tid = {$tid}") == 0) {
             $block->heading($strings["copy_task"]);
         } else {
             $block->heading($strings["copy_subtask"]);
コード例 #2
0
ファイル: projects_gantt.php プロジェクト: hostellerie/nexpro
function prj_paintProjectBar($testMonitor, $pid, $name, $startdate, $enddate, $parent_task, $progress, $status, $expanded, $userid, $nameIndent, &$graph, &$count, &$row, $sm, $stm)
{
    global $_TABLES, $_CONF, $_PRJCONF;
    $name = html_entity_decode($name);
    if (strlen($name) > $_PRJCONF['project_name_length']) {
        $name = substr($name, 0, $_PRJCONF['project_name_length']);
        $name .= "...";
    }
    $strdate = strftime("%Y/%m/%d", $startdate);
    $edate = strftime("%Y/%m/%d", $enddate);
    $sql = 'SELECT  c.fullname ';
    $sql .= "FROM {$_TABLES['prj_users']} a ";
    $sql .= "INNER JOIN {$_TABLES['prj_projects']} b on a.pid=b.pid ";
    $sql .= "INNER JOIN {$_TABLES['users']} c on a.uid=c.uid ";
    $sql .= "WHERE a.role='o' AND a.pid={$pid}";
    $result2 = DB_query($sql);
    list($owner) = DB_fetchArray($result2);
    $link = $_CONF['site_url'] . "/nexproject/viewproject.php?pid=" . $pid;
    $count = $count + 1;
    $doesAnyoneDependOnMe = DB_count($_TABLES['prj_projects'], 'parent_id', $pid);
    if (array_keys($expanded, $pid) != array()) {
        $sign = '[-]';
    } else {
        $sign = '[+]';
    }
    if ($doesAnyoneDependOnMe == 0) {
        $sign = '';
    }
    if ($strdate == $edate) {
        $milestone = new Milestone($row, "{$nameIndent}{$name}   {$sign}", $strdate);
        $milestone->mark->SetType(MARK_DIAMOND);
        //$milestone->title->SetFont(FF_ARIAL,FS_BOLD,10);
        if ($sign != '') {
            $tempval2 = $_SERVER['PHP_SELF'];
            $milestone->title->SetCSIMTarget("javascript:projectGanttClick('{$pid}','{$sign}','{$tempval}', '{$gdate1}', '{$gdate2}', '{$tempval2}');");
        }
        $graph->Add($milestone);
    } else {
        $activity = new GanttBar($count, "{$nameIndent}{$name}   {$sign}", "{$strdate}", "{$edate}", "{$owner}");
        if ($status == 0) {
            // Yellow diagonal line pattern on a red background
            $activity->SetPattern(GANTT_SOLID, "darkgreen");
            $activity->progress->SetPattern(GANTT_RDIAG, "black");
            $activity->progress->SetFillColor("white");
        } elseif ($status == 1) {
            $activity->SetPattern(GANTT_SOLID, "yellow");
            $activity->progress->SetPattern(GANTT_RDIAG, "black");
            $activity->progress->SetFillColor("white");
        } else {
            $activity->SetPattern(GANTT_SOLID, "red");
            $activity->progress->SetPattern(GANTT_RDIAG, "black");
            $activity->progress->SetFillColor("white");
        }
        // Set absolute height
        $activity->SetHeight(10);
        $activity->progress->Set($progress / 100);
        // Specify progress
        $activity->SetCSIMTarget("{$link}");
        $activity->SetCSIMAlt($progress . "% completed");
        $tempval2 = $_SERVER['PHP_SELF'];
        if ($sign != '') {
            $activity->title->SetCSIMTarget("javascript:projectGanttClick('{$pid}','{$sign}','{$tempval}', '{$gdate1}', '{$gdate2}', '{$tempval2}');");
        }
        //$activity->title->SetFont(FF_ARIAL,FS_NORMAL,9);
        $activity->title->SetCSIMAlt($progress . "% completed");
        $qconstraints = DB_query("SELECT pid FROM {$_TABLES['prj_projects']} WHERE parent_id='{$pid}' ORDER BY lhs ASC");
        $numconstraints = DB_numRows($qconstraints);
        if ($sign == '[-]') {
            for ($c = 1; $c <= $numconstraints; $c++) {
                list($testingThisPID) = DB_fetchArray($qconstraints);
                $tempPerms = prj_getProjectPermissions($testingThisPID, $userid);
                $tempOwner = getProjectToken($testingThisPID, $userid, "{$_TABLES['prj_users']}");
                $buffer = 0;
                if (array_keys($expanded, $pid) != array() && DB_count($_TABLES['prj_projects'], 'parent_id', $pid) > 0) {
                    if ($showTasksForExpandedProjects == 'true') {
                        if ($testMonitor == false) {
                            //my projects
                            if ($tempPerms['teammember'] == '1' || $tempPerms['full'] == '1' || $tempOwner != 0) {
                                prj_drawProjectTasksGanttBar($tmpg, $buffer, $tmpcount, $pid, $nameIndent, 0, 1, $sm, $stm);
                            }
                        } else {
                            //all projects
                            if ($tempPerms['monitor'] == '1' || $tempPerms['teammember'] == '1' || $tempPerms['full'] == '1' || $tempOwner != 0) {
                                prj_drawProjectTasksGanttBar($tmpg, $buffer, $tmpcount, $pid, $nameIndent, 0, 1, $sm, $stm);
                            }
                        }
                    }
                }
                if ($testMonitor == false) {
                    if ($tempPerms['teammember'] == '1' || $tempPerms['full'] == '1' || $tempOwner == '1') {
                        $activity->SetConstrain($row + $c + $buffer, CONSTRAIN_STARTSTART, "maroon4");
                    }
                } else {
                    if ($tempPerms['monitor'] == '1' || $tempPerms['teammember'] == '1' || $tempPerms['full'] == '1' || $tempOwner == '1') {
                        $activity->SetConstrain($row + $c + $buffer, CONSTRAIN_STARTSTART, "maroon4");
                    }
                }
            }
            //end for
        }
        //end if $sign==[-]
        // Add line to Gantt Chart
        $graph->Add($activity);
    }
    //end else
    $row++;
}