Я подумал, что вернусь в StackOverflow с другим вопросом, потому что вы, ребята, значительно помогли мне с моей последней проблемой
В любом случае, у меня в настоящее время настроена система аутентификации, так что кнопки входа и регистрации используются совместно. Я ищу хранилище ссылок Firebase при вводе электронного письма для проверки его по другим учетным записям в базе данных. На данный момент пользователь может ввести адрес электронной почты для своей учетной записи, а затем, если он введет неправильный пароль, он просто отправит его прямо на регистрацию, даже если у него есть учетная запись. Это серьезная проблема, так как это может привести к путанице
Я хочу, чтобы она работала так:
- Если адрес электронной почты занят, я хочу, чтобы отображалось предупреждение поскольку пользователь говорит «Неверный пароль»
- Если адрес электронной почты не занят, я хочу, чтобы он сообщил пользователю, что ему нужно ввести пароль, состоящий как минимум из 10 символов, 1 цифры и 1 специального символа, который я уже выяснил, используя
Я только хочу, чтобы он попытался создать нового пользователя, если электронная почта не получена, а поле пароля и электронной почты соответствуют полям критериев, которые я уже установил в моем код. Мне просто нужна помощь, чтобы он не переключался на создание нового пользователя V C, если электронное письмо уже занято, и мне нужно сказать
func isValidPassword(_ email: String) -> Bool {
let emailRegEx = "@#$%^&+=^.*(?=.{10,})(?=.*d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$"
let emailPred = NSPredicate(format:"SELF MATCHES %@", emailRegEx)
return emailPred.evaluate(with: email)
}
В любом случае, вот код, прикрепленный к IBAction
if let email = emailField.text, let password = passwordField.text {
Auth.auth().signIn(withEmail: email, password: password, completion:
{ (user,error) in
if error == nil {
if let user = user {
self.userUid = user.user.uid
self.goToFeedVC()
}
} else {
self.goToCreateUserVC()
Вот изображение интерфейса
Я хочу, чтобы оно было интуитивно понятным, но у меня есть Я не мог написать это сам, поэтому, если кто-нибудь сможет помочь мне посоветовать, как закончить sh этот блок, он будет невероятно признателен