diff --git a/src/App.js b/src/App.js index 45daee7b..fd5854fc 100644 --- a/src/App.js +++ b/src/App.js @@ -41,8 +41,10 @@ class App extends Component { }; } - async componentDidMount() { - this.setState({ user: await campus.getCurrentUser(true) }); + componentDidMount() { + campus.getCurrentUser(true).then(user => { + this.setState({ user }); + }); } render() { diff --git a/src/components/Bb/BbList.js b/src/components/Bb/BbList.js index cb96c2c3..ce875443 100644 --- a/src/components/Bb/BbList.js +++ b/src/components/Bb/BbList.js @@ -17,19 +17,7 @@ class BbList extends React.Component { }; } - async componentDidMount() { - const response = await campus.getBulletinBoardForCurrentUser( - 1, - this.state.pageSize, - ); - - if (!!response) { - this.setState({ - items: response.data, - activePage: 1, - paging: response.paging, - }); - } + componentDidMount() { } dateToString = (date) => diff --git a/src/components/Home.js b/src/components/Home.js index 231b96f5..3d99680c 100644 --- a/src/components/Home.js +++ b/src/components/Home.js @@ -10,21 +10,26 @@ class Home extends React.Component { user: null, }; - async componentDidMount() { + componentDidMount() { + this.initializeUser(); + } + + initializeUser = async () => { const user = await campus.getCurrentUser(); if (!user) { this.props.history.push('/login'); return; - } else { - if (!user.modules) { - await campus.logout(); - window.location.href = 'https://ecampus.kpi.ua/'; - } + } + + if (!user.modules) { + await campus.logout(); + window.location.href = 'https://ecampus.kpi.ua/'; + return; } this.setState({ user }); - } + }; redirectToOldUI = async (e) => { e.preventDefault(); diff --git a/src/components/KPIID.js b/src/components/KPIID.js index feff171b..f31d3b14 100644 --- a/src/components/KPIID.js +++ b/src/components/KPIID.js @@ -12,7 +12,11 @@ class KpiId extends React.Component { super(props); } - componentDidMount = async () => { + componentDidMount() { + this.handleAuthentication(); + } + + handleAuthentication = async () => { try { const params = new URLSearchParams(this.props.location.search); const ticketId = params.get('ticketId'); @@ -24,7 +28,7 @@ class KpiId extends React.Component { const currentUser = await campus.exchangeKpiIdTicket(ticketId); - if (!!currentUser) { + if (currentUser) { this.setState({ redirect: '/home' }); } else { this.setState({ error: 'Failed to authenticate using KPI ID' }); diff --git a/src/components/Login.js b/src/components/Login.js index cfce367c..333e0b88 100644 --- a/src/components/Login.js +++ b/src/components/Login.js @@ -9,11 +9,15 @@ class Login extends React.Component { redirect: null }; - componentDidMount = async () => { + componentDidMount() { + this.authenticateUser(); + } + + authenticateUser = async () => { try { const currentUser = await campus.getCurrentUser(true); - if (!!currentUser) { + if (currentUser) { this.setState({ redirect: '/home' }); } else { this.setState({ error: 'Failed to authenticate using KPI ID' }); diff --git a/src/components/Settings.js b/src/components/Settings.js index deaa8977..d88850c6 100644 --- a/src/components/Settings.js +++ b/src/components/Settings.js @@ -9,7 +9,11 @@ class Settings extends React.Component { user: {}, }; - async componentDidMount() { + componentDidMount() { + this.loadUser(); + } + + loadUser = async () => { const user = await campus.getCurrentUser(true); if (!user) { @@ -18,7 +22,7 @@ class Settings extends React.Component { } this.setState({ user }); - } + }; render() { const { user } = this.state; diff --git a/src/components/SettingsEditor.js b/src/components/SettingsEditor.js index 72cc78c3..a2e2c2eb 100644 --- a/src/components/SettingsEditor.js +++ b/src/components/SettingsEditor.js @@ -21,7 +21,11 @@ class SettingsEditor extends React.Component { redirect: null }; - async componentDidMount() { + componentDidMount() { + this.loadUser(); + } + + loadUser = async () => { const user = await campus.getCurrentUser(); if (!user) { @@ -29,15 +33,17 @@ class SettingsEditor extends React.Component { return; } - this.setState({ user }); - this.setState({ email: user.email }); - this.setState({ credo: user.credo }); - this.setState({ scientificInterests: user.scientificInterests }); - this.setState({ fullName: user.fullName }); - this.setState({ currentPassword: '' }); - this.setState({ password: '' }); - this.setState({ passwordConfirmation: '' }); - } + this.setState({ + user, + email: user.email, + credo: user.credo, + scientificInterests: user.scientificInterests, + fullName: user.fullName, + currentPassword: '', + password: '', + passwordConfirmation: '', + }); + }; /** * Validate password diff --git a/src/components/UserProfileImage.js b/src/components/UserProfileImage.js index b2936db3..d4e9db75 100644 --- a/src/components/UserProfileImage.js +++ b/src/components/UserProfileImage.js @@ -7,7 +7,7 @@ class UserProfileImage extends React.Component { rnd: 0, }; - async componentDidMount() { + componentDidMount() { this.setState({ rnd: getRandomNumber() }); }