]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
Fixes #4698. Catching and displaying exceptions during initial admin user creation.
authorBrett Profitt <brett.profitt@gmail.com>
Sat, 15 Dec 2012 18:06:40 +0000 (13:06 -0500)
committerBrett Profitt <brett.profitt@gmail.com>
Sat, 15 Dec 2012 18:06:40 +0000 (13:06 -0500)
install/ElggInstaller.php

index 934b38d28f1afd20663331e67b2c8550447bcaf0..775bbf5b63f5976022b1a5a38b668390392870d2 100644 (file)
@@ -1519,22 +1519,27 @@ class ElggInstaller {
        protected function createAdminAccount($submissionVars, $login = FALSE) {
                global $CONFIG;
 
-               $guid = register_user(
-                               $submissionVars['username'],
-                               $submissionVars['password1'],
-                               $submissionVars['displayname'],
-                               $submissionVars['email']
-                               );
+               try {
+                       $guid = register_user(
+                                       $submissionVars['username'],
+                                       $submissionVars['password1'],
+                                       $submissionVars['displayname'],
+                                       $submissionVars['email']
+                                       );
+               } catch (Exception $e) {
+                       register_error($e->getMessage());
+                       return false;
+               }
 
                if (!$guid) {
                        register_error(elgg_echo('install:admin:cannot_create'));
-                       return FALSE;
+                       return false;
                }
 
                $user = get_entity($guid);
                if (!$user) {
                        register_error(elgg_echo('install:error:loadadmin'));
-                       return FALSE;
+                       return false;
                }
 
                elgg_set_ignore_access(TRUE);
@@ -1543,7 +1548,7 @@ class ElggInstaller {
                } else {
                        datalist_set('admin_registered', 1);
                }
-               elgg_set_ignore_access(FALSE);
+               elgg_set_ignore_access(false);
 
                // add validation data to satisfy user validation plugins
                create_metadata($guid, 'validated', TRUE, '', 0, ACCESS_PUBLIC);