From 598ce0d40129b7426d47404a3e6ff886c2e186b9 Mon Sep 17 00:00:00 2001 From: Thomas Schmidt Date: Mon, 5 Feb 2018 15:57:29 -0800 Subject: Switch GA to React GA and add logging for Portal --- packages/website/package.json | 1 + packages/website/public/index.html | 12 ++++++------ packages/website/ts/components/inputs/allowance_toggle.tsx | 13 ++++++++++++- packages/website/ts/globals.d.ts | 1 + packages/website/ts/index.tsx | 2 ++ 5 files changed, 22 insertions(+), 7 deletions(-) diff --git a/packages/website/package.json b/packages/website/package.json index 295675fa3..ad9fc3055 100644 --- a/packages/website/package.json +++ b/packages/website/package.json @@ -42,6 +42,7 @@ "react-copy-to-clipboard": "^4.2.3", "react-document-title": "^2.0.3", "react-dom": "15.6.1", + "react-ga": "^2.4.1", "react-highlight": "^0.10.0", "react-html5video": "^2.1.0", "react-inlinesvg": "^0.5.5", diff --git a/packages/website/public/index.html b/packages/website/public/index.html index c6f2f666c..aeef03fe9 100644 --- a/packages/website/public/index.html +++ b/packages/website/public/index.html @@ -23,13 +23,13 @@ diff --git a/packages/website/ts/components/inputs/allowance_toggle.tsx b/packages/website/ts/components/inputs/allowance_toggle.tsx index 45531e74b..26c693dee 100644 --- a/packages/website/ts/components/inputs/allowance_toggle.tsx +++ b/packages/website/ts/components/inputs/allowance_toggle.tsx @@ -2,6 +2,7 @@ import { BigNumber } from '@0xproject/utils'; import * as _ from 'lodash'; import Toggle from 'material-ui/Toggle'; import * as React from 'react'; +import * as ReactGA from 'react-ga'; import { Blockchain } from 'ts/blockchain'; import { Dispatcher } from 'ts/redux/dispatcher'; import { BalanceErrs, Token, TokenState } from 'ts/types'; @@ -74,7 +75,17 @@ export class AllowanceToggle extends React.Component { + ReactGA.event({ + category: 'Portal', + action: 'Set Allowance', + label: this.props.token.symbol, + value: newAllowanceAmountInBaseUnits, + }); + }, (rejected: any) => { + console.log(rejected); + }); await this.props.refetchTokenStateAsync(); } catch (err) { this.setState({ diff --git a/packages/website/ts/globals.d.ts b/packages/website/ts/globals.d.ts index d7f887c6d..19237db14 100644 --- a/packages/website/ts/globals.d.ts +++ b/packages/website/ts/globals.d.ts @@ -11,6 +11,7 @@ declare module 'react-highlight'; declare module 'react-recaptcha'; declare module 'react-document-title'; declare module 'ethereumjs-tx'; +declare module 'react-ga'; declare module '*.json' { const json: any; diff --git a/packages/website/ts/index.tsx b/packages/website/ts/index.tsx index ffb551561..bc4e0b472 100644 --- a/packages/website/ts/index.tsx +++ b/packages/website/ts/index.tsx @@ -2,6 +2,7 @@ import { MuiThemeProvider } from 'material-ui/styles'; import * as React from 'react'; import { render } from 'react-dom'; +import * as ReactGA from 'react-ga'; import { Provider } from 'react-redux'; import { BrowserRouter as Router, Redirect, Route, Switch } from 'react-router-dom'; import * as injectTapEventPlugin from 'react-tap-event-plugin'; @@ -44,6 +45,7 @@ const LazyConnectDocumentation = createLazyComponent('Documentation', async () = System.import(/* webpackChunkName: "connectDocs" */ 'ts/containers/connect_documentation'), ); +ReactGA.initialize('UA-98720122-1'); const store: ReduxStore = createStore(reducer); render( -- cgit