send ga event with user id

This commit is contained in:
Sean Yesmunt 2019-07-21 22:28:49 -04:00
parent e503988fdc
commit 12498b1b69
2 changed files with 18 additions and 8 deletions

View file

@ -24,12 +24,14 @@ const analytics: Analytics = {
ReactGA.pageview(path);
}
},
setUser: user => {
// Commented out because currently there is some delay before we know the user
// We should retrieve this server side so we have it immediately
// if (analyticsEnabled && user.id) {
// ReactGA.set('userId', user.id);
// }
setUser: userId => {
if (analyticsEnabled && userId) {
ReactGA.event({
category: 'User',
action: 'userId',
value: userId,
});
}
},
toggle: (enabled: boolean): void => {
// Always collect analytics on lbry.tv
@ -80,7 +82,6 @@ const analytics: Analytics = {
}
},
tagFollowEvent: (tag, following, location) => {
console.log('yep');
if (analyticsEnabled) {
ReactGA.event({
category: 'Tag',

View file

@ -1,5 +1,6 @@
// @flow
import React, { useEffect, useRef } from 'react';
import analytics from 'analytics';
import Router from 'component/router/index';
import ModalRouter from 'modal/modalRouter';
import ReactModal from 'react-modal';
@ -16,15 +17,17 @@ type Props = {
pageTitle: ?string,
language: string,
theme: string,
user: ?{ id: string },
fetchRewards: () => void,
fetchRewardedContent: () => void,
fetchTransactions: () => void,
};
function App(props: Props) {
const { theme, fetchRewards, fetchRewardedContent, fetchTransactions } = props;
const { theme, fetchRewards, fetchRewardedContent, fetchTransactions, user } = props;
const appRef = useRef();
const isEnhancedLayout = useKonamiListener();
const userId = user && user.id;
useEffect(() => {
ReactModal.setAppElement(appRef.current);
@ -41,6 +44,12 @@ function App(props: Props) {
document.documentElement.setAttribute('data-mode', theme);
}, [theme]);
useEffect(() => {
if (userId) {
analytics.setUser(userId);
}
}, [userId]);
return (
<div ref={appRef} onContextMenu={e => openContextMenu(e)}>
<Header />