$result = select_query("mod_project", "id,title,status,created,duedate,adminid,lastmodified,(SELECT CONCAT(firstname,' ',lastname) FROM tbladmins WHERE id=mod_project.adminid) AS adminuser", $where, $orderby, $order, $page * $limit . ("," . $limit)); while ($data = mysql_fetch_array($result)) { $projectid = $data['id']; $progressdata = project_management_tasksstatus($projectid, $vars); $jquerycode .= "\n\$(function() {\n\t\$(\"#progressbar" . $projectid . "\").progressbar({\n\t\tvalue: " . $progressdata['percent'] . "\n\t});\n});"; if (($q || $_REQUEST['view'] == "ticket" || $_REQUEST['view'] == "user") && $numrows == 1) { redir("module=project_management&m=view&projectid=" . (int) $projectid); } $title = $data['title']; $status = $data['status']; $adminid = $data['adminid']; $adminuser = $data['adminuser']; $created = $data['created']; $duedate = $data['duedate']; $lastmodified = $data['lastmodified']; $daysleft = project_management_daysleft($duedate, $vars); $created = fromMySQLDate($created); $duedate = fromMySQLDate($duedate); $lastmodified = fromMySQLDate($lastmodified, true); $show_project = false; if (project_management_check_viewproject($projectid)) { $show_project = true; } $title = $show_project ? "<a href=\"" . str_replace("m=overview", "m=view", $modulelink) . "&projectid=" . $projectid . "\">" . $title . "</a>" : $title; if (!$adminuser) { $adminuser = "******"; } $editprojecthtml = $show_project ? "<a href=\"" . str_replace("m=overview", "m=view", $modulelink) . "&projectid=" . $projectid . "\"><img src=\"images/edit.gif\" border=\"0\" /></a>" : ""; $deleteprojecthtml = project_management_checkperm("Delete Projects") ? "<a href=\"#\" onclick=\"doDelete('" . $projectid . "');return false\"><img src=\"images/delete.gif\" border=\"0\" /></a>" : ""; $tabledata[] = array("<div align=\"left\">" . $title . "</div>", $adminuser, $status, $created, $duedate, "<div id=\"progressbar" . $projectid . "\"></div>", $daysleft, $lastmodified, $editprojecthtml, $deleteprojecthtml); }
foreach ($attachments as $i => $attachment) { $attachment = substr($attachment, 7); if ($attachment) { $attachmentsarray[$i] = array("filename" => $attachment); continue; } } $tplvars['attachments'] = $attachmentsarray; $totaltimecount = 0; $i = 1; $tasks = array(); $result = select_query("mod_projecttasks", "id,task,notes,adminid,created,duedate,completed", array("projectid" => $projectid), "order", "ASC"); while ($data = mysql_fetch_assoc($result)) { $tasks[$i] = $data; $tasks[$i]['adminname'] = $data['adminid'] ? get_query_val("tbladmins", "CONCAT(firstname,' ',lastname)", array("id" => $data['adminid'])) : "0"; $tasks[$i]['duein'] = $data['duedate'] != "0000-00-00" ? project_management_daysleft($data['duedate'], $vars) : "0"; $tasks[$i]['duedate'] = $data['duedate'] != "0000-00-00" ? fromMySQLDate($data['duedate'], 0, 1) : "0"; $totaltasktime = 0; $result2 = select_query("mod_projecttimes", "", array("projectid" => $projectid, "taskid" => $data['id'])); while ($data = mysql_fetch_array($result2)) { $timerid = $data['id']; $timerstart = $data['start']; $timerend = $data['end']; $starttime = fromMySQLDate(date("Y-m-d H:i:s", $timerstart), 1, 1) . ":" . date("s", $timerstart); $endtime = $timerend ? fromMySQLDate(date("Y-m-d H:i:s", $timerend), 1, 1) . ":" . date("s", $timerend) : 0; $totaltime = $timerend ? project_management_sec2hms($timerend - $timerstart) : 0; $tasks[$i]['times'][] = array("id" => $data['id'], "adminid" => $data['adminid'], "adminname" => get_query_val("tbladmins", "CONCAT(firstname,' ',lastname)", array("id" => $data['adminid'])), "start" => $starttime, "end" => $endtime, "duration" => $totaltime); if ($timerend) { $totaltasktime += $timerend - $timerstart; } }
echo "</div></td>\n</tr>\n</table>\n</div>\n\n<table width=\"100%\" align=\"center\"><tr><td width=\"50%\" valign=\"top\">"; global $currency; $currency = getCurrency($userid); $gateways = getGatewaysArray(); $taskshtml = ""; $taski = $totaltimecount = 0; $result = select_query("mod_projecttasks", "", array("projectid" => $projectid), "order", "ASC"); while ($data = mysql_fetch_array($result)) { $taskid = $data['id']; $task = $data['task']; $taskadminid = $data['adminid']; $taskduedate = $data['duedate']; $tasknotes = $data['notes']; $taskcompleted = $data['completed']; $taskadmin = $taskadminid ? "<span class=\"taskbox\">" . getAdminName($data['adminid']) . "</span> " : ""; $taskduedate = $taskduedate != "0000-00-00" ? " <span class=\"taskdue\">" . project_management_daysleft($data['duedate'], $vars) . " (" . fromMySQLDate($data['duedate']) . ")</span>" : ""; $taskcompleted = $taskcompleted ? " checked=\"checked\"" : ""; $taskedit = project_management_checkperm("Edit Tasks") ? " <a href=\"" . str_replace("&m=view", "&m=edittask", $modulelink) . "&id=" . $taskid . "\"><img src=\"images/edit.gif\" align=\"absmiddle\" title=\"Edit Task\" /></a>" : ""; $taskdelete = project_management_checkperm("Delete Tasks") ? " <a href=\"#\" onclick=\"deleteTask(" . $taskid . ");return false\"><img src=\"images/delete.gif\" align=\"absmiddle\" /></a>" : ""; $notesoutput = "<div align=\"center\" style=\"margin-top:5px;\"><table width=\"95%\" align=\"center\"><tr><td><textarea rows=\"3\" style=\"width:100%\" id=\"tasknotestxtarea" . $taskid . "\">" . $tasknotes . "</textarea></td><td width=\"120\" align=\"right\"><input type=\"button\" id=\"savetasknotestxtarea" . $taskid . "\" class=\"savetasknotestxtarea\" value=\"" . $vars['_lang']['savenotes'] . "\" /></td></tr></table></div>"; $tasknotes = "<a class=\"tasknotestoggler\" id=\"tasknotestogglerclicker" . $taskid . "\"><img src=\"../modules/addons/project_management/images/" . ($tasknotes ? "" : "no") . "notes.png\" align=\"absmiddle\" title=\"View/Edit Notes\" /></a>"; ++$taski; $invoicelinedesc = "" . $taski . ". " . $task . "\r\n"; $timesoutput = project_management_timesoutput($vars, $taskid); $timerid = $GLOBALS['timerid']; $timecount = $GLOBALS['timecount']; $invoicelinedesc = $GLOBALS['invoicelinedesc']; $csstimerdisplay = !get_query_val("mod_projecttimes", "id", array("end" => "", "projectid" => $projectid, "taskid" => $taskid, "adminid" => $_SESSION['adminid'])) ? "style=\"display:none\"" : ""; $taskshtml .= "<tr id=\"taskholder" . $taskid . "\">\n <td class=\"sortcol\"></td>\n <td>\n\t\t<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t<tr><td width=\"35%\" align=\"left\"><input type=\"checkbox\" name=\"task[" . $taskid . "]\" id=\"tk" . $taskid . "\" value=\"1\"" . $taskcompleted . " onclick=\"updatetaskstatus('" . $taskid . "')\" /> " . $taskadmin . "<label for=\"tk" . $taskid . "\">" . $task . "</label> " . $taskduedate . " <span class=\"taskbox\">" . project_management_sec2hms($timecount) . " Hrs</span> " . $tasknotes . " <div style=\"float:right;\"><a class=\"ajaxstarttimer tasktimerexpander\" id=\"ajaxstarttimer" . $taskid . "\"><img src=\"../modules/addons/project_management/images/starttimer.png\" align=\"absmiddle\" title=\"Start Timer\" /></a> <a id=\"tasktimertoggleclicker" . $taskid . "\" class=\"tasktimertoggle\"><img src=\"../modules/addons/project_management/images/" . ($timerid ? "" : "no") . "times.png\" align=\"absmiddle\" title=\"View Times\" /></a> " . $taskedit . $taskdelete . "</div></td></tr>\n\t\t\t<tr " . $csstimerdisplay . " id=\"tasktimerexpandholder" . $taskid . "\"><td>" . $timesoutput . "</td></tr>\n\t\t\t<tr style=\"display:none\" id=\"tasknotesexpandholder" . $taskid . "\"><td>" . $notesoutput . "</td></tr>\n\t\t</table>\n\t</td>\n</tr>"; if ($createinvoice) { $invoicelineamt = $timecount / 3600 * $vars['hourlyrate'];