Permalink
Browse files

MDL-27767 install: Shows notifications rather than throwing exception…

…s when installation encounters unexpected id for guest or admin
  • Loading branch information...
1 parent 9283723 commit ab76484507fd39645f11924efdf5bf258a606ab1 Sam Hemelryk committed Sep 29, 2011
Showing with 8 additions and 3 deletions.
  1. +8 −3 lib/db/install.php
View
@@ -27,7 +27,7 @@
defined('MOODLE_INTERNAL') || die();
function xmldb_main_install() {
- global $CFG, $DB, $SITE;
+ global $CFG, $DB, $SITE, $OUTPUT;
/// make sure system context exists
$syscontext = get_system_context(false);
@@ -152,7 +152,7 @@ function xmldb_main_install() {
$guest->timemodified= time();
$guest->id = $DB->insert_record('user', $guest);
if ($guest->id != 1) {
- throw new moodle_exception('generalexceptionmessage', 'error', '', 'Unexpected new guest user id!');
+ echo $OUTPUT->notification('Unexpected id generated for the Guest account. Your database configuration or clustering setup may not be fully supported', 'notifyproblem');
}
// Store guest id
set_config('siteguest', $guest->id);
@@ -173,9 +173,14 @@ function xmldb_main_install() {
$admin->timemodified = time();
$admin->lastip = CLI_SCRIPT ? '0.0.0.0' : getremoteaddr(); // installation hijacking prevention
$admin->id = $DB->insert_record('user', $admin);
+
if ($admin->id != 2) {
- throw new moodle_exception('generalexceptionmessage', 'error', '', 'Unexpected new admin user id!');
+ echo $OUTPUT->notification('Unexpected id generated for the Admin account. Your database configuration or clustering setup may not be fully supported', 'notifyproblem');
+ }
+ if ($admin->id != ($guest->id + 1)) {
+ echo $OUTPUT->notification('Nonconsecutive id generated for the Admin account. Your database configuration or clustering setup may not be fully supported.', 'notifyproblem');
}
+
/// Store list of admins
set_config('siteadmins', $admin->id);

0 comments on commit ab76484

Please sign in to comment.