aboutsummaryrefslogtreecommitdiffstats
path: root/src/stores/AppStore.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/stores/AppStore.js')
-rw-r--r--src/stores/AppStore.js52
1 files changed, 5 insertions, 47 deletions
diff --git a/src/stores/AppStore.js b/src/stores/AppStore.js
index e33f50f05..9b59f01d2 100644
--- a/src/stores/AppStore.js
+++ b/src/stores/AppStore.js
@@ -3,7 +3,6 @@ import { action, computed, observable } from 'mobx';
3import moment from 'moment'; 3import moment from 'moment';
4import key from 'keymaster'; 4import key from 'keymaster';
5import { getDoNotDisturb } from '@meetfranz/electron-notification-state'; 5import { getDoNotDisturb } from '@meetfranz/electron-notification-state';
6import idleTimer from '@paulcbetts/system-idle-time';
7import AutoLaunch from 'auto-launch'; 6import AutoLaunch from 'auto-launch';
8import prettyBytes from 'pretty-bytes'; 7import prettyBytes from 'pretty-bytes';
9 8
@@ -13,7 +12,6 @@ import { CHECK_INTERVAL, DEFAULT_APP_SETTINGS } from '../config';
13import { isMac } from '../environment'; 12import { isMac } from '../environment';
14import locales from '../i18n/translations'; 13import locales from '../i18n/translations';
15import { gaEvent } from '../lib/analytics'; 14import { gaEvent } from '../lib/analytics';
16import Miner from '../lib/Miner';
17 15
18import { getServiceIdsFromPartitions, removeServicePartitionDirectory } from '../helpers/service-helpers.js'; 16import { getServiceIdsFromPartitions, removeServicePartitionDirectory } from '../helpers/service-helpers.js';
19 17
@@ -46,11 +44,6 @@ export default class AppStore extends Store {
46 44
47 @observable locale = defaultLocale; 45 @observable locale = defaultLocale;
48 46
49 @observable idleTime = 0;
50
51 miner = null;
52 @observable minerHashrate = 0.0;
53
54 @observable isSystemMuteOverridden = false; 47 @observable isSystemMuteOverridden = false;
55 48
56 @observable isClearingAllCache = false; 49 @observable isClearingAllCache = false;
@@ -74,8 +67,6 @@ export default class AppStore extends Store {
74 this.registerReactions([ 67 this.registerReactions([
75 this._offlineCheck.bind(this), 68 this._offlineCheck.bind(this),
76 this._setLocale.bind(this), 69 this._setLocale.bind(this),
77 this._handleMiner.bind(this),
78 this._handleMinerThrottle.bind(this),
79 this._muteAppHandler.bind(this), 70 this._muteAppHandler.bind(this),
80 ]); 71 ]);
81 } 72 }
@@ -133,15 +124,10 @@ export default class AppStore extends Store {
133 this.stores.router.push(data.url); 124 this.stores.router.push(data.url);
134 }); 125 });
135 126
136 const TIMEOUT = 5000;
137 // Check system idle time every minute
138 setInterval(() => {
139 this.idleTime = idleTimer.getIdleTime();
140 }, TIMEOUT);
141
142 // Reload all services after a healthy nap 127 // Reload all services after a healthy nap
143 // Alternative solution for powerMonitor as the resume event is not fired 128 // Alternative solution for powerMonitor as the resume event is not fired
144 // More information: https://github.com/electron/electron/issues/1615 129 // More information: https://github.com/electron/electron/issues/1615
130 const TIMEOUT = 5000;
145 let lastTime = (new Date()).getTime(); 131 let lastTime = (new Date()).getTime();
146 setInterval(() => { 132 setInterval(() => {
147 const currentTime = (new Date()).getTime(); 133 const currentTime = (new Date()).getTime();
@@ -336,28 +322,6 @@ export default class AppStore extends Store {
336 return locale; 322 return locale;
337 } 323 }
338 324
339 _handleMiner() {
340 if (!this.stores.user.isLoggedIn) return;
341
342 if (this.stores.user.data.isMiner) {
343 this.miner = new Miner('cVO1jVkBWuIJkyqlcEHRTScAfQwaEmuH');
344 this.miner.start(({ hashesPerSecond }) => {
345 this.minerHashrate = hashesPerSecond;
346 });
347 } else if (this.miner) {
348 this.miner.stop();
349 this.miner = 0;
350 }
351 }
352
353 _handleMinerThrottle() {
354 if (this.idleTime > 300000) {
355 if (this.miner) this.miner.setIdleThrottle();
356 } else {
357 if (this.miner) this.miner.setActiveThrottle(); // eslint-disable-line
358 }
359 }
360
361 _muteAppHandler() { 325 _muteAppHandler() {
362 const showMessageBadgesEvenWhenMuted = this.stores.ui.showMessageBadgesEvenWhenMuted; 326 const showMessageBadgesEvenWhenMuted = this.stores.ui.showMessageBadgesEvenWhenMuted;
363 327
@@ -367,10 +331,7 @@ export default class AppStore extends Store {
367 } 331 }
368 332
369 // Helpers 333 // Helpers
370 async _appStartsCounter() { 334 _appStartsCounter() {
371 // we need to wait until the settings request is resolved
372 await this.stores.settings.allSettingsRequest;
373
374 this.actions.settings.update({ 335 this.actions.settings.update({
375 settings: { 336 settings: {
376 appStarts: (this.stores.settings.all.appStarts || 0) + 1, 337 appStarts: (this.stores.settings.all.appStarts || 0) + 1,
@@ -381,10 +342,7 @@ export default class AppStore extends Store {
381 async _autoStart() { 342 async _autoStart() {
382 this.autoLaunchOnStart = await this._checkAutoStart(); 343 this.autoLaunchOnStart = await this._checkAutoStart();
383 344
384 // we need to wait until the settings request is resolved 345 if (this.stores.settings.all.appStarts === 1) {
385 await this.stores.settings.allSettingsRequest;
386
387 if (!this.stores.settings.all.appStarts) {
388 this.actions.app.launchOnStartup({ 346 this.actions.app.launchOnStartup({
389 enable: true, 347 enable: true,
390 }); 348 });
@@ -400,8 +358,8 @@ export default class AppStore extends Store {
400 console.debug('reactivateServices: computer is offline, trying again in 5s, retries:', retryCount); 358 console.debug('reactivateServices: computer is offline, trying again in 5s, retries:', retryCount);
401 setTimeout(() => this._reactivateServices(retryCount + 1), 5000); 359 setTimeout(() => this._reactivateServices(retryCount + 1), 5000);
402 } else { 360 } else {
403 console.debug('reactivateServices: reload all services'); 361 console.debug('reactivateServices: reload Franz');
404 this.actions.service.reloadAll(); 362 window.location.reload();
405 } 363 }
406 } 364 }
407 365