diff options
author | Stefan Malzner <stefan@adlk.io> | 2019-01-07 22:25:05 +0100 |
---|---|---|
committer | Stefan Malzner <stefan@adlk.io> | 2019-01-07 22:25:05 +0100 |
commit | 7971227445e644b536f94208f43881fcd07bcb05 (patch) | |
tree | bf6ca7b811e06f49d9fa1722c32d95e7a886f46f /src | |
parent | Replace jshashes with node crypto module (diff) | |
download | ferdium-app-7971227445e644b536f94208f43881fcd07bcb05.tar.gz ferdium-app-7971227445e644b536f94208f43881fcd07bcb05.tar.zst ferdium-app-7971227445e644b536f94208f43881fcd07bcb05.zip |
Add analytics events for app delay
Diffstat (limited to 'src')
-rw-r--r-- | src/features/delayApp/Component.js | 14 | ||||
-rw-r--r-- | src/features/delayApp/index.js | 2 | ||||
-rw-r--r-- | src/lib/analytics.js | 3 |
3 files changed, 15 insertions, 4 deletions
diff --git a/src/features/delayApp/Component.js b/src/features/delayApp/Component.js index 6e0532c9a..ff84510e8 100644 --- a/src/features/delayApp/Component.js +++ b/src/features/delayApp/Component.js | |||
@@ -4,6 +4,8 @@ import { inject, observer } from 'mobx-react'; | |||
4 | import { defineMessages, intlShape } from 'react-intl'; | 4 | import { defineMessages, intlShape } from 'react-intl'; |
5 | import injectSheet from 'react-jss'; | 5 | import injectSheet from 'react-jss'; |
6 | 6 | ||
7 | import { gaEvent } from '../../lib/analytics'; | ||
8 | |||
7 | import Button from '../../components/ui/Button'; | 9 | import Button from '../../components/ui/Button'; |
8 | 10 | ||
9 | import { config } from '.'; | 11 | import { config } from '.'; |
@@ -59,8 +61,16 @@ export default @inject('actions') @injectSheet(styles) @observer class DelayApp | |||
59 | clearInterval(this.countdownInterval); | 61 | clearInterval(this.countdownInterval); |
60 | } | 62 | } |
61 | 63 | ||
64 | handleCTAClick() { | ||
65 | const { actions } = this.props; | ||
66 | |||
67 | actions.ui.openSettings({ path: 'user' }); | ||
68 | |||
69 | gaEvent('DelayApp', 'subscribe_click', 'Delay App Feature'); | ||
70 | } | ||
71 | |||
62 | render() { | 72 | render() { |
63 | const { classes, actions } = this.props; | 73 | const { classes } = this.props; |
64 | const { intl } = this.context; | 74 | const { intl } = this.context; |
65 | 75 | ||
66 | return ( | 76 | return ( |
@@ -70,7 +80,7 @@ export default @inject('actions') @injectSheet(styles) @observer class DelayApp | |||
70 | label={intl.formatMessage(messages.action)} | 80 | label={intl.formatMessage(messages.action)} |
71 | className={classes.button} | 81 | className={classes.button} |
72 | buttonType="inverted" | 82 | buttonType="inverted" |
73 | onClick={() => actions.ui.openSettings({ path: 'user' })} | 83 | onClick={this.handleCTAClick.bind(this)} |
74 | /> | 84 | /> |
75 | <p className="footnote"> | 85 | <p className="footnote"> |
76 | {intl.formatMessage(messages.text, { | 86 | {intl.formatMessage(messages.text, { |
diff --git a/src/features/delayApp/index.js b/src/features/delayApp/index.js index d5c544b78..3412ad5d1 100644 --- a/src/features/delayApp/index.js +++ b/src/features/delayApp/index.js | |||
@@ -3,6 +3,7 @@ import moment from 'moment'; | |||
3 | import DelayAppComponent from './Component'; | 3 | import DelayAppComponent from './Component'; |
4 | 4 | ||
5 | import { DEFAULT_FEATURES_CONFIG } from '../../config'; | 5 | import { DEFAULT_FEATURES_CONFIG } from '../../config'; |
6 | import { gaEvent } from '../../lib/analytics'; | ||
6 | 7 | ||
7 | const debug = require('debug')('Franz:feature:delayApp'); | 8 | const debug = require('debug')('Franz:feature:delayApp'); |
8 | 9 | ||
@@ -50,6 +51,7 @@ export default function init(stores) { | |||
50 | debug(`App will be delayed for ${config.delayDuration / 1000}s`); | 51 | debug(`App will be delayed for ${config.delayDuration / 1000}s`); |
51 | 52 | ||
52 | setVisibility(true); | 53 | setVisibility(true); |
54 | gaEvent('delayApp', 'show', 'Delay App Feature'); | ||
53 | 55 | ||
54 | timeLastDelay = moment(); | 56 | timeLastDelay = moment(); |
55 | shownAfterLaunch = true; | 57 | shownAfterLaunch = true; |
diff --git a/src/lib/analytics.js b/src/lib/analytics.js index 8b9a44579..7044e5bb7 100644 --- a/src/lib/analytics.js +++ b/src/lib/analytics.js | |||
@@ -1,6 +1,5 @@ | |||
1 | import { remote } from 'electron'; | 1 | import { remote } from 'electron'; |
2 | import { GA_ID } from '../config'; | 2 | import { GA_ID } from '../config'; |
3 | // import { isDevMode } from '../environment'; | ||
4 | 3 | ||
5 | const debug = require('debug')('Franz:Analytics'); | 4 | const debug = require('debug')('Franz:Analytics'); |
6 | 5 | ||
@@ -36,7 +35,7 @@ export function gaPage(page) { | |||
36 | export function gaEvent(category, action, label) { | 35 | export function gaEvent(category, action, label) { |
37 | ga('send', 'event', category, action, label); | 36 | ga('send', 'event', category, action, label); |
38 | 37 | ||
39 | debug('GA track page', category, action); | 38 | debug('GA track event', category, action); |
40 | } | 39 | } |
41 | 40 | ||
42 | setTimeout(() => { | 41 | setTimeout(() => { |