if (! $maintables) {
/// hide errors from headers in case debug enabled in config.php
$origdebug = $CFG->debug;
- $CFG->debug = 5;
+ $CFG->debug = DEBUG_MINIMAL;
error_reporting($CFG->debug);
if (empty($agreelicence)) {
$strlicense = get_string("license");
// hide errors from headers in case debug is enabled
$origdebug = $CFG->debug;
- $CFG->debug = 5;
+ $CFG->debug = DEBUG_MINIMAL;
error_reporting($CFG->debug);
// logout in case we are upgrading from pre 1.7 version - prevention of weird session problems
require_once($CFG->dirroot . "/enrol/ldap/enrol.php");
// ensure errors are well explained
- $CFG->debug = E_NOTICE;
+ $CFG->debug = DEBUG_NORMAL;
// update enrolments -- these handlers should autocreate courses if required
$enrol = new enrolment_plugin_ldap();
$lifetime = $CFG->filelifetime;
}
- // remove moodle specific debug messages by switching the sign bit in error level bitmask
- if ($CFG->debug > 0) {
- $CFG->debug = $CFG->debug | 0x80000000;
- }
+ // disable moodle specific debug messages
+ disable_debugging();
$relativepath = get_file_argument('file.php');
$forcedownload = optional_param('forcedownload', 0, PARAM_BOOL);
}
}
+ // disable moodle specific debug messages
+ disable_debugging();
+
require_once($CFG->libdir.'/filelib.php');
$CFG->texfilterdir = 'filter/tex';
}
}
+ // disable moodle specific debug messages
+ disable_debugging();
+
require_once($CFG->libdir.'/filelib.php');
require_once('defaultsettings.php' );
require_once('latex.php');
$string['sessioncookie'] = 'Cookie prefix';
$string['sessioncookiepath'] = 'Cookie path';
$string['enablerssfeeds'] = 'Enable RSS feeds';
-$string['debug'] = 'Debug notices';
+$string['debug'] = 'Debug messages';
$string['perfdebug'] = 'Performance info';
$string['enablestats'] = 'Enable statistics';
$string['statsfirstrun'] = 'Maximum processing interval';
$string['dbmigrateconnecerror'] = 'Could not connect to the database specified.';
$string['dbmigrateencodingerror'] = 'The database specified has encoding $a rather than required UNICODE/UTF8.<br />Please specify another.';
$string['dbmigratepostgres'] = 'It seems that you are using PostgreSQL as the database server. To continue the migration process you need to manually create a new database with encoding \"UNICODE\"(PostgreSQL 7) or \"UTF8\" (PostgreSQL 8) to store the migrated data. Please enter your new database connection settings below to continue:';
-$string['debugnone'] = 'Do not show any debugging notices';
-$string['debugerror'] = 'E_ERROR: Show only fatal errors';
-$string['debugwarning'] = 'E_WARNING: show only serious warnings';
-$string['debugparse'] = 'E_PARSE: show parsing errors';
-$string['debugnotice'] = 'E_NOTICE: show informational notices';
-$string['debugall'] = 'E_ALL: show all reasonable feedback';
-$string['debugstrict'] = 'E_STRICT: show absolutely everything, even very minor errors';
+$string['debugnone'] = 'NONE: Do not show any errors or warnings';
+$string['debugminimal'] = 'MINIMAL: Show only fatal errors';
+$string['debugnormal'] = 'NORMAL: Show errors, warnings and notices';
+$string['debugall'] = 'ALL: Show all reasonable PHP debug messages';
+$string['debugdeveloper'] = 'DEVELOPER: extra Moodle debug messages for developers';
$string['density'] = 'Density';
$string['download'] = 'Download';
$string['edithelpdocs'] = 'Edit help documents';
global $USER, $CFG;
if (isset($capabilities[$context->id][$capability])) {
- debugging("Found $capability in context $context->id at level $context->contextlevel: ".$capabilities[$context->id][$capability], E_ALL);
+ debugging("Found $capability in context $context->id at level $context->contextlevel: ".$capabilities[$context->id][$capability], DEBUG_DEVELOPER);
return ($capabilities[$context->id][$capability]);
}
error ('This is an unknown context!');
return false;
}
- debugging("Found $capability recursively from context $context->id at level $context->contextlevel: $permission", E_ALL);
+ debugging("Found $capability recursively from context $context->id at level $context->contextlevel: $permission", DEBUG_DEVELOPER);
return $permission;
}
function role_assign($roleid, $userid, $groupid, $contextid, $timestart=0, $timeend=0, $hidden=0, $enrol='manual') {
global $USER, $CFG;
- debugging("Assign roleid $roleid userid $userid contextid $contextid", E_ALL);
+ debugging("Assign roleid $roleid userid $userid contextid $contextid", DEBUG_DEVELOPER);
/// Do some data validation
AND roleid = $role->id");
}
-?>
+?>
\ No newline at end of file
$name = 'debug';
$visiblename = get_string('debug', 'admin');
$description = get_string('configdebug', 'admin');
- $choices = array( 0 => get_string('debugnone', 'admin'),
- E_ERROR => get_string('debugerror', 'admin'),
- E_WARNING => get_string('debugwarning', 'admin'),
- E_PARSE => get_string('debugparse', 'admin'),
- E_NOTICE => get_string('debugnotice', 'admin'),
- E_ALL => get_string('debugall', 'admin'),
- 2048 => get_string('debugstrict', 'admin') // E_STRICT is php5 only
+ $choices = array( DEBUG_NONE => get_string('debugnone', 'admin'),
+ DEBUG_MINIMAL => get_string('debugminimal', 'admin'),
+ DEBUG_NORMAL => get_string('debugnormal', 'admin'),
+ DEBUG_ALL => get_string('debugall', 'admin'),
+ DEBUG_DEVELOPER => get_string('debugdeveloper', 'admin')
);
parent::admin_setting_configselect($name, $visiblename, $description, '', $choices);
}
function get_setting() {
global $CFG;
if (isset($CFG->debug)) {
- if ($CFG->debug == 7) { // Old values
- return 1;
- }
- if ($CFG->debug == 15) { // Old values
- return 16;
- }
return $CFG->debug;
} else {
return NULL;
*/
define('PAGE_COURSE_VIEW', 'course-view');
+/// Debug levels ///
+/** no warnings at all */
+define ('DEBUG_NONE', 0);
+/** E_ERROR | E_PARSE */
+define ('DEBUG_MINIMAL', 5);
+/** E_ERROR | E_PARSE | E_WARNING | E_NOTICE */
+define ('DEBUG_NORMAL', 15);
+/** E_ALL without E_STRICT and E_RECOVERABLE_ERROR for now */
+define ('DEBUG_ALL', 2047);
+/** DEBUG_ALL with extra Moodle debug messages - (DEBUG_ALL | 32768) */
+define ('DEBUG_DEVELOPER', 34815);
/// PARAMETER HANDLING ////////////////////////////////////////////////////
// vim:autoindent:expandtab:shiftwidth=4:tabstop=4:tw=140:
-?>
+?>
\ No newline at end of file
/// Set error reporting back to normal
if ($originaldatabasedebug == -1) {
- $CFG->debug = E_PARSE;
+ $CFG->debug = DEBUG_MINIMAL;
} else {
$CFG->debug = $originaldatabasedebug;
}
}
/**
- * Returns true if the current site debugging settings are equal
- * to the specified level: E_NOTICE, E_ALL, E_STRICT etc
+ * Returns true if the current site debugging settings are equal or above specified level.
* eg use like this:
*
- * 1) debugging('a normal notice');
- * 2) debugging('something really picky', E_STRICT);
- * 3) if (debugging()) { echo "a bunch of commands could be here" }
+ * 1) debugging('a normal debug notice');
+ * 2) debugging('something really picky', DEBUG_ALL);
+ * 3) debugging('annoying debug message only for develpers', DEBUG_DEVELOPER);
+ * 4) if (debugging()) { echo "a bunch of commands could be here" }
*
* @param string $message a message to print
* @param int $level the level at which this debugging statement should show
* @return bool
*/
-function debugging($message='', $level=E_NOTICE) {
+function debugging($message='', $level=DEBUG_NORMAL) {
global $CFG;
return false;
}
+/**
+ * Disable debug messages from debugging(), while keeping PHP error reporting level as is.
+ */
+function disable_debugging() {
+ global $CFG;
+ $CFG->debug = $CFG->debug | 0x80000000; // switch the sign bit in integer number ;-)
+}
+
// vim:autoindent:expandtab:shiftwidth=4:tabstop=4:tw=140:
?>
require_once("../../config.php");
require_once("lib.php");
+ // disable moodle specific debug messages
+ disable_debugging();
+
$id = required_param('id', PARAM_INT); // Course Module ID
$l = optional_param('l','', PARAM_ALPHANUM);
} else {
$lifetime = $CFG->filelifetime;
}
-
+
+ // disable moodle specific debug messages
+ disable_debugging();
+
$relativepath = get_file_argument('quizfile.php');
if (!$relativepath) {
$lifetime = 3600; // Seconds for files to remain in caches - 1 hour
+ // disable moodle specific debug messages
+ disable_debugging();
+
$relativepath = get_file_argument('file.php');
require_once('../config.php');
require_once($CFG->libdir.'/filelib.php');
+ // disable moodle specific debug messages
+ disable_debugging();
+
$relativepath = get_file_argument('pix.php');
$args = explode('/', trim($relativepath, '/'));
require_once('../config.php');
require_once($CFG->libdir.'/filelib.php');
+ // disable moodle specific debug messages
+ disable_debugging();
+
$relativepath = get_file_argument('pixgroup.php');
$args = explode('/', trim($relativepath, '/'));