Example #1
0
 echo ' <a href="/admin/groupedit.php?group_id=' . $groupId . '">' . $projectName . '</a><br/>';
 echo '<table>';
 echo '<tr>';
 echo '<th>Services</th>';
 echo '<th>Group by</th>';
 echo '<th>Start date</th>';
 echo '<th>End date</th>';
 echo '<th>Options</th>';
 echo '</tr>';
 echo '<tr>';
 $services = array();
 foreach ($duMgr->getProjectServices() as $service => $label) {
     $services[] = array('value' => $service, 'text' => $label);
 }
 echo '<td valign="top">';
 echo html_build_multiple_select_box_from_array($services, 'services[]', $selectedServices, '6', false, '', false, '', false, '', false) . ' ';
 echo '</td>';
 echo '<td valign="top">';
 echo html_build_select_box_from_array($groupByDate, 'group_by', $selectedGroupByDate, 1) . '<br />';
 echo '</td>';
 echo '<td valign="top">';
 list($timestamp, ) = util_date_to_unixtime($startDate);
 echo html_field_date('start_date', $startDate, false, 10, 10, 'progress_by_project', false) . '<br /><em>' . html_time_ago($timestamp) . '</em><br />';
 echo '</td>';
 echo '<td valign="top">';
 list($timestamp, ) = util_date_to_unixtime($endDate);
 echo html_field_date('end_date', $endDate, false, 10, 10, 'progress_by_project', false) . '<br /><em>' . html_time_ago($timestamp) . '</em><br />';
 echo '</td>';
 $sel = '';
 if ($relative) {
     $sel = ' checked="checked"';
 function _getAddReviewers()
 {
     $html = '';
     if ($this->table !== null && !$this->table->isClosed() || $this->table === null) {
         $atrf = new Docman_ApprovalTableReviewerFactory($this->table, $this->item);
         $ugroups = $atrf->getUgroupsAllowedForTable($this->item->getGroupId());
         $html .= '<div id="docman_approval_table_create_add_reviewers">';
         $html .= '<table>';
         $html .= '<tr>';
         $html .= '<td>' . $GLOBALS['Language']->getText('plugin_docman', 'details_approval_create_reviewers_hand') . '</td>';
         $html .= '<td><input type="text" name="user_list" value="" id="user_list" class="text_field"/></td>';
         $html .= '</tr>';
         $html .= '<tr>';
         $html .= '<td>' . $GLOBALS['Language']->getText('plugin_docman', 'details_approval_create_reviewers_ugroup') . '</td>';
         $html .= '<td>' . html_build_multiple_select_box_from_array($ugroups, 'ugroup_list[]', array(), 8, true, '', false, '', false, '', false) . '</td>';
         $html .= '</tr>';
         $html .= '</table>';
         $html .= '</div>';
         $js = "new UserAutoCompleter('user_list', '" . util_get_dir_image_theme() . "', true);";
         $GLOBALS['Response']->includeFooterJavascriptSnippet($js);
     } else {
         return $GLOBALS['Language']->getText('plugin_docman', 'details_approval_create_reviewers_oldver');
     }
     return $html;
 }
    foreach ($dar as $row) {
        $selectedUgroup[] = $row['ugroup_id'];
    }
} else {
    $selectedUgroup = array($GLOBALS['UGROUP_PROJECT_ADMIN']);
}
$ugroupList = array(array('value' => $GLOBALS['UGROUP_PROJECT_ADMIN'], 'text' => util_translate_name_ugroup('project_admin')));
$res = ugroup_db_get_existing_ugroups($group_id);
while ($row = db_fetch_array($res)) {
    $ugroupList[] = array('value' => $row['ugroup_id'], 'text' => $row['name']);
}
echo '<tr><td colspan="2" style="text-align: center;">';
echo '<form method="post" action="permission_request.php">';
echo '<input type="hidden" name="func" value="member_req_notif_group" />';
echo '<input type="hidden" name="group_id" value="' . $group_id . '">';
echo html_build_multiple_select_box_from_array($ugroupList, "ugroups[]", $selectedUgroup, 8, false, '', false, '', false, '', false);
echo '<br />';
echo '<input type="submit" name="submit" value="' . $Language->getText('global', 'btn_update') . '" />';
echo '</form>';
echo '</td></tr>';
echo '<tr><td colspan="2"><p>';
echo $Language->getText('project_admin_index', 'member_request_delegation_msg_desc');
echo '</p></td></tr>';
$message = $GLOBALS['Language']->getText('project_admin_index', 'member_request_delegation_msg_to_requester');
$dar = $pm->getMessageToRequesterForAccessProject($group_id);
if ($dar && !$dar->isError() && $dar->rowCount() == 1) {
    $row = $dar->current();
    if ($row['msg_to_requester'] != "member_request_delegation_msg_to_requester") {
        $message = $row['msg_to_requester'];
    }
}
Example #4
0
function html_build_multiple_select_box($result, $name, $checked_array, $size = '8', $show_100 = true, $text_100 = '', $show_any = false, $text_any = '', $show_unchanged = false, $text_unchanged = '', $show_value = true, $purify_level = CODENDI_PURIFIER_CONVERT_HTML, $disabled = false)
{
    if (is_array($result)) {
        $array =& $result;
    } else {
        $array = array();
        while ($row = db_fetch_array($result)) {
            $array[] = array('value' => $row[0], 'text' => $row[1]);
        }
    }
    return html_build_multiple_select_box_from_array($array, $name, $checked_array, $size, $show_100, $text_100, $show_any, $text_any, $show_unchanged, $text_unchanged, $show_value, $purify_level, $disabled);
}
 /**
  *  Display Date Field Notification Settings form
  *
  * @param
  * @return void
  */
 function displayDateFieldNotificationSettings(ArtifactType $at, ArtifactField $field)
 {
     //get date field reminder settings from database
     $tdrArtifactField = new TrackerDateReminder_ArtifactField();
     $res = $tdrArtifactField->getDateFieldReminderSettings($field->getID(), $at->getID());
     $enabled = db_numrows($res) == 1;
     $start = db_result($res, 0, 'notification_start');
     $frequency = db_result($res, 0, 'frequency');
     $recurse = db_result($res, 0, 'recurse');
     $notified_people = db_result($res, 0, 'notified_people');
     $notified_groups = array();
     $notified_users = array();
     if (trim($notified_people) != "") {
         $notif = explode(",", $notified_people);
         foreach ($notif as $value) {
             if (preg_match("/^g/", $value)) {
                 array_push($notified_groups, $value);
             } else {
                 array_push($notified_users, $value);
             }
         }
     }
     if (count($notified_groups) == 0) {
         $notified_groups[] = '100';
     }
     if (count($notified_users) == 0) {
         $notified_users[] = '100';
     }
     $notif_type = db_result($res, 0, 'notification_type');
     if ($notif_type == 1) {
         $after = "selected";
         $before = "";
     } else {
         $after = "";
         $before = "selected";
     }
     $out = '';
     $baseActionUrl = '/tracker/admin/index.php?func=date_field_notification&group_id=' . $at->Group->getID() . '&atid=' . $at->getID() . '&field_id=' . $field->getID();
     if ($enabled) {
         $out .= '<H3>' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'notif_settings_del_title') . '</H3>';
         $out .= '<FORM ACTION="' . $baseActionUrl . '&delete_reminder=true" METHOD="POST">';
         $out .= '<P>' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'notif_settings_del_desc') . '</P>';
         $out .= '<INPUT TYPE="SUBMIT" NAME="reminder" VALUE="' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'notif_settings_del_button') . '" />';
         $out .= '</FORM>';
     }
     $out .= '<FORM ACTION="' . $baseActionUrl . '" METHOD="POST" name="date_field_notification_settings_form">
         <INPUT TYPE="HIDDEN" NAME="field_id" VALUE="' . $field->getID() . '">
         <INPUT TYPE="HIDDEN" NAME="group_id" VALUE="' . $at->Group->getID() . '">
         <INPUT TYPE="HIDDEN" NAME="atid" VALUE="' . $at->getID() . '">';
     $out .= '<h3>' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'notif_settings_field', array($field->getLabel())) . '</h3>';
     $out .= '<fieldset>
         <TABLE BORDER="0" WIDTH="930px"><TR height="30"><TD>' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'reminder_form_part1', array($field->getLabel())) . '</TD><TD> <INPUT TYPE="TEXT" NAME="start" SIZE="5" VALUE="' . $start . '"> ' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'days') . '</TD><TD colspan=3">
         <SELECT NAME="notif_type">
             <OPTION VALUE="0" ' . $before . '>' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'notify_before') . '
             <OPTION VALUE="1" ' . $after . '>' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'notify_after') . '
         </SELECT> ' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'reminder_form_part2') . '</TD></TR><TR><TD valign="top">' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'reminder_form_part3') . ' <INPUT TYPE="TEXT" NAME="recurse" SIZE="5" VALUE="' . $recurse . '"> ' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'reminder_form_part4') . '</TD><TD valign="top"> ';
     $artRoleNames = array(array('value' => '1', 'text' => $GLOBALS['Language']->getText('tracker_common_types', 'role_SUBMITTER_short_desc')), array('value' => '2', 'text' => $GLOBALS['Language']->getText('tracker_common_types', 'role_ASSIGNEE_short_desc')), array('value' => '3', 'text' => $GLOBALS['Language']->getText('tracker_common_types', 'role_CC_short_desc')), array('value' => '4', 'text' => $GLOBALS['Language']->getText('tracker_common_types', 'role_COMMENTER_short_desc')));
     $out .= html_build_multiple_select_box_from_array($artRoleNames, 'notified_users[]', $notified_users, 4, true, '', false, '', false, '', false);
     $out .= '</TD><TD valign="top">' . $GLOBALS['Language']->getText('global', 'and') . ' </TD>
         <TD valign="top">';
     $qry = sprintf('SELECT ugroup_id, name FROM ugroup' . ' WHERE (group_id = %d || group_id = 100)' . ' AND ugroup_id <> 1' . ' AND ugroup_id <> 2' . ' AND ugroup_id <> 100', db_ei($at->Group->getID()));
     $res = db_query($qry);
     while ($rows = db_fetch_array($res)) {
         $groupNames[] = array('value' => 'g' . $rows['ugroup_id'], 'text' => util_translate_name_ugroup($rows['name']));
     }
     $out .= html_build_multiple_select_box_from_array($groupNames, 'notified_groups[]', $notified_groups, 8, true, '', false, '', false, '', false);
     $out .= '</SELECT></TD><TD valign="top">' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'reminder_form_part5') . ' <INPUT TYPE="TEXT" NAME="frequency" SIZE="5" VALUE="' . $frequency . '"> ' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'days') . '.</TD></TR></TABLE><INPUT TYPE="SUBMIT" NAME="submit_notif_settings" value="' . $GLOBALS['Language']->getText('global', 'btn_update') . '"></P></FORM></fieldset><P>' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'reminder_form_part6', array($field->getLabel())) . '<P>' . $GLOBALS['Language']->getText('plugin_tracker_date_reminder', 'reminder_form_part7', array($field->getLabel())) . '</P>' . '<P>';
     echo $out;
 }
