'Device sysContact', 'contact_method' => 'syscontact', 'contact_endpoint' => '{"syscontact":"device"}', //'contact_disabled' => '0', //'contact_disabled_until' => NULL, //'contact_message_custom' => 0, //'contact_message_template' => NULL ]; dbInsert($syscontact, 'alert_contacts'); } if (isset($vars['sort'])) { $sort_order = get_sort_order($vars); switch ($vars['sort']) { case "id": case "contact_id": $sort = generate_query_sort('contact_id', $sort_order); break; case "transport": case "method": $sort = generate_query_sort('contact_method', $sort_order); break; case "description": $sort = generate_query_sort('contact_descr', $sort_order); break; case "status": $sort = generate_query_sort('contact_disabled', $sort_order); break; default: $sort = generate_query_sort([ 'contact_method', 'contact_descr' ], $sort_order); } } else { $sort = generate_query_sort([ 'contact_method', 'contact_descr' ]); } //r($sort); $contacts = dbFetchRows('SELECT * FROM `alert_contacts`' . $sort); if (!safe_empty($contacts)) { //r($contacts); // We have contacts, print the table. echo generate_box_open(); echo ' ' . PHP_EOL; $cols = [ [ NULL, 'style' => 'width: 1px;' ], [ 'id' => 'Id', 'style' => 'width: 50px;' ], [ 'transport' => 'Transport', 'style' => 'width: 100px;' ], [ 'description' => 'Description', 'style' => 'width: 100px;' ], [ 'Destination' ], [ 'Used', 'style' => 'width: 50px;' ], [ 'status' => 'Status', 'style' => 'width: 70px;' ], [ NULL, 'style' => 'width: 70px;' ], ]; echo generate_table_header($cols, $vars); ?> $parameters) { if (isset($parameters[$key], $contact['endpoint_variables'][$key])) { $contact['endpoint_identifiers'][] = escape_html($parameters[$key]['description'] . ': ' . $contact['endpoint_variables'][$key]); } } } $contact['endpoint_descr'] = implode('
', (array)$contact['endpoint_identifiers']); } else { $contact['endpoint_descr'] = escape_html($contact['contact_endpoint']); } if ($transport === 'syscontact') { $transport_name = 'sysContact'; $transport_status = $contact['contact_disabled'] ? 'disabled' : 'enabled'; $contact['endpoint_descr'] = 'Device specified contact in sysContact field (email only)'; } elseif (!isset($config['transports'][$transport])) { // Transport undefined (removed or limited to Pro) $transport_name = nicecase($transport) . ' (Missing)'; $transport_status = 'missing'; } else { $transport_name = $config['transports'][$transport]['name']; $transport_status = $contact['contact_disabled'] ? 'disabled' : 'enabled'; } echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; echo ' '; } ?>
' . $contact['contact_id'] . '' . $transport_name . '' . escape_html($contact['contact_descr']) . '' . $contact['endpoint_descr'] . '' . $num_assocs . '' . $transport_status . ''; if ($_SESSION['userlevel'] >= 10 && $transport !== 'syscontact') { $buttons = [ [ 'title' => 'Edit', 'event' => 'default', 'url' => generate_url([ 'page' => 'contact' ], [ 'contact_id' => $contact['contact_id'] ]), 'icon' => 'icon-cog text-muted' ], [ 'event' => 'danger', 'icon' => 'icon-trash', 'url' => generate_url(['page' => 'contacts'], [ 'action' => 'contact_delete', 'contact_id' => $contact['contact_id'], 'confirm_'.$contact['contact_id'] => 'confirm', 'requesttoken' => $_SESSION['requesttoken'] ]), // confirmation dialog 'attribs' => [ 'data-title' => 'Delete Contact ['.$transport_name.'] "'.escape_html($contact['contact_descr']).'"?', 'data-toggle' => 'confirm', // Enable confirmation dialog 'data-placement' => 'left', 'data-content' => '

Warning!

Are you sure you want to delete
this contact?
', ], ], ]; echo PHP_EOL . generate_button_group($buttons, [ 'title' => 'Contact actions' ]); } echo '