Преглед изворни кода

move logic to successorfailed

zahmis пре 4 година
родитељ
комит
dadbca81eb

+ 1 - 20
src/client/js/components/Admin/SlackIntegration/CustomBotWithProxyIntegrationCard.jsx

@@ -3,27 +3,8 @@ import PropTypes from 'prop-types';
 import IntegrationSuccessOrFailed from './IntegrationSuccessOrFailed';
 import IntegrationSuccessOrFailed from './IntegrationSuccessOrFailed';
 
 
 const CustomBotWithProxyIntegrationCard = (props) => {
 const CustomBotWithProxyIntegrationCard = (props) => {
-  // const { t } = useTranslation();
   const { workspaceNames } = props;
   const { workspaceNames } = props;
 
 
-  let errorCount = 0;
-  workspaceNames.forEach((w) => {
-    if (w == null) {
-      errorCount++;
-    }
-  });
-
-  let conductionStatus;
-  if (errorCount === 0 && workspaceNames.length !== 0) {
-    conductionStatus = 'green';
-  }
-  else if (errorCount === workspaceNames.length) {
-    conductionStatus = 'red';
-  }
-  else {
-    conductionStatus = 'yellow';
-  }
-
   return (
   return (
     <div className="d-flex justify-content-center my-5 bot-integration">
     <div className="d-flex justify-content-center my-5 bot-integration">
 
 
@@ -44,7 +25,7 @@ const CustomBotWithProxyIntegrationCard = (props) => {
       </div>
       </div>
 
 
       <div className="text-center w-25 mt-5">
       <div className="text-center w-25 mt-5">
-        <IntegrationSuccessOrFailed conductionStatus={conductionStatus} />
+        <IntegrationSuccessOrFailed workspaceNames={workspaceNames} />
         <div className="pt-2">
         <div className="pt-2">
           <div className="position-relative mt-5">
           <div className="position-relative mt-5">
             <div className="circle position-absolute bg-primary border-light">
             <div className="circle position-absolute bg-primary border-light">

+ 24 - 5
src/client/js/components/Admin/SlackIntegration/IntegrationSuccessOrFailed.jsx

@@ -111,18 +111,37 @@ SomeWorkSpaceNotIntegration.propTypes = {
 
 
 
 
 const IntegrationSuccessOrFailed = (props) => {
 const IntegrationSuccessOrFailed = (props) => {
-  const { conductionStatus } = props;
+  const { workspaceNames } = props;
+
+  let errorCount = 0;
+  workspaceNames.forEach((w) => {
+    if (w == null) {
+      errorCount++;
+    }
+  });
+
+  let conductionStatus;
+  if (errorCount === 0 && workspaceNames.length !== 0) {
+    conductionStatus = 'green';
+  }
+  else if (errorCount === workspaceNames.length) {
+    conductionStatus = 'red';
+  }
+  else {
+    conductionStatus = 'yellow';
+  }
 
 
   return (
   return (
     <>
     <>
-      {conductionStatus === 'green' && <IntegrationSuccess />}
-      {conductionStatus === 'red' && <IntegrationFailed />}
-      {conductionStatus === 'yellow' && <SomeWorkSpaceNotIntegration />}
+      {conductionStatus === 'green' && <IntegrationSuccess conductionStatus={conductionStatus} />}
+      {conductionStatus === 'red' && <IntegrationFailed conductionStatus={conductionStatus} />}
+      {conductionStatus === 'yellow' && <SomeWorkSpaceNotIntegration conductionStatus={conductionStatus} />}
     </>
     </>
   );
   );
 };
 };
 
 
 IntegrationSuccessOrFailed.propTypes = {
 IntegrationSuccessOrFailed.propTypes = {
-  conductionStatus: PropTypes.string.isRequired,
+  workspaceNames: PropTypes.array.isRequired,
 };
 };
+
 export default IntegrationSuccessOrFailed;
 export default IntegrationSuccessOrFailed;