Просмотр исходного кода

Merge pull request #2438 from weseek/feat/conect_AdminGeneralSecurityContainer

fix
Ryuichi Paul E. Egoshi 5 лет назад
Родитель
Сommit
8e902c2b97
1 измененных файлов с 50 добавлено и 1 удалено
  1. 50 1
      src/client/js/components/Admin/Security/ShareLinkSetting.jsx

+ 50 - 1
src/client/js/components/Admin/Security/ShareLinkSetting.jsx

@@ -6,8 +6,52 @@ import { withUnstatedContainers } from '../../UnstatedUtils';
 
 import AdminGeneralSecurityContainer from '../../../services/AdminGeneralSecurityContainer';
 
+import { toastSuccess, toastError } from '../../../util/apiNotification';
+
 class ShareLinkSetting extends React.Component {
 
+  constructor() {
+    super();
+    this.state = {
+      // shareLinks: [],
+      // TODO:GW-2958で実装
+    };
+    this.deleteAllLinksButtonHandler = this.deleteAllLinksButtonHandler.bind(this);
+    this.deleteLinkById = this.deleteLinkById.bind(this);
+  }
+
+
+  async deleteLinkById() {
+    const { t, adminGeneralSecurityContainer } = this.props;
+
+    try {
+      await adminGeneralSecurityContainer.deleteLinkById();
+      toastSuccess(t('security_setting.updated_general_security_setting'));
+      // TODO:GW-2827,GW-2826で実装する
+    }
+    catch (err) {
+      toastError(err);
+    }
+
+    // this.retrieveShareLinks();
+    // TODO:後で作る
+  }
+
+  async deleteAllLinksButtonHandler() {
+    const { t, adminGeneralSecurityContainer } = this.props;
+    try {
+      await adminGeneralSecurityContainer.deleteAllLinksButtonHandler();
+      toastSuccess(t('security_setting.updated_general_security_setting'));
+      // TODO:GW-2827,GW-2960で実装する
+    }
+    catch (err) {
+      toastError(err);
+    }
+
+    // this.retrieveShareLinks();
+    // TODO:後で作る
+  }
+
   render() {
     return (
       <>
@@ -28,7 +72,11 @@ class ShareLinkSetting extends React.Component {
               </tr>
             </thead>
             <tbody>
-              {/* ShareLinkListを参考に */}
+              {/* <ShareLinkList
+                shareLinks={this.state.shareLinks}
+                onClickDeleteButton={this.deleteLinkById}
+              /> */}
+              {/* TODO:GW-2827で実装 */}
             </tbody>
           </table>
         </div>
@@ -42,6 +90,7 @@ class ShareLinkSetting extends React.Component {
 const ShareLinkSettingWrapper = withUnstatedContainers(ShareLinkSetting, [AdminGeneralSecurityContainer]);
 
 ShareLinkSetting.propTypes = {
+  t: PropTypes.func.isRequired, //  i18next
   adminGeneralSecurityContainer: PropTypes.instanceOf(AdminGeneralSecurityContainer).isRequired,
 };