log_filter.admin.inc in Log Filter 7
Drupal Log Filter module
File
admin/log_filter.admin.incView source
<?php
/**
* @file
* Drupal Log Filter module
*/
/**
* Defines configuration form fields.
*
* @param array $form
* @param array &$form_state
* @return array
* - the return value of system_settings_form()
*/
function _log_filter_admin_form($form, &$form_state) {
module_load_include('inc', 'log_filter', 'LogFilter');
if (variable_get('log_filter_css', TRUE)) {
drupal_add_css(($path = drupal_get_path('module', 'log_filter')) . '/admin/log_filter.admin.css', array(
'type' => 'file',
'group' => CSS_DEFAULT,
'preprocess' => FALSE,
'every_page' => FALSE,
));
}
// Clear menu cache if just submitted.
if (!empty($_SESSION) && !empty($_SESSION['module']) && !empty($_SESSION['module']['log_filter']) && array_key_exists('admin_form_submitted', $_SESSION['module']['log_filter'])) {
menu_rebuild();
unset($_SESSION['module']['log_filter']['admin_form_submitted']);
if (empty($_SESSION['module']['log_filter'])) {
unset($_SESSION['module']['log_filter']);
if (empty($_SESSION['module'])) {
unset($_SESSION['module']);
}
}
}
$form['general'] = array(
'#type' => 'fieldset',
'#title' => t('General settings'),
'#collapsible' => FALSE,
'#collapsed' => FALSE,
'log_filter_admintheme' => array(
'#type' => 'checkbox',
'#title' => t('Do always use the administrative theme on log view pages'),
'#default_value' => variable_get('log_filter_admintheme', TRUE),
'#attributes' => array(
'autocomplete' => 'off',
),
),
'log_filter_cssdefault' => array(
'#type' => 'checkbox',
'#title' => t('Link this module\'s default stylesheet'),
'#description' => t('Otherwise, implement styling in the site\'s theme layer.'),
'#default_value' => variable_get('log_filter_cssdefault', TRUE),
'#attributes' => array(
'autocomplete' => 'off',
),
),
);
$form['log_list'] = array(
'#type' => 'fieldset',
'#title' => t('Log list settings'),
'#collapsible' => FALSE,
'#collapsed' => FALSE,
'log_filter_pgrng' => array(
'#type' => 'textfield',
'#title' => t('Default log list page range'),
'#default_value' => variable_get('log_filter_pgrng', LogFilter::PAGE_RANGE_DEFAULT),
'#attributes' => array(
'autocomplete' => 'off',
),
'#size' => 3,
),
'log_filter_trnslt' => array(
'#type' => 'checkbox',
'#title' => t('Default to translate log message'),
'#description' => t('Translating log messages is heavy performance-wise'),
'#default_value' => variable_get('log_filter_trnslt', FALSE),
'#attributes' => array(
'autocomplete' => 'off',
),
),
'log_filter_showdeletions' => array(
'#type' => 'checkbox',
'#title' => t('List log entries that record that logs have been deleted'),
'#description' => t('Log entries of type \'log_filter delete logs\' defaults to be hidden, unless when that type is selected specifically.'),
'#default_value' => variable_get('log_filter_showdeletions', FALSE),
'#attributes' => array(
'autocomplete' => 'off',
),
),
);
$form['#submit'][] = 'log_filter_admin_form_submit';
return system_settings_form($form);
}
/**
* @param array $form
* @param array &$form_state
* @return void
*/
function _log_filter_admin_form_submit($form, &$form_state) {
// Make form clear menu cache upon submission.
if (!isset($_SESSION['module'])) {
$_SESSION['module'] = array(
'log_filter' => array(
'admin_form_submitted' => TRUE,
),
);
}
elseif (!isset($_SESSION['module']['log_filter'])) {
$_SESSION['module']['log_filter'] = array(
'admin_form_submitted' => TRUE,
);
}
else {
$_SESSION['module']['log_filter']['admin_form_submitted'] = TRUE;
}
$values =& $form_state['values'];
$values['log_filter_pgrng'] = !($val = (int) trim($values['log_filter_pgrng'])) || $val < 0 ? LogFilter::PAGE_RANGE_DEFAULT : ($val > LogFilter::PAGE_RANGE_MAX ? LogFilter::PAGE_RANGE_MAX : $val);
}
Functions
Name![]() |
Description |
---|---|
_log_filter_admin_form | Defines configuration form fields. |
_log_filter_admin_form_submit |