From 6e61beb6ed6538f6035ce8b16bb9334abc5faba8 Mon Sep 17 00:00:00 2001 From: Vitaliy Vlasov Date: Mon, 9 Sep 2019 18:44:25 +0300 Subject: [PATCH] Use auth-switched-on-fx in both onboarding and settings --- src/status_im/biometric_auth/core.cljs | 18 ++++++++++++++++-- src/status_im/events.cljs | 11 ++--------- src/status_im/multiaccounts/create/core.cljs | 4 +++- 3 files changed, 21 insertions(+), 12 deletions(-) diff --git a/src/status_im/biometric_auth/core.cljs b/src/status_im/biometric_auth/core.cljs index 82a443d1762..29c8cb098b4 100644 --- a/src/status_im/biometric_auth/core.cljs +++ b/src/status_im/biometric_auth/core.cljs @@ -1,8 +1,10 @@ (ns status-im.biometric-auth.core (:require [re-frame.core :as re-frame] + [taoensso.timbre :as log] [status-im.utils.platform :as platform] [status-im.i18n :as i18n] [status-im.utils.fx :as fx] + [status-im.utils.utils :as utils] [status-im.ui.components.colors :as colors] [status-im.native-module.core :as status] [status-im.react-native.js-dependencies :as rn])) @@ -66,7 +68,9 @@ (defn- do-get-supported [callback] (-> (.isSupported rn/touchid) (.then #(callback (or (keyword %) android-default-support))) - (.catch #(callback nil)))) + (.catch #(do + (log/info "Error while getting biometric auth status:" %) + (callback nil))))) (defn get-supported [callback] (cond platform/ios? (do-get-supported callback) @@ -90,4 +94,14 @@ (re-frame/reg-fx :biometric-auth/authenticate (fn [[cb options]] - (authenticate #(cb %) options))) \ No newline at end of file + (authenticate #(cb %) options))) + +(defn auth-switched-on-fx [cofx] + (authenticate-fx + cofx + (fn [{:keys [bioauth-success bioauth-message]}] + (when bioauth-success + (re-frame/dispatch [:multiaccounts.ui/switch-biometric-auth true])) + (when bioauth-message + (utils/show-popup (i18n/label :t/biometric-auth-reason-verify) bioauth-message))) + {:reason (i18n/label :t/biometric-auth-reason-verify)})) diff --git a/src/status_im/events.cljs b/src/status_im/events.cljs index 06c05f854c7..0a42b4e5c0f 100644 --- a/src/status_im/events.cljs +++ b/src/status_im/events.cljs @@ -7,7 +7,7 @@ [status-im.multiaccounts.logout.core :as multiaccounts.logout] [status-im.multiaccounts.recover.core :as multiaccounts.recover] [status-im.multiaccounts.update.core :as multiaccounts.update] - [status-im.biometric-auth.core :as biomentric-auth] + [status-im.biometric-auth.core :as biometric-auth] [status-im.bootnodes.core :as bootnodes] [status-im.browser.core :as browser] [status-im.browser.permissions :as browser.permissions] @@ -129,14 +129,7 @@ :multiaccounts.ui/biometric-auth-switched (fn [cofx [_ biometric-auth?]] (if biometric-auth? - (biomentric-auth/authenticate-fx - cofx - (fn [{:keys [bioauth-success bioauth-message]}] - (when bioauth-success - (re-frame/dispatch [:multiaccounts.ui/switch-biometric-auth true])) - (when bioauth-message - (utils/show-popup (i18n/label :t/biometric-auth-reason-verify) bioauth-message))) - {:reason (i18n/label :t/biometric-auth-reason-verify)}) + (biometric-auth/auth-switched-on-fx cofx) (multiaccounts/switch-biometric-auth cofx false)))) (handlers/register-handler-fx diff --git a/src/status_im/multiaccounts/create/core.cljs b/src/status_im/multiaccounts/create/core.cljs index 84ff0e78289..7b90bfed95f 100644 --- a/src/status_im/multiaccounts/create/core.cljs +++ b/src/status_im/multiaccounts/create/core.cljs @@ -1,6 +1,7 @@ (ns status-im.multiaccounts.create.core (:require [clojure.set :refer [map-invert]] [re-frame.core :as re-frame] + [status-im.biometric-auth.core :as biometric-auth] [status-im.constants :as constants] [status-im.ethereum.core :as ethereum] [status-im.native-module.core :as status] @@ -120,7 +121,8 @@ (= step :enable-fingerprint) (fx/merge cofx {:db (assoc-in db [:intro-wizard :step] :enable-notifications)} - {:dispatch [:multiaccounts.ui/biometric-auth-switched (not skip?)]}) + (when-not skip? + biometric-auth/auth-switched-on-fx)) (= step :generate-key) (init-key-generation cofx)