Sfoglia il codice sorgente

fix login and logout

kaori 4 anni fa
parent
commit
bb1092c2aa
1 ha cambiato i file con 18 aggiunte e 6 eliminazioni
  1. 18 6
      packages/app/src/components/MaintenanceModeContent.tsx

+ 18 - 6
packages/app/src/components/MaintenanceModeContent.tsx

@@ -4,13 +4,26 @@ import PropTypes from 'prop-types';
 import { useTranslation } from 'react-i18next';
 
 import AppContainer from '~/client/services/AppContainer';
+import { toastError } from '~/client/util/apiNotification';
 
 import { withUnstatedContainers } from './UnstatedUtils';
 
 const MaintenanceModeContent = (props) => {
   const { t } = useTranslation();
+  const { appContainer } = props;
 
-  const isUserLoggedIn = props.appContainer.currentUser != null;
+  const isUserLoggedIn = appContainer.currentUser != null;
+
+  const logoutHandler = async() => {
+    try {
+      appContainer.apiv3Post('/logout');
+      window.location.reload();
+    }
+    catch (err) {
+      toastError(err);
+    }
+
+  };
 
   return (
     <div className="text-left">
@@ -22,15 +35,14 @@ const MaintenanceModeContent = (props) => {
         ? (
           <p>
             <i className="icon-arrow-right"></i>
-            <a href="/login">{ t('maintenance_mode.login') }</a>
+            <a href="" onClick={logoutHandler} id="maintanounse-mode-logout">{ t('maintenance_mode.logout') }</a>
           </p>
         )
         : (
-          <form action="/_api/v3/logout" name="form1" method="post">
+          <p>
             <i className="icon-arrow-right"></i>
-            {/* <a href="javascript:form1.submit()" id="maintanounse-mode-logout">{ t('maintenance_mode.logout') }</a> */}
-            <a href="" id="maintanounse-mode-logout">{ t('maintenance_mode.logout') }</a>
-          </form>
+            <a href="/login">{ t('maintenance_mode.login') }</a>
+          </p>
         )
       }
     </div>