function show_featurelist($result, $offset, $set = 'open') { global $sys_datefmt, $group_id; /* Accepts a result set from the feature table. Should include all columns from the table, and it should be joined to USER to get the user_name. */ $url = "/feature/?group_id={$group_id}&set={$set}&order="; $title_arr = array(); $title_arr[] = 'Request ID'; $title_arr[] = 'Summary'; $title_arr[] = 'Category'; $title_arr[] = 'Status'; $title_arr[] = 'Date'; $title_arr[] = 'Assigned To'; $title_arr[] = 'Submitted By'; $links_arr = array(); $links_arr[] = $url . 'feature_id'; $links_arr[] = $url . 'summary'; $links_arr[] = $url . 'feature_category_id'; $links_arr[] = $url . 'feature_status_id'; $links_arr[] = $url . 'date'; $links_arr[] = $url . 'assigned_to_user'; $links_arr[] = $url . 'submitted_by'; $IS_FEATURE_ADMIN = user_ismember($group_id, 'S2'); echo ' <FORM ACTION="' . $PHP_SELF . '" METHOD="POST"> <INPUT TYPE="HIDDEN" NAME="group_id" VALUE="' . $group_id . '"> <INPUT TYPE="HIDDEN" NAME="func" VALUE="postmodfeature">'; echo html_build_list_table_top($title_arr, $links_arr); $then = time() - 1296000; $rows = db_numrows($result); for ($i = 0; $i < $rows; $i++) { echo ' <TR BGCOLOR="' . get_priority_color(db_result($result, $i, 'priority')) . '">' . '<TD NOWRAP>' . ($IS_FEATURE_ADMIN ? '<INPUT TYPE="CHECKBOX" NAME="feature_id[]" VALUE="' . db_result($result, $i, 'feature_id') . '"> ' : '') . sprintf("%06d", db_result($result, $i, 'feature_id')) . '</TD>' . '<TD><A HREF="' . $PHP_SELF . '?func=detailfeature&feature_id=' . db_result($result, $i, 'feature_id') . '&group_id=' . db_result($result, $i, 'group_id') . '">' . db_result($result, $i, 'summary') . '</A></TD>' . '<TD>' . db_result($result, $i, 'category_name') . '</TD>' . '<TD>' . db_result($result, $i, 'status_name') . '</TD>' . '<TD>' . ($set != 'closed' && db_result($result, $i, 'date') < $then ? '<B>* ' : ' ') . date($sys_datefmt, db_result($result, $i, 'date')) . '</TD>' . '<TD>' . db_result($result, $i, 'assigned_to_user') . '</TD>' . '<TD>' . db_result($result, $i, 'submitted_by') . '</TD></TR>'; } /* Show extra rows for <-- Prev / Next --> */ echo ' <TR><TD COLSPAN="2">'; if ($offset > 0) { echo '<A HREF="' . $PHP_SELF . '?func=browse&group_id=' . $group_id . '&set=' . $set . '&offset=' . ($offset - 50) . '"><B><-- Previous 50</B></A>'; } else { echo ' '; } echo '</TD><TD> </TD><TD COLSPAN="2">'; if ($rows >= 50) { echo '<A HREF="' . $PHP_SELF . '?func=browse&group_id=' . $group_id . '&set=' . $set . '&offset=' . ($offset + 50) . '"><B>Next 50 --></B></A>'; } else { echo ' '; } echo '</TD></TR>'; /* Mass Update Code */ if ($IS_FEATURE_ADMIN) { echo '<TR><TD COLSPAN="5"> <FONT COLOR="#FF0000"><B>Feature Admin:</B></FONT> If you wish to apply changes to all feature tickets selected above, use these controls to change their properties and click once on "Mass Update". <TABLE WIDTH="100%" BORDER="0"> <TR><TD><B>Category:</B><BR>' . feature_category_box($group_id, 'feature_category_id', 'xyz', 'No Change') . '</TD> <TD><B>Priority:</B><BR>'; echo build_priority_select_box('priority', '5', true); echo '</TD></TR> <TR><TD><B>Assigned To:</B><BR>' . feature_technician_box($group_id, 'assigned_to', 'xyz', 'No Change') . '</TD> <TD><B>Status:</B><BR>' . feature_status_box('feature_status_id', 'xyz', 'No Change') . '</TD></TR> <TR><TD COLSPAN="2"><B>Canned Response:</B><BR>' . feature_canned_response_box($group_id, 'canned_response') . '</TD></TR> <TR><TD COLSPAN="3" ALIGN="MIDDLE"><INPUT TYPE="SUBMIT" name="submit" VALUE="Mass Update"></TD></TR> </TABLE> </FORM> </TD></TR>'; } echo '</TABLE>'; }
$res_tech = feature_data_get_technicians($group_id); $tech_id_arr = util_result_column_to_array($res_tech, 0); $tech_id_arr[] = '0'; //this will be the 'any' row $tech_name_arr = util_result_column_to_array($res_tech, 1); $tech_name_arr[] = 'Any'; $tech_box = html_build_select_box_from_arrays($tech_id_arr, $tech_name_arr, '_assigned_to', $_assigned_to, true, 'Unassigned'); /* Show the new pop-up boxes to select assigned to and/or status */ echo '<H2>Browse Feature Requests by</H2> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="6"><FORM ACTION="' . $PHP_SELF . '" METHOD="GET"> <INPUT TYPE="HIDDEN" NAME="group_id" VALUE="' . $group_id . '"> <INPUT TYPE="HIDDEN" NAME="set" VALUE="custom"> <TR><TD><b>Assigned User:</b></TD><TD><b>Status:</b></TD><TD><b>Category:</b></TD></TR> <TR><TD><FONT SIZE="-1">' . $tech_box . '</TD><TD><FONT SIZE="-1">' . feature_status_box('_status', $_status, 'Any') . '</TD>' . '<TD><FONT SIZE="-1">' . feature_category_box($group_id, $name = '_category', $_category, 'Any') . '</TD>' . '<TD><FONT SIZE="-1"><INPUT TYPE="SUBMIT" NAME="SUBMIT" VALUE="Browse"></TD></TR></FORM></TABLE>'; //echo "<p>$sql\n"; $result = db_query($sql, 51, $offset); if ($result && db_numrows($result) > 0) { echo ' <P> <h3>' . $statement . '</H3> <P> <B>You can use the Feature Manager to coordinate tech feature</B> <P>'; //create a new $set string to be used for next/prev button if ($set == 'custom') { $set .= '&_assigned_to=' . $_assigned_to . '&_status=' . $_status . '&_category=' . $_category; } show_featurelist($result, $offset, $set); echo '* Denotes Requests > 15 Days Old';
</TR> <TR> <TD><B>Category:</B><BR>'; echo feature_category_box($group_id, 'feature_category_id', db_result($result, 0, 'feature_category_id')); echo ' </TD> <TD><B>Assigned To:</B><BR>'; echo feature_technician_box($group_id, 'assigned_to', db_result($result, 0, 'assigned_to')); ?> </TD></TR> <TR><TD> <B>Status:</B><BR> <?php echo feature_status_box('feature_status_id', db_result($result, 0, 'feature_status_id')); ?> </TD><TD> <B>Priority:</B><BR> <?php /* Priority of this feature request */ build_priority_select_box('priority', db_result($result, 0, 'priority')); ?> </TD></TR> <TR><TD COLSPAN="2"><B>Summary:</B><BR> <INPUT TYPE="TEXT" NAME="summary" SIZE="45" VALUE="<?php echo db_result($result, 0, 'summary'); ?>