Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Понадобится и при регистрации, и при авторизации, поэтому вынесено в отдельную функцию.
- function isUserExists(userName, userEmail) {
- const users = localeStorage.getObj('users');
- for (let user of users) {
- if (user.username.toLowerCase() === userName.toLowerCase() || user.email === userEmail) {
- return true;
- }
- }
- return false;
- }
- function checkRegister() {
- removeErrors();
- const userNameElement = document.getElementsByClassName('register__username')[0],
- userEmailElement = document.getElementsByClassName('register__email')[0],
- userPasswordElement = document.getElementsByClassName('register__password')[0],
- userPasswordRepeat = document.getElementsByClassName('register__password-repeat')[0].value,
- agreement = document.getElementsByClassName('register__agree')[0].checked,
- userName = userNameElement.value,
- userEmail = userEmailElement.value,
- userPassword = userPasswordElement.value,
- userNameLengthMin = userNameElement.getAttribute('minlength'),
- emailLengthMin = userEmailElement.getAttribute('minlength'),
- passwordLengthMin = userPasswordElement.getAttribute('minlength');
- if (userName.length <= userNameLengthMin) {
- // Показать ошибку о том, что имя пользователя слишком короткое.
- console.log(`Too short user name! Must be ${userNameLengthMin} characters at least, ${userName.length} accepted.`);
- return false;
- }
- if (userEmail.length <= emailLengthMin) {
- // Показать ошибку о том, что адрес эл. почты слишком короткий.
- console.log(`Too short email address! Must be ${emailLengthMin} characters at least, ${userEmail.length} accepted.`);
- return false;
- }
- if (userPassword.length <= passwordLengthMin) {
- // Показать ошибку о том, что пароль слишком короткий.
- console.log(`Too short password! Must be ${passwordLengthMin} characters at least, ${userPassword.length} accepted.`);
- return false;
- }
- if (!agreement) {
- // Показать ошибку о том, что флажок 'agreement' не установлен.
- console.log('You didn\'t confirm your agreement!');
- return false;
- }
- if (userPassword !== userPasswordRepeat) {
- // Показать ошибку о том, что пароли не одинаковы.
- console.log('Passwords aren\'t equal!');
- return false;
- }
- // Если поля заполнены правильно, то ищем полученные данные в базе данных.
- if (!isUserExists(userName, userEmail)) {
- // Регистрация пользователя.
- console.log('You can join us! :)');
- return true;
- } else {
- // Показать ошибку о том, что пользователь уже зарегистрирован.
- console.log('You have been already registered! Please, sign in.');
- return false;
- }
- }
Add Comment
Please, Sign In to add comment