Пример #1
1
    } else {
        $py = $y;
    }
    $today = date("d");
    $calobj = new calendar();
    $cal = $calobj->getCal($m, $y, $id);
    $weeks = $cal->calendar;
    // print_r($weeks);
    $mstring = strtolower(date('F', mktime(0, 0, 0, $m, 1, $y)));
    $mstring = $langfile[$mstring];
    $template->assign("mstring", $mstring);
    $template->assign("m", $m);
    $template->assign("y", $y);
    $template->assign("thism", $thism);
    $template->assign("thisd", $thisd);
    $template->assign("thisy", $thisy);
    $template->assign("nm", $nm);
    $template->assign("pm", $pm);
    $template->assign("ny", $ny);
    $template->assign("py", $py);
    $template->assign("weeks", $weeks);
    $template->assign("id", $id);
    $template->display("calbody_project.tpl");
} elseif ($action == "tasklists") {
    $listObj = new tasklist();
    $theLists = $listObj->getProjectTasklists($id);
    echo "<option value=\"-1\" selected=\"selected\">{$langfile['chooseone']}</option>";
    foreach ($theLists as $list) {
        echo "<option value = \"{$list['ID']}\">{$list['name']}</option>";
    }
}
Пример #2
0
 /**
  * Return all open tasklists associated to a given milestones
  *
  * @param int $milestone Milestone ID
  * @return array $lists Details of the tasklists
  */
 private function getMilestoneTasklists($milestone)
 {
     global $conn;
     $milestone = (int) $milestone;
     $objtasklist = new tasklist();
     $sel = $conn->query("SELECT ID FROM tasklist WHERE milestone = {$milestone} AND status = 1 ORDER BY ID ASC");
     $lists = array();
     if ($milestone) {
         while ($listId = $sel->fetch()) {
             array_push($lists, $objtasklist->getTasklist($listId["ID"]));
         }
     }
     if (!empty($lists)) {
         return $lists;
     } else {
         return false;
     }
 }
Пример #3
0
 /**
  * Marks a project, its tasks, tasklists and milestones as "finished / closed"
  *
  * @param int $id Eindeutige Projektnummer
  * @return bool
  */
 function close($id)
 {
     global $conn;
     $id = (int) $id;
     $mile = new milestone();
     $milestones = $mile->getAllProjectMilestones($id, 100000);
     if (!empty($milestones)) {
         foreach ($milestones as $miles) {
             $close_milestones = $conn->query("UPDATE milestones SET status = 0 WHERE ID = {$miles['ID']}");
         }
     }
     $task = new task();
     $tasks = $task->getProjectTasks($id);
     if (!empty($tasks)) {
         foreach ($tasks as $tas) {
             $close_tasks = $conn->query("UPDATE tasks SET status = 0 WHERE ID = {$tas['ID']}");
         }
     }
     $tasklist = new tasklist();
     $tasklists = $tasklist->getProjectTasklists($id);
     if (!empty($tasklists)) {
         foreach ($tasklists as $tl) {
             $close_tasklists = $conn->query("UPDATE tasklist SET status = 0 WHERE ID = {$tl['ID']}");
         }
     }
     $upd = $conn->query("UPDATE projekte SET status=0 WHERE ID = {$id}");
     if ($upd) {
         $nam = $conn->query("SELECT name FROM projekte WHERE ID = {$id}")->fetch();
         $nam = $nam[0];
         $this->mylog->add($nam, 'projekt', 5, $id);
         return true;
     } else {
         return false;
     }
 }
Пример #4
0
 private function addTasks($project_id, $milestonesHash, $taskListArray)
 {
     $addTaskList = new tasklist();
     $addTask = new task();
     foreach ($taskListArray->{'todo-list'} as $taskList) {
         $name = $taskList->{'name'};
         if (isset($milestonesHash)) {
             $mid = $taskListArray->{'milestone-id'};
             if (strlen($mid) > 0) {
                 $milestoneId = $milestonesHash["{$mid}"];
             } else {
                 $milestoneId = 0;
             }
         }
         $desc = $taskListArray->{'description'};
         $access = 0;
         $tasklistId = $addTaskList->add_liste($project_id, $name, $desc, $access, $milestoneId);
         foreach ($taskList->{'todo-items'}->{'todo-item'} as $todo) {
             //$end = strtotime("+1 month", strtotime($todo->{'created-on'}));
             $end = strtotime($todo->{'created-on'} . " +1month");
             $title = $todo->{'name'};
             $text = $todo->{'content'};
             if (!$title) {
                 $title = $text;
             }
             $uid = $todo->{'responsible-party-id'};
             $assigned = $this->peopleHash["{$uid}"];
             //class.task::add() needed to be modified to pass a timestamp directly.
             if ($addTask->add($end, $title, $text, $tasklistId, $assigned, $project_id)) {
                 ++$this->taskCount;
             }
         }
     }
 }
Пример #5
0
include("init.php");
if (!isset($_SESSION["userid"])) {
    $template->assign("loginerror", 0);
    $template->display("login.tpl");
    die();
}
$task = new task();

