$new_user, 'password' => $password, 'friend_guid' => $friend_guid, 'invitecode' => $invitecode ); // @todo should registration be allowed no matter what the plugins return? if (!elgg_trigger_plugin_hook('register', 'user', $params, TRUE)) { $new_user->delete(); // @todo this is a generic messages. We could have plugins // throw a RegistrationException, but that is very odd // for the plugin hooks system. throw new RegistrationException(elgg_echo('registerbad')); } elgg_clear_sticky_form('register'); system_message(elgg_echo("registerok", array(elgg_get_site_entity()->name))); // if exception thrown, this probably means there is a validation // plugin that has disabled the user try { login($new_user); } catch (LoginException $e) { // do nothing } // Forward on success, assume everything else is an error... forward(); } else { register_error(elgg_echo("registerbad")); } } catch (RegistrationException $r) { register_error($r->getMessage()); } } else { register_error(elgg_echo('registerdisabled')); } forward(REFERER);