فهرست منبع

Merge branch 'fix/gw-4308-not-render-PAM-in-shared-page' into imprv/gw-4313-reactify-seen-user-list

yusuketk 5 سال پیش
والد
کامیت
85010be90e
2فایلهای تغییر یافته به همراه11 افزوده شده و 5 حذف شده
  1. 1 1
      src/client/js/app.jsx
  2. 10 4
      src/client/js/components/PageAccessories.jsx

+ 1 - 1
src/client/js/app.jsx

@@ -107,7 +107,7 @@ if (pageContainer.state.pageId != null) {
     'page-comments-list': <PageComments />,
     'page-comment-write': <CommentEditorLazyRenderer />,
     'page-management': <PageManagement />,
-    'page-accessories': appContainer.isSharedUser ? null : <PageAccessories isGuestUserMode={appContainer.currentUser == null} />,
+    'page-accessories': <PageAccessories />,
     'revision-toc': <TableOfContents />,
     'liker-list': <LikerList />,
 

+ 10 - 4
src/client/js/components/PageAccessories.jsx

@@ -5,10 +5,17 @@ import PageAccessoriesModalControl from './PageAccessoriesModalControl';
 import PageAccessoriesModal from './PageAccessoriesModal';
 
 import { withUnstatedContainers } from './UnstatedUtils';
+import AppContainer from '../services/AppContainer';
 import PageAccessoriesContainer from '../services/PageAccessoriesContainer';
 
 const PageAccessories = (props) => {
-  const { pageAccessoriesContainer, isGuestUserMode } = props;
+  const { appContainer, pageAccessoriesContainer } = props;
+  const isGuestUserMode = appContainer.currentUser == null;
+
+  // not render only when this page is shared and user is not login.
+  if (appContainer.isSharedUser && isGuestUserMode) {
+    return null;
+  }
 
   return (
     <>
@@ -24,12 +31,11 @@ const PageAccessories = (props) => {
 /**
  * Wrapper component for using unstated
  */
-const PageAccessoriesWrapper = withUnstatedContainers(PageAccessories, [PageAccessoriesContainer]);
+const PageAccessoriesWrapper = withUnstatedContainers(PageAccessories, [AppContainer, PageAccessoriesContainer]);
 
 PageAccessories.propTypes = {
+  appContainer: PropTypes.instanceOf(AppContainer).isRequired,
   pageAccessoriesContainer: PropTypes.instanceOf(PageAccessoriesContainer).isRequired,
-
-  isGuestUserMode: PropTypes.bool.isRequired,
 };
 
 export default PageAccessoriesWrapper;