feat(server): cleaned up boilerplate & using injected ref for consent tracking in fe register panel.
This commit is contained in:
@@ -63,6 +63,10 @@ graphql(`
|
||||
}
|
||||
`)
|
||||
|
||||
const newsletterConsent = ref(false)
|
||||
|
||||
provide('newsletterconsent', newsletterConsent)
|
||||
|
||||
const { result } = useQuery(loginServerInfoQuery)
|
||||
const { appId, challenge, inviteToken } = useLoginOrRegisterUtils()
|
||||
|
||||
|
||||
@@ -113,9 +113,11 @@ const password = ref('')
|
||||
const emailRules = [isEmail]
|
||||
const nameRules = [isRequired]
|
||||
|
||||
const { signUpWithEmail, inviteToken, newsletterConsent } = useAuthManager()
|
||||
const { signUpWithEmail, inviteToken } = useAuthManager()
|
||||
const { triggerNotification } = useGlobalToast()
|
||||
|
||||
const newsletterConsent = inject<Ref<boolean>>('newsletterconsent')
|
||||
|
||||
const pwdFocused = ref(false)
|
||||
|
||||
const finalLoginRoute = computed(() => {
|
||||
@@ -134,7 +136,7 @@ const onSubmit = handleSubmit(async (fullUser) => {
|
||||
user,
|
||||
challenge: props.challenge,
|
||||
inviteToken: inviteToken.value,
|
||||
newsletter: newsletterConsent.value
|
||||
newsletter: newsletterConsent?.value
|
||||
})
|
||||
} catch (e) {
|
||||
triggerNotification({
|
||||
|
||||
@@ -48,7 +48,9 @@ const {
|
||||
public: { apiOrigin }
|
||||
} = useRuntimeConfig()
|
||||
const mixpanel = useMixpanel()
|
||||
const { inviteToken, newsletterConsent } = useAuthManager()
|
||||
const { inviteToken } = useAuthManager()
|
||||
|
||||
const newsletterConsent = inject<Ref<boolean>>('newsletterconsent')
|
||||
|
||||
const NuxtLink = resolveComponent('NuxtLink')
|
||||
const GoogleButton = resolveComponent('AuthThirdPartyLoginButtonGoogle')
|
||||
@@ -68,10 +70,11 @@ const buildAuthUrl = (strat: StrategyType) => {
|
||||
url.searchParams.set('token', inviteToken.value)
|
||||
}
|
||||
|
||||
if (newsletterConsent.value) {
|
||||
if (newsletterConsent?.value) {
|
||||
url.searchParams.set('newsletter', 'true')
|
||||
}
|
||||
|
||||
console.log(url)
|
||||
return url.toString()
|
||||
}
|
||||
|
||||
|
||||
@@ -282,16 +282,13 @@ export const useAuthManager = () => {
|
||||
goToLogin()
|
||||
}
|
||||
|
||||
const newsletterConsent = ref(false)
|
||||
|
||||
return {
|
||||
authToken,
|
||||
loginWithEmail,
|
||||
signUpWithEmail,
|
||||
logout,
|
||||
watchAuthQueryString,
|
||||
inviteToken,
|
||||
newsletterConsent
|
||||
inviteToken
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ async function addToMailchimpAudience(userId: string) {
|
||||
|
||||
// NOTE: using setListMember (NOT addListMember) to prevent errors for previously
|
||||
// registered members.
|
||||
await mailchimp.lists.setListMember(config.listId + 'fail', subscriberHash, {
|
||||
await mailchimp.lists.setListMember(config.listId, subscriberHash, {
|
||||
status_if_new: 'subscribed',
|
||||
email_address: user.email,
|
||||
merge_fields: {
|
||||
|
||||
Reference in New Issue
Block a user