aboutsummaryrefslogtreecommitdiffstats
path: root/src/features/announcements
diff options
context:
space:
mode:
authorLibravatar Stefan Malzner <stefan@adlk.io>2019-04-16 11:46:37 +0200
committerLibravatar Stefan Malzner <stefan@adlk.io>2019-04-16 11:46:37 +0200
commit936407669fed7677b5aa94aa4d29be0fe1ada163 (patch)
tree2ddd00b731e011424e59fbcdbb0484dd6fcdf369 /src/features/announcements
parentincrease app opens to show share franz overlay (diff)
parentAdd analytics events (diff)
downloadferdium-app-936407669fed7677b5aa94aa4d29be0fe1ada163.tar.gz
ferdium-app-936407669fed7677b5aa94aa4d29be0fe1ada163.tar.zst
ferdium-app-936407669fed7677b5aa94aa4d29be0fe1ada163.zip
Merge branch 'feature/announcements' into develop
Diffstat (limited to 'src/features/announcements')
-rw-r--r--src/features/announcements/index.js2
-rw-r--r--src/features/announcements/store.js6
2 files changed, 7 insertions, 1 deletions
diff --git a/src/features/announcements/index.js b/src/features/announcements/index.js
index c087689a7..4658b976f 100644
--- a/src/features/announcements/index.js
+++ b/src/features/announcements/index.js
@@ -3,6 +3,8 @@ import { AnnouncementsStore } from './store';
3 3
4const debug = require('debug')('Franz:feature:announcements'); 4const debug = require('debug')('Franz:feature:announcements');
5 5
6export const GA_CATEGORY_ANNOUNCEMENTS = 'Announcements';
7
6export const announcementsStore = new AnnouncementsStore(); 8export const announcementsStore = new AnnouncementsStore();
7 9
8export default function initAnnouncements(stores, actions) { 10export default function initAnnouncements(stores, actions) {
diff --git a/src/features/announcements/store.js b/src/features/announcements/store.js
index 87cf08544..aa98d3bd1 100644
--- a/src/features/announcements/store.js
+++ b/src/features/announcements/store.js
@@ -8,10 +8,12 @@ import semver from 'semver';
8import localStorage from 'mobx-localstorage'; 8import localStorage from 'mobx-localstorage';
9 9
10import { FeatureStore } from '../utils/FeatureStore'; 10import { FeatureStore } from '../utils/FeatureStore';
11import { GA_CATEGORY_ANNOUNCEMENTS } from '.';
11import { getAnnouncementRequest, getChangelogRequest, getCurrentVersionRequest } from './api'; 12import { getAnnouncementRequest, getChangelogRequest, getCurrentVersionRequest } from './api';
12import { announcementActions } from './actions'; 13import { announcementActions } from './actions';
13import { createActionBindings } from '../utils/ActionBinding'; 14import { createActionBindings } from '../utils/ActionBinding';
14import { createReactions } from '../../stores/lib/Reaction'; 15import { createReactions } from '../../stores/lib/Reaction';
16import { gaEvent } from '../../lib/analytics';
15 17
16const LOCAL_STORAGE_KEY = 'announcements'; 18const LOCAL_STORAGE_KEY = 'announcements';
17 19
@@ -98,6 +100,8 @@ export class AnnouncementsStore extends FeatureStore {
98 dispose(); 100 dispose();
99 }, 101 },
100 ); 102 );
103
104 gaEvent(GA_CATEGORY_ANNOUNCEMENTS, 'show');
101 }; 105 };
102 106
103 @action _hideAnnouncement() { 107 @action _hideAnnouncement() {
@@ -113,7 +117,7 @@ export class AnnouncementsStore extends FeatureStore {
113 117
114 // Check if the user has already used current version (= has seen the announcement) 118 // Check if the user has already used current version (= has seen the announcement)
115 const { currentVersion, lastSeenAnnouncementVersion } = this; 119 const { currentVersion, lastSeenAnnouncementVersion } = this;
116 if (semver.gt(currentVersion, lastSeenAnnouncementVersion)) { 120 if (semver.gt(currentVersion, lastSeenAnnouncementVersion || '0.0.0')) {
117 debug(`${currentVersion} < ${lastSeenAnnouncementVersion}: announcement is shown`); 121 debug(`${currentVersion} < ${lastSeenAnnouncementVersion}: announcement is shown`);
118 this._showAnnouncement(); 122 this._showAnnouncement();
119 } 123 }