$project = new project();
$myprojects = $project->getMyProjects($userid);
$milestone = new milestone();
$milestones = array();
$cou = 0;
$tasknum = 0;
$ltasksa = array();
$tlist = new tasklist();
if (!empty($myprojects)) {
    foreach($myprojects as $proj) {
        $tasks = $task->getAllMyProjectTasks($proj["ID"], 10000);
        $lists = $tlist->getProjectTasklists($proj["ID"], 1);
        $donetasks = $task->getMyDoneProjectTasks($proj["ID"], 10000);

        $myprojects[$cou]['tasks'] = $tasks;
        $myprojects[$cou]['oldtasks'] = $donetasks;
        $myprojects[$cou]['lists'] = $lists;

        if (!empty($tasks)) {
            $pcount = count($tasks);
        } else {
            $pcount = 0;
        }
Пример #6
0
 }
 if (!chkproject($userid, $id)) {
     $errtxt = $langfile["notyourproject"];
     $noperm = $langfile["accessdenied"];
     $template->assign("errortext", "{$errtxt}<br>{$noperm}");
     $template->display("error.tpl");
     die;
 }
 $myproject = new project();
 $pro = $myproject->getProject($id);
 $projectname = $pro["name"];
 $title = $langfile['task'];
 $mytask = new task();
 $task = $mytask->getTask($tid);
 $members = $myproject->getProjectMembers($id, $myproject->countMembers($id));
 $tasklist = new tasklist();
 $tasklists = $tasklist->getProjectTasklists($id);
 $tl = $tasklist->getTasklist($task['liste']);
 $task['listid'] = $tl['ID'];
 $task['listname'] = $tl['name'];
 $tmp = $mytask->getUsers($task['ID']);
 if ($tmp) {
     foreach ($tmp as $value) {
         $task['users'][] = $value[0];
     }
 }
 $user = $mytask->getUser($task['ID']);
 $task['username'] = $user[1];
 $task['userid'] = $user[0];
 $template->assign("members", $members);
 $template->assign("tasklists", $tasklists);
Пример #7
0
 /**
  * Marka milestone as finished
  *
  * @param int $id Milestone ID
  * @return bool
  */
 function close($id)
 {
     $id = (int) $id;
     $upd = mysql_query("UPDATE milestones SET status = 0 WHERE ID = {$id}");
     $tasklists = $this->getMilestoneTasklists($id);
     if (!empty($tasklists)) {
         foreach ($tasklists as $tasklist) {
             $tl = new tasklist();
             $tasks = $tl->getTasksFromList($tasklist[ID]);
             foreach ($tasks as $task) {
                 $close_task = mysql_query("UPDATE tasks SET status = 0 WHERE ID = {$task['ID']}");
             }
             $close_tasklist = mysql_query("UPDATE tasklist SET status = 0 WHERE ID = {$tasklist['ID']}");
         }
     }
     if ($upd) {
         $nam = mysql_query("SELECT project,name FROM milestones WHERE ID = {$id}");
         $nam = mysql_fetch_row($nam);
         $project = $nam[0];
         $name = $nam[1];
         $this->mylog->add($name, 'milestone', 5, $project);
         return true;
     } else {
         return false;
     }
 }
Пример #8
0
 /**
  * Copy a project
  * by: Daniel Tlach <*****@*****.**>,
  * Philipp Kiszka <*****@*****.**>
  *
  * @param int $id ID of project to copy
  * @return int $insid New project's ID
  */
 function makecopy($id)
 {
     // copy project
     $q = mysql_query("INSERT INTO projekte (`name`, `desc`, `end`, `start`, `status`, `budget`) SELECT `name`, `desc`, `end`, `start`, `status`, `budget` FROM projekte WHERE ID = " . (int) $id);
     $insid = mysql_insert_id();
     $uid = $_SESSION['userid'];
     $this->assign($uid, $insid);
     $milesobj = new milestone();
     $objtasklist = new tasklist();
     $objtask = new task();
     if ($q) {
         $pname = $this->getProject($insid);
         $name = $pname["name"] . " Copy";
         mysql_query("UPDATE projekte SET `name` = '{$name}' WHERE ID = " . $insid . " LIMIT 1");
         // now copy the milestones
         $miles = $milesobj->getAllProjectMilestones($id);
         if (!empty($miles)) {
             // go through the milestones
             foreach ($miles as $ms) {
                 // copy milestone
                 $msid = $milesobj->add($insid, $ms["name"], $ms["desc"], $ms["end"], 1);
                 // get all tasklists for milestone
                 $qb = mysql_query("SELECT * FROM tasklist WHERE project = {$id} AND milestone = {$ms['ID']}");
                 if ($qb) {
                     // go through the tasklists
                     while ($tl = mysql_fetch_array($qb)) {
                         // copy tasklist
                         $tlid = $objtasklist->add_liste($insid, $tl["name"], $tl["desc"], 0, $msid);
                         // get tasks for the tasklist
                         $tasks = $objtasklist->getTasksFromList($tl["ID"]);
                         if (!empty($tasks)) {
                             foreach ($tasks as $task) {
                                 $taskobj->add($task["end"], $task["title"], $task["text"], $tlid, $uid, $insid);
                             }
                             // tasks END
                         }
                     }
                     // tasklists END
                 }
             }
             // milestones END
         }
         // get all tasklists and tasks that do not belong to a milestone
         $qb = mysql_query("SELECT * FROM tasklist WHERE project = {$id} AND milestone = 0");
         if ($qb) {
             // go through the tasklists
             while ($tl = mysql_fetch_array($qb)) {
                 // copy tasklist
                 $tlid = $objtasklist->add_liste($insid, $tl["name"], $tl["desc"], 0, $msid);
                 // get tasks for the tasklist
                 $tasks = $objtasklist->getTasksFromList($tl["ID"]);
                 if (!empty($tasks)) {
                     foreach ($tasks as $task) {
                         $taskobj->add($task["end"], $task["title"], $task["text"], $tlid, $uid, $insid);
                     }
                     // tasks END
                 }
             }
             // tasklists END
         }
         mkdir(CL_ROOT . "/files/" . CL_CONFIG . "/{$insid}/", 0777);
         $this->mylog->add($name, 'projekt', 1, $insid);
         return $insid;
     } else {
         return false;
     }
 }