12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- <?php
- /**
- * Elgg add action
- *
- * @package Elgg
- * @subpackage Core
- */
- elgg_make_sticky_form('useradd');
- // Get variables
- $username = get_input('username');
- $password = get_input('password', null, false);
- $password2 = get_input('password2', null, false);
- $email = get_input('email');
- $name = get_input('name');
- $admin = get_input('admin');
- if (is_array($admin)) {
- $admin = $admin[0];
- }
- // no blank fields
- if ($username == '' || $password == '' || $password2 == '' || $email == '' || $name == '') {
- register_error(elgg_echo('register:fields'));
- forward(REFERER);
- }
- if (strcmp($password, $password2) != 0) {
- register_error(elgg_echo('RegistrationException:PasswordMismatch'));
- forward(REFERER);
- }
- // For now, just try and register the user
- try {
- $guid = register_user($username, $password, $name, $email, TRUE);
- if ($guid) {
- $new_user = get_entity($guid);
- if ($new_user && $admin && elgg_is_admin_logged_in()) {
- $new_user->makeAdmin();
- }
- elgg_clear_sticky_form('useradd');
- $new_user->admin_created = TRUE;
- // @todo ugh, saving a guid as metadata!
- $new_user->created_by_guid = elgg_get_logged_in_user_guid();
- $subject = elgg_echo('useradd:subject', array(), $new_user->language);
- $body = elgg_echo('useradd:body', array(
- $name,
- elgg_get_site_entity()->name,
- elgg_get_site_entity()->url,
- $username,
- $password,
- ), $new_user->language);
- notify_user($new_user->guid, elgg_get_site_entity()->guid, $subject, $body);
- system_message(elgg_echo("adduser:ok", array(elgg_get_site_entity()->name)));
- } else {
- register_error(elgg_echo("adduser:bad"));
- }
- } catch (RegistrationException $r) {
- register_error($r->getMessage());
- }
- forward(REFERER);
|