diff --git a/internal_packages/preferences/lib/tabs/preferences-identity.jsx b/internal_packages/preferences/lib/tabs/preferences-identity.jsx
index 584a5d0be..6d2567ebe 100644
--- a/internal_packages/preferences/lib/tabs/preferences-identity.jsx
+++ b/internal_packages/preferences/lib/tabs/preferences-identity.jsx
@@ -60,6 +60,7 @@ class PreferencesIdentity extends React.Component {
constructor() {
super();
this.state = this.getStateFromStores();
+ this.state.refreshing = false;
}
componentDidMount() {
@@ -80,6 +81,13 @@ class PreferencesIdentity extends React.Component {
};
}
+ _onRefresh = () => {
+ this.setState({refreshing: true});
+ IdentityStore.refreshStatus().finally(() => {
+ this.setState({refreshing: false});
+ });
+ }
+
_renderPaymentRow() {
const {identity, daysUntilSubscriptionRequired, subscriptionState} = this.state
@@ -120,12 +128,30 @@ class PreferencesIdentity extends React.Component {
}
render() {
- const {identity} = this.state;
+ const {identity, refreshing} = this.state;
const {firstname, lastname, email} = identity;
+ let refresh = null;
+ if (refreshing) {
+ refresh = (
+
+ Refreshing...