Example #6
0
$limit = 50;
$full = true;
$filter_status = $request->get('filter_status');
if (!$filter_status) {
    $filter_status = array(SystemEvent::STATUS_NEW, SystemEvent::STATUS_RUNNING, SystemEvent::STATUS_DONE, SystemEvent::STATUS_WARNING, SystemEvent::STATUS_ERROR);
}
$filter_type = $request->get('filter_type');
$filter_type_any = '0';
if (!$filter_type || count($filter_type) === 1 && $filter_type[0] === $filter_type_any) {
    $filter_type = array();
}
$all_status = array(array('label' => SystemEvent::STATUS_NEW, 'checked' => in_array(SystemEvent::STATUS_NEW, $filter_status)), array('label' => SystemEvent::STATUS_RUNNING, 'checked' => in_array(SystemEvent::STATUS_RUNNING, $filter_status)), array('label' => SystemEvent::STATUS_DONE, 'checked' => in_array(SystemEvent::STATUS_DONE, $filter_status)), array('label' => SystemEvent::STATUS_WARNING, 'checked' => in_array(SystemEvent::STATUS_WARNING, $filter_status)), array('label' => SystemEvent::STATUS_ERROR, 'checked' => in_array(SystemEvent::STATUS_ERROR, $filter_status)));
$types = $se->getTypesForQueue($selected_queue_name);
uksort($types, 'strnatcasecmp');
foreach (array_chunk($types, ceil(count($types) / 3)) as $col) {
    foreach ($col as $type) {
        $typesArray[] = array('value' => $type, 'text' => $type);
    }
}
$selectbox = html_build_multiple_select_box_from_array($typesArray, "filter_type[]", array_values($filter_type), 10, false, '', true, '', false, '', false);
$events = $se->fetchLastEventsStatus($offset, $limit, $full, $filter_status, $filter_type, $token, $selected_queue_name);
$system_event_followers = array();
$dar = $sefdao->searchAll();
foreach ($dar as $row) {
    $types_selected = explode(',', $row['types']);
    $types = array(array('label' => SystemEvent::STATUS_NEW, 'selected' => in_array(SystemEvent::STATUS_NEW, $types_selected)), array('label' => SystemEvent::STATUS_RUNNING, 'selected' => in_array(SystemEvent::STATUS_RUNNING, $types_selected)), array('label' => SystemEvent::STATUS_DONE, 'selected' => in_array(SystemEvent::STATUS_DONE, $types_selected)), array('label' => SystemEvent::STATUS_WARNING, 'selected' => in_array(SystemEvent::STATUS_WARNING, $types_selected)), array('label' => SystemEvent::STATUS_ERROR, 'selected' => in_array(SystemEvent::STATUS_ERROR, $types_selected)));
    $system_event_followers[] = array_merge($row, array('edit' => $request->get('edit') == $row['id'], 'email' => $hp->purify($row['emails'], CODENDI_PURIFIER_CONVERT_HTML), 'types-selected' => $types));
}
$status_new_followers = array(array('label' => SystemEvent::STATUS_NEW), array('label' => SystemEvent::STATUS_DONE), array('label' => SystemEvent::STATUS_WARNING), array('label' => SystemEvent::STATUS_ERROR));
$renderer->renderToPage('admin-system-events', new SystemEvents_adminPresenter($hp, $queue_links, $token, $all_status, $selectbox, $events, $system_event_followers, $request->get('edit'), $status_new_followers, $selected_queue_name));
$HTML->footer(array());