/** * Fonction permettant d'enregistrer un utilisateur via facebook * @param string $pseudo * @param string $facebook_uid * @param string $email * @param Validator $validator * @return array */ public function registerFacebook($pseudo, $facebook_uid, $email, Validator $validator) { if ($validator->checkIfFieldsExist('facebook_uid', $facebook_uid)) { $validator->setErrors('already_exist', true); $validator->setErrors('facebook_uid', $facebook_uid); $validator->setErrors('error', true); } else { if (empty($email)) { $email = null; } $key = Helper::generateKey(); $sql = $this->db->prepare("INSERT INTO users(pseudo, email, facebook_uid, created_at, validation_key, actif) VALUES(:pseudo, :email, :facebook_uid, NOW(), :validation_key, 1)"); $sql->execute([":pseudo" => $pseudo, ":email" => $email, ":facebook_uid" => $facebook_uid, "validation_key" => $key]); if (!$sql) { $validator->setErrors('insert', "Une erreur s'est produite"); $validator->setErrors('error', true); } } return $validator->getErrors(); }