// Copyright 2022 The Casdoor Authors. All Rights Reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. import React from "react"; import {Redirect, Route, Switch} from "react-router-dom"; import {Spin} from "antd"; import i18next from "i18next"; import * as Setting from "./Setting"; import * as Conf from "./Conf"; import SignupPage from "./auth/SignupPage"; import SelfLoginPage from "./auth/SelfLoginPage"; import LoginPage from "./auth/LoginPage"; import SelfForgetPage from "./auth/SelfForgetPage"; import ForgetPage from "./auth/ForgetPage"; import PromptPage from "./auth/PromptPage"; import CasLogout from "./auth/CasLogout"; class EntryPage extends React.Component { constructor(props) { super(props); this.state = { application: undefined, }; } renderHomeIfLoggedIn(component) { if (this.props.account !== null && this.props.account !== undefined) { return ; } else { return component; } } renderLoginIfNotLoggedIn(component) { if (this.props.account === null) { sessionStorage.setItem("from", window.location.pathname); return ; } else if (this.props.account === undefined) { return null; } else { return component; } } getApplicationObj() { return this.state.application || null; } render() { const onUpdateApplication = (application) => { this.setState({ application: application, }); const themeData = application !== null ? Setting.getThemeData(application.organizationObj, application) : Conf.ThemeDefault; this.props.updataThemeData(themeData); }; return (
this.renderHomeIfLoggedIn()} /> this.renderHomeIfLoggedIn()} /> this.renderHomeIfLoggedIn()} /> this.renderHomeIfLoggedIn()} /> } /> } /> } /> } /> this.renderHomeIfLoggedIn()} /> this.renderHomeIfLoggedIn()} /> this.renderLoginIfNotLoggedIn()} /> this.renderLoginIfNotLoggedIn()} /> this.renderHomeIfLoggedIn()} /> {return ();}} />
); } } export default EntryPage;