Add warning about invalid token
This commit is contained in:
parent
7cdfc8e11f
commit
a4e0b2b69d
1 changed files with 22 additions and 4 deletions
26
app/index.js
26
app/index.js
|
@ -7,13 +7,14 @@ import BusyIndicator from 'react-native-busy-indicator';
|
|||
import token from './api/token';
|
||||
import { checkToken } from './api/CircleCI';
|
||||
|
||||
require('moment-duration-format');
|
||||
import 'moment-duration-format';
|
||||
|
||||
const {
|
||||
Navigator,
|
||||
StyleSheet,
|
||||
Platform,
|
||||
View
|
||||
View,
|
||||
Alert
|
||||
} = React;
|
||||
|
||||
const styles = StyleSheet.create({
|
||||
|
@ -28,6 +29,10 @@ const styles = StyleSheet.create({
|
|||
}
|
||||
});
|
||||
|
||||
const LOGGED_IN_ROUTE = RouteMaster.get('HOME');
|
||||
const LOGIN_ROUTE = RouteMaster.get('LOGIN');
|
||||
|
||||
|
||||
export default class App extends React.Component {
|
||||
constructor() {
|
||||
super();
|
||||
|
@ -49,18 +54,31 @@ export default class App extends React.Component {
|
|||
);
|
||||
}
|
||||
|
||||
warnInvalidToken() {
|
||||
Alert.alert(
|
||||
'Token Invalidated',
|
||||
'The token you used previously is now invalid. Please generate a new one in your account settings.',
|
||||
[
|
||||
{ text: 'ok' }
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
componentWillMount() {
|
||||
token.get().then(function (CIToken) {
|
||||
if (!CIToken) {
|
||||
this.setState({
|
||||
initialRoute: RouteMaster.get('HOME')
|
||||
initialRoute: LOGIN_ROUTE
|
||||
});
|
||||
return;
|
||||
}
|
||||
checkToken(CIToken).then(function (isValid) {
|
||||
this.setState({
|
||||
initialRoute: isValid ? RouteMaster.get('HOME') : RouteMaster.get('LOGIN')
|
||||
initialRoute: isValid ? LOGGED_IN_ROUTE : LOGIN_ROUTE
|
||||
});
|
||||
if (!isValid) {
|
||||
this.warnInvalidToken();
|
||||
}
|
||||
}.bind(this));
|
||||
}.bind(this));
|
||||
}
|
||||
|
|
Reference in a new issue