} else { $create = $zip->create(CL_ROOT . "/files/" . CL_CONFIG . "/{$id}/{$thefolder['name']}/", PCLZIP_OPT_REMOVE_ALL_PATH); } if ($create != 0) { $loc = $url . "/files/" . CL_CONFIG . "/{$id}" . "/folder" . $thefolder["ID"] . ".zip"; header("Location: {$loc}"); } } elseif ($action == "showproject") { if (!$userpermissions["files"]["view"]) { $errtxt = $langfile["nopermission"]; $noperm = $langfile["accessdenied"]; $template->assign("errortext", "{$errtxt}<br>{$noperm}"); $template->display("error.tpl"); die; } $files = $myfile->getProjectFiles($id); $filenum = count($files); if (empty($finfiles)) { $filenum = 0; } $myproject = new project(); $rolesobj = new roles(); //get folders $folders = $myfile->getProjectFolders($id); //get all folders $allfolders = $myfile->getAllProjectFolders($id); //get the project $pro = $myproject->getProject($id); //get the project members $members = $myproject->getProjectMembers($id, 10000); //get all roles
/** * Deletes a project including everything else that was assigned to it (e.g. Milestones, tasks, timetracker entries) * * @param int $id Project ID * @return bool */ function del($id) { global $conn; $userid = $_SESSION["userid"]; $id = (int) $id; // Delete assignments of tasks of this project to users $task = new task(); $tasks = $task->getProjectTasks($id); if (!empty($tasks)) { foreach ($tasks as $tas) { $del_taskassign = $conn->query("DELETE FROM tasks_assigned WHERE task = {$tas['ID']}"); } } // Delete files and the assignments of these files to the messages they were attached to $fil = new datei(); $files = $fil->getProjectFiles($id, 1000000); if (!empty($files)) { foreach ($files as $file) { $del_files = $fil->loeschen($file[ID]); } } $del_messages = $conn->query("DELETE FROM messages WHERE project = {$id}"); $del_milestones = $conn->query("DELETE FROM milestones WHERE project = {$id}"); $del_projectassignments = $conn->query("DELETE FROM projekte_assigned WHERE projekt = {$id}"); $del_tasklists = $conn->query("DELETE FROM tasklist WHERE project = {$id}"); $del_tasks = $conn->query("DELETE FROM tasks WHERE project = {$id}"); $del_timetracker = $conn->query("DELETE FROM timetracker WHERE project = {$id}"); $del_customer = $conn->query("DELETE FROM customers_assigned WHERE project = {$id}"); $del_logentries = $conn->query("DELETE FROM log WHERE project = {$id}"); $del = $conn->query("DELETE FROM projekte WHERE ID = {$id}"); delete_directory(CL_ROOT . "/files/" . CL_CONFIG . "/{$id}"); if ($del) { $this->mylog->add($userid, 'projekt', 3, $id); return true; } else { return false; } }
$template->assign("files", $finfiles); $template->assign("postmax", $POST_MAX_SIZE); $template->display("fileview.tpl"); } elseif ($action == "fileview_list") { if (!chkproject($userid, $id)) { $errtxt = $langfile["notyourproject"]; $noperm = $langfile["accessdenied"]; $template->assign("errortext", "{$errtxt}<br>{$noperm}"); $template->display("error.tpl"); die; } $POST_MAX_SIZE = ini_get('post_max_size'); $POST_MAX_SIZE = $POST_MAX_SIZE . "B"; $folder = getArrayVal($_GET, "folder"); $myfile = new datei(); $ordner = $myfile->getProjectFiles($id, 1000000, $folder); $finfiles = array(); if (!empty($ordner)) { foreach ($ordner as $file) { array_push($finfiles, $file); } } $filenum = count($finfiles); if (empty($finfiles)) { $filenum = 0; } if ($folder == 0) { $folders = $myfile->getProjectFolders($id); $foldername = ""; $thefolder["parent"] = 0; } else {
$template->assign("files", $thefiles); $template->assign("messages", $messages); $template->assign("members", $members); $template->assign("messagenum", $mcount); $template->display("projectmessages.tpl"); } elseif ($action == "showmessage") { // get the message and its replies $message = $msg->getMessage($mid); $replies = $msg->getReplies($mid); $myproject = new project(); $pro = $myproject->getProject($id); // get all notifiable members $members = $myproject->getProjectMembers($id, 10000); // get all attachable files $myfile = new datei(); $ordner = $myfile->getProjectFiles($id, 1000); $projectname = $pro['name']; $title = $langfile['message']; $template->assign("projectname", $projectname); $template->assign("title", $title); $template->assign("mode", $mode); $template->assign("message", $message); $template->assign("ordner", $ordner); $template->assign("replies", $replies); $template->assign("files", $ordner); $template->assign("members", $members); $template->display("message.tpl"); } elseif ($action == "export-project") { $l = array(); $l['a_meta_charset'] = 'UTF-8'; $l['a_meta_dir'] = 'ltr';
$template->assign("projectname", $projectname); // get the page title $title = $langfile['messages']; $template->assign("title", $title); if (!empty($messages)) { $mcount = count($messages); } else { $mcount = 0; } // get files of the project $datei = new datei(); $thefiles = $datei->getProjectFiles($id); $milestones = $objmilestone->getAllProjectMilestones($id, 10000); $template->assign("milestones", $milestones); $template->assign("projectname", $projectname); $template->assign("files", $thefiles); $template->assign("messages", $messages); $template->assign("members", $members); $template->assign("messagenum", $mcount); $template->display("projectmessages.tpl"); } elseif ($action == "showmessage") { // get the message and its replies $message = $msg->getMessage($mid); $replies = $msg->getReplies($mid);