summaryrefslogtreecommitdiffstats
path: root/webapp/client/browser_web_client.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/client/browser_web_client.jsx')
-rw-r--r--webapp/client/browser_web_client.jsx35
1 files changed, 22 insertions, 13 deletions
diff --git a/webapp/client/browser_web_client.jsx b/webapp/client/browser_web_client.jsx
index f5d7f6c80..ef543ca34 100644
--- a/webapp/client/browser_web_client.jsx
+++ b/webapp/client/browser_web_client.jsx
@@ -4,6 +4,7 @@
import Client from './client.jsx';
import TeamStore from 'stores/team_store.jsx';
+import UserStore from 'stores/user_store.jsx';
import BrowserStore from 'stores/browser_store.jsx';
import * as GlobalActions from 'actions/global_actions.jsx';
@@ -29,16 +30,22 @@ class WebClientClass extends Client {
onTeamStoreChanged() {
this.setTeamId(TeamStore.getCurrentId());
}
-
- track(category, action, label, property, value) {
- if (global.window && global.window.analytics) {
- global.window.analytics.track(action, {category, label, property, value});
- }
- }
-
- trackPage() {
+ trackEvent(category, event, props) {
if (global.window && global.window.analytics) {
- global.window.analytics.page();
+ const properties = Object.assign({category, type: event, user_id: UserStore.getCurrentId()}, props);
+ const options = {
+ context: {
+ ip: '0.0.0.0'
+ },
+ page: {
+ path: '',
+ referrer: '',
+ search: '',
+ title: '',
+ url: ''
+ }
+ };
+ global.window.analytics.track('event', properties, options);
}
}
@@ -74,7 +81,7 @@ class WebClientClass extends Client {
password,
token,
(data) => {
- this.track('api', 'api_users_login_success', '', 'login_id', loginId);
+ this.trackEvent('api', 'api_users_login_success');
BrowserStore.signalLogin();
if (success) {
@@ -82,7 +89,7 @@ class WebClientClass extends Client {
}
},
(err) => {
- this.track('api', 'api_users_login_fail', '', 'login_id', loginId);
+ this.trackEvent('api', 'api_users_login_fail');
if (error) {
error(err);
}
@@ -96,7 +103,8 @@ class WebClientClass extends Client {
password,
token,
(data) => {
- this.track('api', 'api_users_login_success', '', 'login_id', loginId);
+ this.trackEvent('api', 'api_users_login_success');
+ this.trackEvent('api', 'api_users_login_ldap_success');
BrowserStore.signalLogin();
if (success) {
@@ -104,7 +112,8 @@ class WebClientClass extends Client {
}
},
(err) => {
- this.track('api', 'api_users_login_fail', '', 'login_id', loginId);
+ this.trackEvent('api', 'api_users_login_fail');
+ this.trackEvent('api', 'api_users_login_ldap_fail');
if (error) {
error(err);
}