util.module in Util 6.3
Same filename and directory in other branches
Helper Utilities for your Drupal site.
File
util.moduleView source
<?php
/**
* @file
* Helper Utilities for your Drupal site.
*/
function util_menu() {
$menu['admin/settings/util'] = array(
'title' => 'Utilities',
'description' => "Helper Utilities for your Drupal site.",
'page callback' => 'drupal_get_form',
'page arguments' => array(
'util_page',
),
'access arguments' => array(
'administer site configuration',
),
'type' => MENU_NORMAL_ITEM,
);
$menu['admin/settings/util/general'] = array(
'title' => 'Base',
'description' => "Helper Utilities for your Drupal site.",
'page callback' => 'drupal_get_form',
'page arguments' => array(
'util_page',
),
'access arguments' => array(
'administer site configuration',
),
'type' => MENU_DEFAULT_LOCAL_TASK,
'weight' => -10,
);
$menu['admin/reports/error_level'] = array(
'title' => 'Site Error Levels',
'description' => "Details the current site error reporting level.",
'page callback' => 'util_error_levels',
'page arguments' => array(
3,
),
'access arguments' => array(
'access site reports',
),
'type' => MENU_NORMAL_ITEM,
);
return $menu;
}
function util_page() {
$form = array();
// For now output empty page, this is purely to reserve space for future development
// and to allow contribs to form_alter onto this page.
$form['util'] = array(
'#value' => theme('advanced_help_topic', 'util', 'util') . t('The Utility module is a grouping of commonly-needed utilities that are simple to code, everyone wants, but nobody actually codes them.'),
);
$form['clear'] = array(
'#value' => '<p>Clicking the "Save" button will rebuild the menus.</p>',
'#prefix' => '<div class="clear-block">',
'#suffix' => '</div>',
);
$form['#submit'][] = array(
'util_page_submit',
);
$form['buttons']['#weight'] = 99;
return system_settings_form($form);
}
function util_page_submit() {
menu_rebuild();
}
/**
* Show the current error reporting level.
*/
function util_error_levels($current = NULL) {
$e_all = 2047;
$levels = array(
'E_ERROR ' => array(
'value' => 1,
'desc' => 'Fatal run-time errors. These indicate errors that can not be recovered from, such as a memory allocation problem. Execution of the script is halted. ',
'note' => ' ',
),
'E_WARNING ' => array(
'value' => 2,
'desc' => 'Run-time warnings (non-fatal errors). Execution of the script is not halted. ',
'note' => ' ',
),
'E_PARSE ' => array(
'value' => 4,
'desc' => 'Compile-time parse errors. Parse errors should only be generated by the parser. ',
'note' => ' ',
),
'E_NOTICE ' => array(
'value' => 8,
'desc' => 'Run-time notices. Indicate that the script encountered something that could indicate an error, but could also happen in the normal course of running a script. ',
'note' => ' ',
),
'E_CORE_ERROR ' => array(
'value' => 16,
'desc' => 'Fatal errors that occur during PHPs initial startup. This is like an E_ERROR, except it is generated by the core of PHP. ',
'note' => 'since PHP 4',
),
'E_CORE_WARNING ' => array(
'value' => 32,
'desc' => 'Warnings (non-fatal errors) that occur during PHPs initial startup. This is like an E_WARNING, except it is generated by the core of PHP. ',
'note' => 'since PHP 4',
),
'E_COMPILE_ERROR ' => array(
'value' => 64,
'desc' => 'Fatal compile-time errors. This is like an E_ERROR, except it is generated by the Zend Scripting Engine. ',
'note' => 'since PHP 4',
),
'E_COMPILE_WARNING ' => array(
'value' => 128,
'desc' => 'Compile-time warnings (non-fatal errors). This is like an E_WARNING, except it is generated by the Zend Scripting Engine. ',
'note' => 'since PHP 4',
),
'E_USER_ERROR ' => array(
'value' => 256,
'desc' => 'User-generated error message. This is like an E_ERROR, except it is generated in PHP code by using the PHP function trigger_error(). ',
'note' => 'since PHP 4',
),
'E_USER_WARNING ' => array(
'value' => 512,
'desc' => 'User-generated warning message. This is like an E_WARNING, except it is generated in PHP code by using the PHP function trigger_error(). ',
'note' => 'since PHP 4',
),
'E_USER_NOTICE ' => array(
'value' => 1024,
'desc' => 'User-generated notice message. This is like an E_NOTICE, except it is generated in PHP code by using the PHP function trigger_error(). ',
'note' => 'since PHP 4',
),
);
if (version_compare(PHP_VERSION, '5.0.0', '>=')) {
$levels += array(
'E_STRICT ' => array(
'value' => 2048,
'desc' => 'Enable to have PHP suggest changes to your code which will ensure the best interoperability and forward compatibility of your code. ',
'note' => 'since PHP 5',
),
);
}
if (version_compare(PHP_VERSION, '5.2.0', '>=')) {
$e_all = 6143;
$levels += array(
'E_RECOVERABLE_ERROR ' => array(
'value' => 4096,
'desc' => 'Catchable fatal error. It indicates that a probably dangerous error occured, but did not leave the Engine in an unstable state. If the error is not caught by a user defined handle (see also set_error_handler()), the application aborts as it was an E_ERROR. ',
'note' => 'since PHP 5.2.0',
),
);
}
if (version_compare(PHP_VERSION, '5.3.0', '>=')) {
$e_all = 30719;
$levels += array(
'E_DEPRECATED ' => array(
'value' => 8192,
'desc' => 'Run-time notices. Enable this to receive warnings about code that will not work in future versions. ',
'note' => 'since PHP 5.3.0',
),
'E_USER_DEPRECATED ' => array(
'value' => 16384,
'desc' => 'User-generated warning message. This is like an E_DEPRECATED, except it is generated in PHP code by using the PHP function trigger_error(). ',
'note' => 'since PHP 5.3.0',
),
);
}
$levels += array(
'E_ALL ' => array(
'value' => $e_all,
'desc' => 'All errors and warnings, as supported, except of level E_STRICT. ',
'note' => '<em>30719 in PHP 5.3.x, 6143 in PHP 5.2.x, 2047 previously.</em>',
),
);
if (!$current) {
$current = error_reporting();
}
$output = "<h2>Current Error Reporting Value: {$current}</h2>";
$nots = "<h2>Not Using</h2>";
foreach ($levels as $level => $data) {
// TRUE/FALSE would catch E_ALL; this does not, unless correct.
if (($current & $data['value']) == $data['value']) {
$output .= '<p>' . $level . ' <small>' . $data['desc'] . ' ' . $data['note'] . '</small>' . '</p>';
}
else {
$nots .= '<p>' . $level . ' <small>' . $data['desc'] . ' ' . $data['note'] . '</small>' . '</p>';
}
}
return $output . $nots;
}
Functions
Name![]() |
Description |
---|---|
util_error_levels | Show the current error reporting level. |
util_menu | @file Helper Utilities for your Drupal site. |
util_page | |
util_page_submit |