(0004828)
|
paulvh
|
2013-05-23 15:12
|
|
We have been using tasks more this year to manage room setups of computers. The task list as it is in 3.67 is not as complete as we would like it. Here is a patch file to add and expand data in the list
--- /root/sit-3.67/tasks.php 2012-08-18 10:40:26.000000000 -0400
+++ tasks.php 2013-05-23 10:05:34.456749047 -0400
@@ -40,7 +40,7 @@ else
// External variables
$user = cleanvar($_REQUEST['user']);
$show = clean_fixed_list($_REQUEST['show'], array('','incidents', 'active', 'completed'));
-$sort = clean_fixed_list($_REQUEST['sort'], array('', 'id', 'name', 'priority', 'completion', 'startdate', 'duedate', 'enddate', 'distribution'));
+$sort = clean_fixed_list($_REQUEST['sort'], array('', 'id', 'owner', 'name', 'priority', 'completion', 'startdate', 'duedate', 'enddate', 'distribution'));
$order = clean_fixed_list($_REQUEST['order'], array('', 'a', 'ASC', 'd', 'DESC'));
$incident = clean_int($_REQUEST['incident']);
$siteid = clean_int($_REQUEST['siteid']);
@@ -240,7 +240,7 @@ else
echo "</select>\n";
echo "</form> ";
- $sql = "SELECT * FROM `{$dbTasks}` WHERE ";
+ $sql = "SELECT `{$dbTasks}`.*, `{$dbUsers}`.realname FROM `{$dbTasks}` LEFT JOIN `{$dbUsers}` ON `{$dbTasks}`.owner = `{$dbUsers}`.id WHERE ";
if ($user != 'all')
{
$sql .= "owner='$user' AND ";
@@ -282,7 +282,8 @@ else
if (!empty($sort))
{
- if ($sort == 'id') $sql .= "ORDER BY id ";
+ if ($sort == 'id') $sql .= "ORDER BY `{$dbTasks}`.id ";
+ elseif ($sort == 'owner') $sql .= "ORDER BY realname ";
elseif ($sort == 'name') $sql .= "ORDER BY name ";
elseif ($sort == 'priority') $sql .= "ORDER BY priority ";
elseif ($sort == 'completion') $sql .= "ORDER BY completion ";
@@ -290,7 +291,7 @@ else
elseif ($sort == 'duedate') $sql .= "ORDER BY duedate ";
elseif ($sort == 'enddate') $sql .= "ORDER BY enddate ";
elseif ($sort == 'distribution') $sql .= "ORDER BY distribution ";
- else $sql .= "ORDER BY id ";
+ else $sql .= "ORDER BY `{$dbTasks}`.id ";
if ($order == 'a' OR $order == 'ASC' OR $order == '') $sql .= "ASC";
else $sql .= "DESC";
@@ -339,14 +340,19 @@ if (mysql_num_rows($result) >=1 )
}
echo colheader('id', $strID, $sort, $order, $filter);
+ if($user == 'all')
+ {
+ echo colheader('owner', $strOwner, $sort, $order, $filter);
+ }
echo colheader('name', $strTask, $sort, $order, $filter);
if ($show != 'incidents')
{
echo colheader('priority', $strPriority, $sort, $order, $filter);
echo colheader('completion', $strCompletion, $sort, $order, $filter);
}
- echo colheader('startdate', $strStartDate, $sort, $order, $filter);
echo colheader('duedate', $strDueDate, $sort, $order, $filter);
+ echo colheader('startdate', $strStartDate, $sort, $order, $filter);
+ echo colheader('enddate', $strEndDate, $sort, $order, $filter);
if ($show == 'completed')
{
echo colheader('enddate', $strEndDate, $sort, $order, $filter);
@@ -432,6 +438,10 @@ if (mysql_num_rows($result) >=1 )
echo "<td>";
echo "{$task->id}";
echo "</td>";
+ if ($user == 'all')
+ {
+ echo "<td>".$task->realname."</td>";
+ }
echo "<td>";
if (empty($task->name))
{
@@ -465,6 +475,19 @@ if (mysql_num_rows($result) >=1 )
if ($mode != 'incident')
{
echo "<td";
+ if ($duedate > 0 AND $duedate <= $now AND $task->completion < 100)
+ {
+ echo " class='urgent'";
+ }
+
+ echo ">";
+ if ($duedate > 0)
+ {
+ echo ldate($CONFIG['dateformat_datetime'],$duedate);
+ }
+ echo "</td>";
+
+ echo "<td";
if ($startdate > 0 AND $startdate <= $now AND $task->completion <= 0)
{
echo " class='urgent'";
@@ -478,21 +501,28 @@ if (mysql_num_rows($result) >=1 )
echo ">";
if ($startdate > 0)
{
- echo ldate($CONFIG['dateformat_date'],$startdate);
+ echo ldate($CONFIG['dateformat_datetime'],$startdate);
}
echo "</td>";
+
echo "<td";
- if ($duedate > 0 AND $duedate <= $now AND $task->completion < 100)
+ if ($enddate > 0 AND $enddate <= $now AND $task->completion <= 0)
{
echo " class='urgent'";
}
+ elseif ($enddate > 0 AND $enddate <= $now AND
+ $task->completion >= 1 AND $task->completion < 100)
+ {
+ echo " class='idle'";
+ }
echo ">";
- if ($duedate > 0)
+ if ($enddate > 0)
{
- echo ldate($CONFIG['dateformat_date'],$duedate);
+ echo ldate($CONFIG['dateformat_datetime'],$enddate);
}
+
echo "</td>";
}
else |
|