это мой первый вопрос, надеюсь, вы мне поможете.
Я пытался найти конкретный путь для текущего пользователя, вошедшего в мое приложение.
Я не знаюне правда, что я делаю неправильно, поэтому я вставлю свой код сюда.
func userRoleListener() {
guard let user = Auth.auth().currentUser else { return } .
Firestore.firestore().collection("users").document("sjbD5SvKTYHWBLhCqojs").getDocument { (snapshot, error) in
if let data = snapshot?.data() {
guard let isAdmin = data["isAdmin"] as? Bool else { return }
if isAdmin {
self.applyButton.isHidden = true
} else {
self.applyButton.isHidden = false
}
}
}
}
Это моя функция для создания пользователя.
private func createUser() {
guard let nameAndLastname = nameAndLastnameTextField.text , let email = emailTextField.text , let password = passwordTextField.text , !nameAndLastname.isEmpty , !email.isEmpty , !password.isEmpty else {
simpleAlert(title: "Error", msg: "Debe completar todos los campos")
return
}
let newUserReference = Firestore.firestore().collection("users").document()
newUserReference.setData([
"nameAndLastname": nameAndLastname,
"email": email,
"password": password,
"isAdmin": false,
"timestamp": Timestamp()
])
}
И это мойдействие входа в систему:
@IBAction func signUpButtonPressed(_ sender: Any) {
guard let email = emailTextField.text , let password = passwordTextField.text , !email.isEmpty , !password.isEmpty else { return }
self.signUpButton.animateButton(shouldLoad: true, withMessage: "")
Auth.auth().createUser(withEmail: email, password: password) { (user, error) in
if let error = error {
self.signUpButton.animateButton(shouldLoad: false, withMessage: "¡REGISTRAR!")
debugPrint(error.localizedDescription)
self.simpleAlert(title: "Error", msg: "Error al iniciar sesión, intente nuevamente en unos minutos")
return
}
self.signUpButton.animateButton(shouldLoad: false, withMessage: "")
self.createUser()
self.presentClientStoryboard()
}
}
А это изображение моей базы данных:
Изображение базы данных