SmtpSetting.tsx 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. import React from 'react';
  2. import { useTranslation } from 'next-i18next';
  3. import AdminAppContainer from '~/client/services/AdminAppContainer';
  4. import { withUnstatedContainers } from '../../UnstatedUtils';
  5. type Props = {
  6. adminAppContainer: AdminAppContainer,
  7. }
  8. const SmtpSetting = (props: Props) => {
  9. const { t } = useTranslation();
  10. const { adminAppContainer } = props;
  11. return (
  12. <React.Fragment>
  13. <div id="mail-smtp" className="tab-pane active mt-5">
  14. <div className="row form-group">
  15. <label className="text-left text-md-right col-md-3 col-form-label">
  16. {t('admin:app_setting.host')}
  17. </label>
  18. <div className="col-md-6">
  19. <input
  20. className="form-control"
  21. type="text"
  22. defaultValue={adminAppContainer.state.smtpHost || ''}
  23. onChange={(e) => { adminAppContainer.changeSmtpHost(e.target.value) }}
  24. />
  25. </div>
  26. </div>
  27. <div className="row form-group">
  28. <label className="text-left text-md-right col-md-3 col-form-label">
  29. {t('admin:app_setting.port')}
  30. </label>
  31. <div className="col-md-6">
  32. <input
  33. className="form-control"
  34. defaultValue={adminAppContainer.state.smtpPort || ''}
  35. onChange={(e) => { adminAppContainer.changeSmtpPort(e.target.value) }}
  36. />
  37. </div>
  38. </div>
  39. <div className="row form-group">
  40. <label className="text-left text-md-right col-md-3 col-form-label">
  41. {t('admin:app_setting.user')}
  42. </label>
  43. <div className="col-md-6">
  44. <input
  45. className="form-control"
  46. type="text"
  47. defaultValue={adminAppContainer.state.smtpUser || ''}
  48. onChange={(e) => { adminAppContainer.changeSmtpUser(e.target.value) }}
  49. />
  50. </div>
  51. </div>
  52. <div className="row form-group">
  53. <label className="text-left text-md-right col-md-3 col-form-label">
  54. {t('Password')}
  55. </label>
  56. <div className="col-md-6">
  57. <input
  58. className="form-control"
  59. type="password"
  60. defaultValue={adminAppContainer.state.smtpPassword || ''}
  61. onChange={(e) => { adminAppContainer.changeSmtpPassword(e.target.value) }}
  62. />
  63. </div>
  64. </div>
  65. </div>
  66. </React.Fragment>
  67. );
  68. };
  69. /**
  70. * Wrapper component for using unstated
  71. */
  72. const SmtpSettingWrapper = withUnstatedContainers(SmtpSetting, [AdminAppContainer]);
  73. export default SmtpSettingWrapper;