';
print "
".htmlspecialchars(SELF_URL_PATH . "/register.php")."
Tiny Tiny RSS registration slots
";
if (ENABLE_REGISTRATION) {
$result = db_query($link, "SELECT COUNT(*) AS cu FROM ttrss_users");
$num_users = db_fetch_result($result, 0, "cu");
$num_users = REG_MAX_USERS - $num_users;
if ($num_users < 0) $num_users = 0;
$reg_suffix = "enabled";
} else {
$num_users = 0;
$reg_suffix = "disabled";
}
print "
".htmlspecialchars(SELF_URL_PATH)."/register.php?$num_users"."
";
print "$num_users slots are currently available, registration $reg_suffix";
print "$num_users slots are currently available, registration $reg_suffix";
print "";
print "";
return;
}
/* Remove users which didn't login after receiving their registration information */
if (DB_TYPE == "pgsql") {
db_query($link, "DELETE FROM ttrss_users WHERE last_login IS NULL
AND created < NOW() - INTERVAL '1 day' AND access_level = 0");
} else {
db_query($link, "DELETE FROM ttrss_users WHERE last_login IS NULL
AND created < DATE_SUB(NOW(), INTERVAL 1 DAY) AND access_level = 0");
}
if (file_exists("register_expire_do.php")) {
require_once "register_expire_do.php";
}
if ($action == "check") {
header("Content-Type: application/xml");
$login = trim(db_escape_string($_REQUEST['login']));
$result = db_query($link, "SELECT id FROM ttrss_users WHERE
LOWER(login) = LOWER('$login')");
$is_registered = db_num_rows($result) > 0;
print "";
printf("%d", $is_registered);
print "";
return;
}
?>
Create new account
";
return;
}
?>
0) {
$result = db_query($link, "SELECT COUNT(*) AS cu FROM ttrss_users");
$num_users = db_fetch_result($result, 0, "cu");
} ?>
"; ?>
";
return;
}
if ($test == "four" || $test == "4") {
$result = db_query($link, "SELECT id FROM ttrss_users WHERE
login = '$login'");
$is_registered = db_num_rows($result) > 0;
if ($is_registered) {
print_error(__('Sorry, this username is already taken.'));
print "";
} else {
$password = make_password();
$salt = substr(bin2hex(get_random_bytes(125)), 0, 250);
$pwd_hash = encrypt_password($password, $salt, true);
db_query($link, "INSERT INTO ttrss_users
(login,pwd_hash,access_level,last_login, email, created, salt)
VALUES ('$login', '$pwd_hash', 0, null, '$email', NOW(), '$salt')");
$result = db_query($link, "SELECT id FROM ttrss_users WHERE
login = '$login' AND pwd_hash = '$pwd_hash'");
if (db_num_rows($result) != 1) {
print_error(__('Registration failed.'));
print "";
} else {
$new_uid = db_fetch_result($result, 0, "id");
initialize_user($link, $new_uid);
$reg_text = "Hi!\n".
"\n".
"You are receiving this message, because you (or somebody else) have opened\n".
"an account at Tiny Tiny RSS.\n".
"\n".
"Your login information is as follows:\n".
"\n".
"Login: $login\n".
"Password: $password\n".
"\n".
"Don't forget to login at least once to your new account, otherwise\n".
"it will be deleted in 24 hours.\n".
"\n".
"If that wasn't you, just ignore this message. Thanks.";
$mail = new PHPMailer();
$mail->PluginDir = "lib/phpmailer/";
$mail->SetLanguage("en", "lib/phpmailer/language/");
$mail->CharSet = "UTF-8";
$mail->From = SMTP_FROM_ADDRESS;
$mail->FromName = SMTP_FROM_NAME;
$mail->AddAddress($email);
if (SMTP_HOST) {
$mail->Host = SMTP_HOST;
$mail->Mailer = "smtp";
$mail->Username = SMTP_LOGIN;
$mail->Password = SMTP_PASSWORD;
}
// $mail->IsHTML(true);
$mail->Subject = "Registration information for Tiny Tiny RSS";
$mail->Body = $reg_text;
// $mail->AltBody = $digest_text;
$rc = $mail->Send();
if (!$rc) print_error($mail->ErrorInfo);
$reg_text = "Hi!\n".
"\n".
"New user had registered at your Tiny Tiny RSS installation.\n".
"\n".
"Login: $login\n".
"Email: $email\n";
$mail = new PHPMailer();
$mail->PluginDir = "lib/phpmailer/";
$mail->SetLanguage("en", "lib/phpmailer/language/");
$mail->CharSet = "UTF-8";
$mail->From = SMTP_FROM_ADDRESS;
$mail->FromName = SMTP_FROM_NAME;
$mail->AddAddress(REG_NOTIFY_ADDRESS);
if (SMTP_HOST) {
$mail->Host = SMTP_HOST;
$mail->Mailer = "smtp";
$mail->Username = SMTP_LOGIN;
$mail->Password = SMTP_PASSWORD;
}
// $mail->IsHTML(true);
$mail->Subject = "Registration notice for Tiny Tiny RSS";
$mail->Body = $reg_text;
// $mail->AltBody = $digest_text;
$rc = $mail->Send();
print_notice(__("Account created successfully."));
print "";
}
}
} else {
print_error('Plese check the form again, you have failed the robot test.');
print "";
}
}
?>
"; ?>