';
form_hidden_box($field_name, $field_array['value'], ((isset($field_array['default'])) ? $field_array['default'] : ''), true);
print '
';
} elseif ($field_array['method'] == 'hidden_zero') {
print '';
form_hidden_box($field_name, $field_array['value'], '0', true);
print '
';
} elseif ($field_array['method'] == 'spacer') {
$collapsible = (isset($field_array['collapsible']) && $field_array['collapsible'] == 'true');
print "';
} else {
// Make a row using a div
if (isset($config_array['force_row_color'])) {
print "";
} else {
print "
';
}
$i++;
}
if (isset($_SESSION['sess_error_fields'])) {
kill_session_var('sess_error_fields');
}
}
}
/* draw_edit_control - draws a single control to be used on an html edit form
@arg $field_name - the name of the control
@arg $field_array - an array containing data for this control. see include/global_form.php
for more specific syntax */
function draw_edit_control($field_name, &$field_array) {
switch ($field_array['method']) {
case 'textbox':
form_text_box(
$field_name,
$field_array['value'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
$field_array['max_length'],
((isset($field_array['size'])) ? $field_array['size'] : '40'),
'text',
((isset($field_array['form_id'])) ? $field_array['form_id'] : ''),
((isset($field_array['placeholder'])) ? $field_array['placeholder'] : '')
);
break;
case 'filepath':
form_filepath_box($field_name,
$field_array['value'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
$field_array['max_length'],
((isset($field_array['size'])) ? $field_array['size'] : '40'),
'text',
((isset($field_array['form_id'])) ? $field_array['form_id'] : '')
);
break;
case 'dirpath':
form_dirpath_box(
$field_name,
$field_array['value'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
$field_array['max_length'],
((isset($field_array['size'])) ? $field_array['size'] : '40'),
'text',
((isset($field_array['form_id'])) ? $field_array['form_id'] : '')
);
break;
case 'textbox_password':
form_text_box(
$field_name,
$field_array['value'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
$field_array['max_length'],
((isset($field_array['size'])) ? $field_array['size'] : '40'),
'password',
((isset($field_array['form_id'])) ? $field_array['form_id'] : ''),
'********'
);
print '
';
form_text_box(
$field_name . '_confirm',
$field_array['value'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
$field_array['max_length'],
((isset($field_array['size'])) ? $field_array['size'] : '40'),
'password',
((isset($field_array['form_id'])) ? $field_array['form_id'] : ''),
'********'
);
break;
case 'textarea':
form_text_area(
$field_name,
$field_array['value'],
$field_array['textarea_rows'],
$field_array['textarea_cols'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : ''),
((isset($field_array['placeholder'])) ? $field_array['placeholder'] : '')
);
break;
case 'drop_array':
form_dropdown(
$field_name,
$field_array['array'],
'',
'',
$field_array['value'],
((isset($field_array['none_value'])) ? $field_array['none_value'] : ''),
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : '')
);
break;
case 'drop_language':
form_droplanguage(
$field_name,
'',
'',
$field_array['value'],
((isset($field_array['none_value'])) ? $field_array['none_value'] : ''),
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : '')
);
break;
case 'drop_files':
$array_files = array();
if (isset($field_array['directory'])) {
$dir = $field_array['directory'];
if (is_dir($dir) && is_readable($dir)) {
if (function_exists('scandir')) {
$files = scandir($dir);
} elseif ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
$files[] = $file;
}
closedir($dh);
}
if (cacti_sizeof($files)) {
foreach($files as $file) {
if (is_readable($dir . '/' . $file) && $file != '.' && $file != '..') {
if (!in_array($file, $field_array['exclusions'])) {
$array_files[basename($file)] = basename($file);
}
}
}
}
}
}
form_dropdown(
$field_name,
$array_files,
'',
'',
$field_array['value'],
((isset($field_array['none_value'])) ? $field_array['none_value'] : ''),
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : '')
);
break;
case 'drop_sql':
form_dropdown(
$field_name,
db_fetch_assoc($field_array['sql']),
'name',
'id',
$field_array['value'],
((isset($field_array['none_value'])) ? $field_array['none_value'] : ''),
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : '')
);
break;
case 'drop_callback':
form_callback(
$field_name,
$field_array['sql'],
'name',
'id',
$field_array['action'],
$field_array['id'],
$field_array['value'],
((isset($field_array['none_value'])) ? $field_array['none_value'] : ''),
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : '')
);
break;
case 'drop_multi':
form_multi_dropdown(
$field_name,
$field_array['array'],
(isset($field_array['sql']) ? db_fetch_assoc($field_array['sql']):$field_array['value']),
'id',
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : '')
);
break;
case 'drop_tree':
grow_dropdown_tree(
$field_array['tree_id'],
'0',
$field_name,
$field_array['value']
);
break;
case 'drop_color':
form_color_dropdown(
$field_name,
$field_array['value'],
__('None'),
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : '')
);
break;
case 'checkbox':
form_checkbox(
$field_name,
$field_array['value'],
$field_array['friendly_name'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['form_id'])) ? $field_array['form_id'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : ''),
$field_array['friendly_name']
);
break;
case 'checkbox_group':
if (isset($field_array['type']) && $field_array['type'] == 'flex') {
print "
" . PHP_EOL;
} else {
print " " . PHP_EOL;
}
foreach ($field_array['items'] as $check_name => $check_array) {
if (isset($field_array['type']) && $field_array['type'] == 'flex') {
print ' ';
}
form_checkbox(
$check_name,
$check_array['value'],
$check_array['friendly_name'],
((isset($check_array['default'])) ? $check_array['default'] : ''),
((isset($check_array['form_id'])) ? $check_array['form_id'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($check_array['on_change'])) ? $check_array['on_change'] : (((isset($field_array['on_change'])) ? $field_array['on_change'] : ''))),
$field_array['friendly_name'],
true
);
if (isset($field_array['type']) && $field_array['type'] == 'flex') {
print ' ';
} else {
print ' ';
}
}
if (isset($field_array['type']) && $field_array['type'] == 'flex') {
print ' ' . PHP_EOL;
} else {
print ' ' . PHP_EOL;
}
break;
case 'radio':
print "" . PHP_EOL;
foreach ($field_array['items'] as $radio_index => $radio_array) {
form_radio_button(
$field_name,
$field_array['value'],
$radio_array['radio_value'],
$radio_array['radio_caption'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
((isset($field_array['class'])) ? $field_array['class'] : ''),
((isset($field_array['on_change'])) ? $field_array['on_change'] : '')
);
print ' ';
}
print ' ' . PHP_EOL;
break;
case 'custom':
print $field_array['value'];
break;
case 'template_checkbox':
print '' . html_boolean_friendly($field_array['value']) . '';
form_hidden_box($field_name, $field_array['value'], '', true);
break;
case 'template_drop_array':
print '' . $field_array['array'][$field_array['value']] . '';
form_hidden_box($field_name, $field_array['value'], '', true);
break;
case 'font':
form_font_box(
$field_name,
$field_array['value'],
((isset($field_array['default'])) ? $field_array['default'] : ''),
$field_array['max_length'],
((isset($field_array['size'])) ? $field_array['size'] : '40'), 'text',
((isset($field_array['form_id'])) ? $field_array['form_id'] : ''),
((isset($field_array['placeholder'])) ? $field_array['placeholder'] : '')
);
break;
case 'file':
form_file($field_name,
((isset($field_array['size'])) ? $field_array['size'] : '40'),
((isset($field_array['accept'])) ? $field_array['accept'] : ''));
break;
case 'button':
form_button(
$field_name,
((isset($field_array['value'])) ? $field_array['value'] : ''),
((isset($field_array['title'])) ? $field_array['title'] : ''),
((isset($field_array['on_click'])) ? $field_array['on_click'] : '')
);
break;
case 'submit':
form_submit(
$field_name,
((isset($field_array['value'])) ? $field_array['value'] : ''),
((isset($field_array['title'])) ? $field_array['title'] : ''),
((isset($field_array['on_click'])) ? $field_array['on_click'] : '')
);
break;
default:
if (isset($field_array['value'])) {
print '' . html_escape($field_array['value']) . '';
form_hidden_box($field_name, $field_array['value'], '', true);
} else {
cacti_log('ERROR: Field Name: ' . $field_name . ' includes Method: ' . $field_array['method'] . ' does not include a value \'value\' element.', false);
}
break;
}
}
/* form_button - draws a standard button form element
@arg $form_name - the name of this form element
@arg $value - the display value for the button
@arg $title - the hover title for the button
@arg $action - the onClick action for the button */
function form_button($form_name, $value, $title = '', $action = '') {
print "";
}
/* form_button - draws a standard button form element
@arg $form_name - the name of this form element
@arg $value - the display value for the button
@arg $title - the hover title for the button
@arg $action - the onClick action for the button */
function form_submit($form_name, $value, $title = '', $action = '') {
print "";
}
/* form_file - draws a standard html file input element
@arg $form_name - the name of this form element
@arg $form_size - the size (width) of the textbox
@arg $form_accept - the file types permitted
*/
function form_file($form_name, $form_size = 30, $form_accept = '') {
print "\n";
print "\n";
print "\n";
print "\n";
print " \n";
}
/* form_filepath_box - draws a standard html textbox and provides status of a files existence
@arg $form_name - the name of this form element
@arg $form_previous_value - the current value of this form element
@arg $form_default_value - the value of this form element to use if there is
no current value available
@arg $form_max_length - the maximum number of characters that can be entered
into this textbox
@arg $form_size - the size (width) of the textbox
@arg $type - the type of textbox, either 'text' or 'password'
@arg $current_id - used to determine if a current value for this form element
exists or not. a $current_id of '0' indicates that no current value exists,
a non-zero value indicates that a current value does exist
@arg data - array containing 'text' element for display and if 'error' element present, shows failure */
function form_filepath_box($form_name, $form_previous_value, $form_default_value, $form_max_length, $form_size = 30, $type = 'text', $current_id = 0, $data = false) {
if (($form_previous_value == '') && (empty($current_id))) {
$form_previous_value = $form_default_value;
}
print "";
}
print " class='ui-state-default ui-corner-all$error_class'";
print " id='$form_name' placeholder='" . __esc('Enter a valid file path') . "' name='$form_name' size='$form_size'" . (!empty($form_max_length) ? " maxlength='$form_max_length'" : '') . " value='" . html_escape($form_previous_value) . "'>" . $extra_data;
}
/* form_dirpath_box - draws a standard html textbox and provides status of a directories existence
@arg $form_name - the name of this form element
@arg $form_previous_value - the current value of this form element
@arg $form_default_value - the value of this form element to use if there is
no current value available
@arg $form_max_length - the maximum number of characters that can be entered
into this textbox
@arg $form_size - the size (width) of the textbox
@arg $type - the type of textbox, either 'text' or 'password'
@arg $current_id - used to determine if a current value for this form element
exists or not. a $current_id of '0' indicates that no current value exists,
a non-zero value indicates that a current value does exist */
function form_dirpath_box($form_name, $form_previous_value, $form_default_value, $form_max_length, $form_size = 30, $type = 'text', $current_id = 0) {
if (($form_previous_value == '') && (empty($current_id))) {
$form_previous_value = $form_default_value;
}
print "";
}else if (is_file($form_previous_value)) {
$extra_data = "";
}else if ($form_previous_value == '') {
$extra_data = '';
} else {
$extra_data = "";
}
print " id='$form_name' name='$form_name' placeholder='" . __esc('Enter a valid directory path'). "' size='$form_size'" . (!empty($form_max_length) ? " maxlength='$form_max_length'" : '') . " value='" . html_escape($form_previous_value) . "'>" . $extra_data;
}
/* form_text_box - draws a standard html textbox
@arg $form_name - the name of this form element
@arg $form_previous_value - the current value of this form element
@arg $form_default_value - the value of this form element to use if there is
no current value available
@arg $form_max_length - the maximum number of characters that can be entered
into this textbox
@arg $form_size - the size (width) of the textbox
@arg $type - the type of textbox, either 'text' or 'password'
@arg $current_id - used to determine if a current value for this form element
exists or not. a $current_id of '0' indicates that no current value exists,
a non-zero value indicates that a current value does exist
@arg $placeholder - place a placeholder over an empty field
@arg $title - use a title attribute when hovering over the textbox
*/
function form_text_box($form_name, $form_previous_value, $form_default_value, $form_max_length, $form_size = 30, $type = 'text', $current_id = 0, $placeholder = '', $title = '') {
if (($form_previous_value == '') && (empty($current_id))) {
$form_previous_value = $form_default_value;
}
if ($type == 'password') {
print "";
}
print "\n";
}
/* form_hidden_box - draws a standard html hidden element
@arg $form_name - the name of this form element
@arg $form_previous_value - the current value of this form element
@arg $form_default_value - the value of this form element to use if there is
no current value available */
function form_hidden_box($form_name, $form_previous_value, $form_default_value, $in_form = false) {
if ($form_previous_value == '') {
$form_previous_value = $form_default_value;
}
print "";
}
/* form_dropdown - draws a standard html dropdown box
@arg $form_name - the name of this form element
@arg $form_data - an array containing data for this dropdown. it can be formatted
in one of two ways:
$array["id"] = "value";
-- or --
$array[0]["id"] = 43;
$array[0]["name"] = "Red";
@arg $column_display - used to identify the key to be used for display data. this
is only applicable if the array is formatted using the second method above
@arg $column_id - used to identify the key to be used for id data. this
is only applicable if the array is formatted using the second method above
@arg $form_previous_value - the current value of this form element
@arg $form_none_entry - the name to use for a default 'none' element in the dropdown
@arg $form_default_value - the value of this form element to use if there is
no current value available
@arg $css_class - any css that needs to be applied to this form element
@arg $on_change - onChange modifier */
function form_dropdown($form_name, $form_data, $column_display, $column_id, $form_previous_value, $form_none_entry, $form_default_value, $class = '', $on_change = '') {
if ($form_previous_value == '') {
$form_previous_value = $form_default_value;
}
if (isset($_SESSION['sess_error_fields'])) {
if (!empty($_SESSION['sess_error_fields'][$form_name])) {
$class .= ($class != '' ? ' ':'') . 'txtErrorTextBox';
unset($_SESSION['sess_error_fields'][$form_name]);
}
}
if (isset($_SESSION['sess_field_values'])) {
if (!empty($_SESSION['sess_field_values'][$form_name])) {
$form_previous_value = $_SESSION['sess_field_values'][$form_name];
}
}
if ($class != '') {
$class = " class='$class' ";
}
if ($on_change != '') {
$on_change = " onChange='$on_change' ";
}
print "\n";
}
function form_droplanguage($form_name, $column_display, $column_id, $form_previous_value, $form_none_entry, $form_default_value, $class = '', $on_change = '') {
if ($form_previous_value == '') {
$form_previous_value = $form_default_value;
}
if (isset($_SESSION['sess_error_fields'])) {
if (!empty($_SESSION['sess_error_fields'][$form_name])) {
$class .= ($class != '' ? ' ':'') . 'txtErrorTextBox';
unset($_SESSION['sess_error_fields'][$form_name]);
}
}
if (isset($_SESSION['sess_field_values'])) {
if (!empty($_SESSION['sess_field_values'][$form_name])) {
$form_previous_value = $_SESSION['sess_field_values'][$form_name];
}
}
if ($class != '') {
$class = " class='$class' ";
}
if ($on_change != '') {
$on_change = " onChange='$on_change' ";
}
$languages = get_installed_locales();
print "';
}
function form_callback($form_name, $classic_sql, $column_display, $column_id, $callback, $previous_id, $previous_value, $none_entry, $default_value, $class = '', $on_change = '') {
if ($previous_value == '') {
$previous_value = $default_value;
}
if (isset($_SESSION['sess_error_fields'])) {
if (!empty($_SESSION['sess_error_fields'][$form_name])) {
$class .= ($class != '' ? ' ':'') . 'txtErrorTextBox';
unset($_SESSION['sess_error_fields'][$form_name]);
}
}
if ($class != '') {
$class = " class='$class' ";
}
$theme = get_selected_theme();
if ($theme == 'classic' || read_config_option('autocomplete') > 0) {
print "\n";
} else {
if (empty($previous_id) && $previous_value == '') {
$previous_value = $none_entry;
}
print "";
print "";
?>
";
print "";
print "';
print '';
}
/* form_radio_button - draws a standard html radio button
@arg $form_name - the name of this form element
@arg $form_previous_value - the current value of this form element (selected or not)
@arg $form_current_value - the current value of this form element (element id)
@arg $form_caption - the text to display to the right of the checkbox
@arg $form_default_value - the value of this form element to use if there is
no current value available */
function form_radio_button($form_name, $form_previous_value, $form_current_value, $form_caption, $form_default_value, $class = '', $on_change = '') {
if ($form_previous_value == '') {
$form_previous_value = $form_default_value;
}
if (isset($_SESSION['sess_field_values'])) {
if (!empty($_SESSION['sess_field_values'][$form_name])) {
$form_previous_value = $_SESSION['sess_field_values'][$form_name];
}
}
if ($class != '') {
$class = " $class";
}
if ($on_change != '') {
$on_change = " onChange='$on_change' ";
}
if ($form_previous_value == $form_current_value) {
$checked = " checked aria-checked='true'";
} else {
$checked = " aria-checked='false'";
}
$css_id = $form_name . '_' . $form_current_value;
print "";
print "";
print "";
print "";
}
/* form_text_area - draws a standard html text area box
@arg $form_name - the name of this form element
@arg $form_previous_value - the current value of this form element (selected or not)
@arg $form_rows - the number of rows in the text area box
@arg $form_columns - the number of columns in the text area box
@arg $form_default_value - the value of this form element to use if there is
no current value available */
function form_text_area($form_name, $form_previous_value, $form_rows, $form_columns, $form_default_value, $class = '', $on_change = '', $placeholder = '') {
if ($form_previous_value == '') {
$form_previous_value = $form_default_value;
}
if (isset($_SESSION['sess_error_fields'])) {
if (!empty($_SESSION['sess_error_fields'][$form_name])) {
$class .= ($class != '' ? ' ':'') . 'txtErrorTextBox';
unset($_SESSION['sess_error_fields'][$form_name]);
}
}
if (isset($_SESSION['sess_field_values'])) {
if (!empty($_SESSION['sess_field_values'][$form_name])) {
$form_previous_value = $_SESSION['sess_field_values'][$form_name];
}
}
if ($on_change != '') {
$on_change = " onChange='$on_change' ";
}
if ($placeholder != '') {
$placeholder = " placeholder='" . html_escape($placeholder) . "'";
}
print "\n";
}
/* form_multi_dropdown - draws a standard html multiple select dropdown
@arg $form_name - the name of this form element
@arg $array_display - an array containing display values for this dropdown. it must
be formatted like:
$array[id] = display;
@arg $sql_previous_values - an array containing keys that should be marked as selected.
it must be formatted like:
$array[0][$column_id] = key
@arg $column_id - the name of the key used to reference the keys above */
function form_multi_dropdown($form_name, $array_display, $sql_previous_values, $column_id, $class = '', $on_change = '') {
if (!is_array($sql_previous_values) && $sql_previous_values != '') {
$values = explode(',', $sql_previous_values);
$sql_previous_values = array();
foreach($values as $value) {
$sql_previous_values[][$column_id] = $value;
}
} elseif ($sql_previous_values == '') {
$values = db_fetch_cell_prepared('SELECT value FROM settings WHERE name = ?', array($form_name));
if ($values != '') {
$values = explode(',', $values);
foreach($values as $value) {
$sql_previous_values[][$column_id] = $value;
}
}
}
if (isset($_SESSION['sess_error_fields'])) {
if (!empty($_SESSION['sess_error_fields'][$form_name])) {
$class .= ($class != '' ? ' ':'') . 'txtErrorTextBox';
unset($_SESSION['sess_error_fields'][$form_name]);
}
}
$class = 'multiselect';
if ($class != '') {
$class .= " $class";
}
if ($on_change != '') {
$on_change = " onChange='$on_change' ";
}
print "\n";
}
/*
* Second level form elements
*/
/* form_color_dropdown - draws a dropdown containing a list of colors that uses a bit
of css magic to make the dropdown item background color represent each color in
the list
@arg $form_name - the name of this form element
@arg $form_previous_value - the current value of this form element
@arg $form_none_entry - the name to use for a default 'none' element in the dropdown
@arg $form_default_value - the value of this form element to use if there is
no current value available */
function form_color_dropdown($form_name, $form_previous_value, $form_none_entry, $form_default_value, $class = '', $on_change = '') {
if ($form_previous_value == '') {
$form_previous_value = $form_default_value;
}
if ($class != '') {
$class = " class='colordropdown $class' ";
} else {
$class = " class='colordropdown'";
}
$current_color = db_fetch_cell_prepared('SELECT hex
FROM colors
WHERE id = ?',
array($form_previous_value));
if ($on_change != '') {
$on_change = ' ' . $on_change . ';';
}
$on_change = " onChange='this.style.backgroundColor=this.options[this.selectedIndex].style.backgroundColor;$on_change'";
$colors_sql = 'SELECT *
FROM colors
ORDER BY
SUBSTRING(hex,0,2) ASC,
SUBSTRING(hex,2,2) ASC,
SUBSTRING(hex,4,2) ASC';
$colors_list = db_fetch_assoc($colors_sql);
print "';
}
/* form_font_box - draws a standard html textbox and provides status of a fonts existence
@arg $form_name - the name of this form element
@arg $form_previous_value - the current value of this form element
@arg $form_default_value - the value of this form element to use if there is
no current value available
@arg $form_max_length - the maximum number of characters that can be entered
into this textbox
@arg $form_size - the size (width) of the textbox
@arg $type - the type of textbox, either 'text' or 'password'
@arg $current_id - used to determine if a current value for this form element
exists or not. a $current_id of '0' indicates that no current value exists,
a non-zero value indicates that a current value does exist */
function form_font_box($form_name, $form_previous_value, $form_default_value, $form_max_length, $form_size = 30, $type = 'text', $current_id = 0, $placeholder = '') {
global $config;
if (($form_previous_value == '') && (empty($current_id))) {
$form_previous_value = $form_default_value;
}
print " [" . __('NO FONT VERIFICATION POSSIBLE') . ']';
}
print " id='$form_name' " . ($placeholder != '' ? "placeholder='" . html_escape($placeholder) . "'":'') . " name='$form_name' size='$form_size'" . (!empty($form_max_length) ? " maxlength='$form_max_length'" : '') . " value='" . html_escape($form_previous_value) . "'>" . $extra_data;
}
/* form_confirm - draws a table presenting the user with some choice and allowing
them to either proceed (delete) or cancel
@arg $body_text - the text to prompt the user with on this form
@arg $cancel_url - the url to go to when the user clicks 'cancel'
@arg $action_url - the url to go to when the user clicks 'delete' */
function form_confirm($title_text, $body_text, $cancel_url, $action_url) { ?>
|
|
")' value=''>
")' value=''>
|
";
} else {
$cancel_action = '';
}
?>
\n";
}
/* form_end - draws post form end. To be combined with form_start() */
function form_end($ajax = true) {
global $form_id, $form_action;
print '' . PHP_EOL;
if ($ajax) { ?>