diff options
| author | Andrej Mihajlov <and@codeispoetry.ru> | 2017-02-28 15:59:59 +0000 |
|---|---|---|
| committer | Andrej Mihajlov <and@codeispoetry.ru> | 2017-02-28 15:59:59 +0000 |
| commit | d3c76c5119cddffcf1848429cac587eee970bfe2 (patch) | |
| tree | d32bac35be530b90d9de04136ef9da4644c91c4a /app/app.js | |
| parent | 8acce108f61ff5d581ee765530ba2b90befd9e9d (diff) | |
| download | mullvadvpn-d3c76c5119cddffcf1848429cac587eee970bfe2.tar.xz mullvadvpn-d3c76c5119cddffcf1848429cac587eee970bfe2.zip | |
Move routing logic to app.js
Diffstat (limited to 'app/app.js')
| -rw-r--r-- | app/app.js | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/app/app.js b/app/app.js index 820236671f..43ad0d959a 100644 --- a/app/app.js +++ b/app/app.js @@ -2,7 +2,7 @@ import React from 'react'; import ReactDOM from 'react-dom'; import { Provider } from 'react-redux'; import { Router, createMemoryHistory } from 'react-router'; -import { syncHistoryWithStore } from 'react-router-redux'; +import { syncHistoryWithStore, replace } from 'react-router-redux'; import { webFrame, ipcRenderer } from 'electron'; import makeRoutes from './routes'; import configureStore from './store'; @@ -87,6 +87,15 @@ syncBackendWithReduxStore(backend, store); // Setup primary event handlers to translate backend events into redux dispatch mapBackendEventsToReduxActions(backend, store); +// redirect user to main screen after login +backend.on(Backend.EventType.login, (addr, error) => { + if(error) { return; } + setTimeout(() => store.dispatch(replace('/connect')), 1000); +}); + +// redirect user to login page on logout +backend.on(Backend.EventType.logout, () => store.dispatch(replace('/'))); + // Setup events to update tray icon backend.on(Backend.EventType.connect, updateTrayIcon); backend.on(Backend.EventType.disconnect, updateTrayIcon); |
