X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fregister.php;h=b851faf2d6225f471e5cec43e93270b4beab3978;hb=71ec84f6dc83f753fe80170cfdfd32d202850d90;hp=81919df105d605252151534443a7055f9fe33c01;hpb=3965615fbc065c7645c3a00d9dfe209007f46277;p=friendica.git diff --git a/mod/register.php b/mod/register.php index 81919df105..b851faf2d6 100644 --- a/mod/register.php +++ b/mod/register.php @@ -11,6 +11,7 @@ use Friendica\Core\L10n; use Friendica\Core\PConfig; use Friendica\Core\System; use Friendica\Core\Worker; +use Friendica\Database\DBA; use Friendica\Model\User; use Friendica\Module\Tos; use Friendica\Util\DateTimeFormat; @@ -21,8 +22,6 @@ function register_post(App $a) { check_form_security_token_redirectOnErr('/register', 'register'); - global $lang; - $verified = 0; $blocked = 1; @@ -37,7 +36,7 @@ function register_post(App $a) } } - switch ($a->config['register_policy']) { + switch (Config::get('config', 'register_policy')) { case REGISTER_OPEN: $blocked = 0; $verified = 1; @@ -50,7 +49,7 @@ function register_post(App $a) default: case REGISTER_CLOSED: - if ((!x($_SESSION, 'authenticated') && (!x($_SESSION, 'administrator')))) { + if (empty($_SESSION['authenticated']) && empty($_SESSION['administrator'])) { notice(L10n::t('Permission denied.') . EOL); return; } @@ -76,7 +75,7 @@ function register_post(App $a) $user = $result['user']; - if ($netpublish && $a->config['register_policy'] != REGISTER_APPROVE) { + if ($netpublish && intval(Config::get('config', 'register_policy')) !== REGISTER_APPROVE) { $url = System::baseUrl() . '/profile/' . $user['nickname']; Worker::add(PRIORITY_LOW, "Directory", $url); } @@ -85,16 +84,16 @@ function register_post(App $a) $num_invites = Config::get('system', 'number_invites'); $invite_id = ((x($_POST, 'invite_id')) ? notags(trim($_POST['invite_id'])) : ''); - if ($a->config['register_policy'] == REGISTER_OPEN) { + if (intval(Config::get('config', 'register_policy')) === REGISTER_OPEN) { if ($using_invites && $invite_id) { - q("delete * from register where hash = '%s' limit 1", dbesc($invite_id)); + q("delete * from register where hash = '%s' limit 1", DBA::escape($invite_id)); PConfig::set($user['uid'], 'system', 'invites_remaining', $num_invites); } // Only send a password mail when the password wasn't manually provided if (!x($_POST, 'password1') || !x($_POST, 'confirm')) { $res = User::sendRegisterOpenEmail( - $user['email'], $a->config['sitename'], System::baseUrl(), $user['username'], $result['password']); + $user['email'], Config::get('config', 'sitename'), System::baseUrl(), $user['username'], $result['password'], $user); if ($res) { info(L10n::t('Registration successful. Please check your email for further instructions.') . EOL); @@ -111,30 +110,30 @@ function register_post(App $a) info(L10n::t('Registration successful.') . EOL); goaway(System::baseUrl()); } - } elseif ($a->config['register_policy'] == REGISTER_APPROVE) { - if (!strlen($a->config['admin_email'])) { + } elseif (intval(Config::get('config', 'register_policy')) === REGISTER_APPROVE) { + if (!strlen(Config::get('config', 'admin_email'))) { notice(L10n::t('Your registration can not be processed.') . EOL); goaway(System::baseUrl()); } $hash = random_string(); $r = q("INSERT INTO `register` ( `hash`, `created`, `uid`, `password`, `language`, `note` ) VALUES ( '%s', '%s', %d, '%s', '%s', '%s' ) ", - dbesc($hash), - dbesc(DateTimeFormat::utcNow()), + DBA::escape($hash), + DBA::escape(DateTimeFormat::utcNow()), intval($user['uid']), - dbesc($result['password']), - dbesc($lang), - dbesc($_POST['permonlybox']) + DBA::escape($result['password']), + DBA::escape(Config::get('system', 'language')), + DBA::escape($_POST['permonlybox']) ); // invite system if ($using_invites && $invite_id) { - q("DELETE * FROM `register` WHERE `hash` = '%s' LIMIT 1", dbesc($invite_id)); + q("DELETE * FROM `register` WHERE `hash` = '%s' LIMIT 1", DBA::escape($invite_id)); PConfig::set($user['uid'], 'system', 'invites_remaining', $num_invites); } // send email to admins - $admin_mail_list = "'" . implode("','", array_map(dbesc, explode(",", str_replace(" ", "", $a->config['admin_email'])))) . "'"; + $admin_mail_list = "'" . implode("','", array_map(['Friendica\Database\DBA', 'escape'], explode(",", str_replace(" ", "", Config::get('config', 'admin_email'))))) . "'"; $adminlist = q("SELECT uid, language, email FROM user WHERE email IN (%s)", $admin_mail_list ); @@ -158,7 +157,7 @@ function register_post(App $a) } // send notification to the user, that the registration is pending User::sendRegisterPendingEmail( - $user['email'], $a->config['sitename'], $user['username']); + $user['email'], Config::get('config', 'sitename'), $user['username']); info(L10n::t('Your registration is pending approval by the site owner.') . EOL); goaway(System::baseUrl()); @@ -179,7 +178,7 @@ function register_content(App $a) return; } - if ((!local_user()) && ($a->config['register_policy'] == REGISTER_CLOSED)) { + if ((!local_user()) && (intval(Config::get('config', 'register_policy')) === REGISTER_CLOSED)) { notice("Permission denied." . EOL); return; } @@ -258,7 +257,7 @@ function register_content(App $a) $o = replace_macros($tpl, [ '$oidhtml' => $oidhtml, '$invitations' => Config::get('system', 'invitation_only'), - '$permonly' => $a->config['register_policy'] == REGISTER_APPROVE, + '$permonly' => intval(Config::get('config', 'register_policy')) === REGISTER_APPROVE, '$permonlybox' => ['permonlybox', L10n::t('Note for the admin'), '', L10n::t('Leave a message for the admin, why you want to join this node')], '$invite_desc' => L10n::t('Membership on this site is by invitation only.'), '$invite_label' => L10n::t('Your invitation code: '), @@ -292,7 +291,9 @@ function register_content(App $a) '$showprivstatement' => Config::get('system', 'tosprivstatement'), '$privstatement' => $tos->privacy_complete, '$baseurl' => System::baseurl(), - '$form_security_token' => get_form_security_token("register") + '$form_security_token' => get_form_security_token("register"), + '$explicit_content' => Config::get('system', 'explicit_content', false), + '$explicit_content_note' => L10n::t('Note: This node explicitly contains adult content') ]); return $o; }