From 950963633da8f4f097329c2f6d941e1a0d10eebd Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 21 Jan 2022 15:20:03 +0600 Subject: [PATCH 1/3] fix: exclude topgear users from onboarding flow --- .../dev-tenant/rules/onboardingChecklist.js | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js b/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js index a443ceb..1ba2718 100644 --- a/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js +++ b/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js @@ -11,12 +11,30 @@ function (user, context, callback) { const _ = require('lodash'); const moment = require('moment'); + const isSocial = _.get(user, "identities[0].isSocial"); + const connection = _.get(user, "identities[0].connection"); + + console.log("rule:onboarding-checklist: isSocial/connection", isSocial + "/" + connection); + console.log("rule:onboarding-checklist: WIPRO_SS_AZURE_AD_CONNECTION_NAME", configuration.WIPRO_SSO_AZURE_AD_CONNECTION_NAME); + + if (_.includes([configuration.WIPRO_SSO_AZURE_AD_CONNECTION_NAME], connection)) { + console.log("rule:onboarding-checklist:exiting due to user being an enterprise user."); + return callback(null, user, context); + } + + console.log("rule:onboarding-checklist: fetch onboarding_checklist for email/handle: ", user.email, handle, provider); + let handle = _.get(user, "handle", null); const provider = _.get(user, "identities[0].provider", null); - if (!handle && provider === "auth0") { + if (isSocial || (!handle && provider === "auth0")) { handle = _.get(user, "nickname", null); } + if (handle == null) { + return callback(); + } + + console.log("rule:onboarding-checklist: fetch onboarding_checklist for email/handle: ", user.email, handle, provider); const createdAt = _.get(user, "created_at", null); From 50df93f9a36bc003520973128860ebf7b54bab16 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 21 Jan 2022 15:27:28 +0600 Subject: [PATCH 2/3] refactor: remove comment --- web-assets/auth0/dev-tenant/rules/onboardingChecklist.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js b/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js index 1ba2718..4f195e5 100644 --- a/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js +++ b/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js @@ -22,8 +22,6 @@ function (user, context, callback) { return callback(null, user, context); } - console.log("rule:onboarding-checklist: fetch onboarding_checklist for email/handle: ", user.email, handle, provider); - let handle = _.get(user, "handle", null); const provider = _.get(user, "identities[0].provider", null); if (isSocial || (!handle && provider === "auth0")) { From 9386977caf6bb4aa20ecf6f729deedee85adc0f9 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 21 Jan 2022 15:51:56 +0600 Subject: [PATCH 3/3] fix: ignore for social users --- .../auth0/dev-tenant/rules/onboardingChecklist.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js b/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js index 4f195e5..039b6b6 100644 --- a/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js +++ b/web-assets/auth0/dev-tenant/rules/onboardingChecklist.js @@ -28,13 +28,13 @@ function (user, context, callback) { handle = _.get(user, "nickname", null); } - if (handle == null) { - return callback(); - } - - console.log("rule:onboarding-checklist: fetch onboarding_checklist for email/handle: ", user.email, handle, provider); + // TODO: Properly fetch handle for social logins + if (handle == null || isSocial) { + return callback(null, user, context); + } + const createdAt = _.get(user, "created_at", null); const thresholdDate = moment(configuration.PROFILE_CREATION_DATE_THRESHOLD, "YYYY-MM-DD");