Merge branch 'tidio' into dev_environment
This commit is contained in:
commit
6d85f2462c
1 changed files with 19 additions and 13 deletions
|
|
@ -68,7 +68,7 @@ export default function UserWrapper(props: Props) {
|
||||||
|
|
||||||
const user_id = or(useAuth.user?.sub, "")
|
const user_id = or(useAuth.user?.sub, "")
|
||||||
|
|
||||||
window.CRISP_RUNTIME_CONFIG = { session_merge: true };
|
const crispInitialized = useRef(false);
|
||||||
Crisp.configure(import.meta.env.VITE_CRISP_WEBSITE_ID);
|
Crisp.configure(import.meta.env.VITE_CRISP_WEBSITE_ID);
|
||||||
|
|
||||||
const loadUser = useCallback(() => {
|
const loadUser = useCallback(() => {
|
||||||
|
|
@ -104,20 +104,26 @@ export default function UserWrapper(props: Props) {
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
setLoading(false)
|
setLoading(false)
|
||||||
hasFetched.current = true;
|
hasFetched.current = true;
|
||||||
if (global?.user && global?.user.settings.email) { // Assuming you have user object from your auth/settings
|
|
||||||
Crisp.user.setEmail(global?.user.settings.email);
|
|
||||||
// Optional: Set nickname or other info
|
|
||||||
Crisp.user.setNickname(global?.user.settings.name || "User");
|
|
||||||
Crisp.user.setPhone(global?.user.settings.phoneNumber);
|
|
||||||
|
|
||||||
// For extra security (marks email as verified, prevents spoofing):
|
|
||||||
// Crisp.user.setEmail(user.email, "your-hmac-signature-here"); // See Crisp docs for signing
|
|
||||||
|
|
||||||
// Optional: For session continuity across devices/browsers
|
|
||||||
Crisp.setTokenId(global?.user.id()); // e.g., your DB user ID
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}, [setGlobal])
|
}, [setGlobal])
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (!crispInitialized.current && global?.user) {
|
||||||
|
Crisp.configure(import.meta.env.VITE_CRISP_WEBSITE_ID);
|
||||||
|
crispInitialized.current = true;
|
||||||
|
Crisp.session.reset();
|
||||||
|
Crisp.user.setEmail(global?.user.settings.email);
|
||||||
|
// Optional: Set nickname or other info
|
||||||
|
Crisp.user.setNickname(global?.user.settings.name || global?.user.settings.email);
|
||||||
|
Crisp.user.setPhone(global?.user.settings.phoneNumber);
|
||||||
|
|
||||||
|
// For extra security (marks email as verified, prevents spoofing):
|
||||||
|
// Crisp.user.setEmail(user.email, "your-hmac-signature-here"); // See Crisp docs for signing
|
||||||
|
|
||||||
|
// Optional: For session continuity across devices/browsers
|
||||||
|
Crisp.setTokenId(global?.user.id()); // e.g., your DB user ID
|
||||||
|
}
|
||||||
|
}, [global]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (loading) return;
|
if (loading) return;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue