mirror of https://github.com/openspug/spug
# 移除内置服务相关配置
parent
3d3697e47b
commit
1c955c0332
|
@ -5,7 +5,7 @@
|
||||||
*/
|
*/
|
||||||
import React, { useState } from 'react';
|
import React, { useState } from 'react';
|
||||||
import { observer } from 'mobx-react';
|
import { observer } from 'mobx-react';
|
||||||
import { Button, Form, Input, Radio, Space, message } from 'antd';
|
import { Button, Form, Input, Space, message } from 'antd';
|
||||||
import styles from './index.module.css';
|
import styles from './index.module.css';
|
||||||
import { http } from 'libs';
|
import { http } from 'libs';
|
||||||
import store from './store';
|
import store from './store';
|
||||||
|
@ -13,7 +13,6 @@ import store from './store';
|
||||||
export default observer(function () {
|
export default observer(function () {
|
||||||
const [form] = Form.useForm();
|
const [form] = Form.useForm();
|
||||||
const setting = store.settings.mail_service || {};
|
const setting = store.settings.mail_service || {};
|
||||||
const [mode, setMode] = useState(setting.server === undefined ? '1' : '2');
|
|
||||||
const [loading, setLoading] = useState(false);
|
const [loading, setLoading] = useState(false);
|
||||||
|
|
||||||
function handleEmailTest() {
|
function handleEmailTest() {
|
||||||
|
@ -37,9 +36,7 @@ export default observer(function () {
|
||||||
|
|
||||||
function handleSubmit() {
|
function handleSubmit() {
|
||||||
let formData = form.getFieldsValue();
|
let formData = form.getFieldsValue();
|
||||||
if (mode === '1') {
|
if (!formData.server || !formData.port || !formData.username || !formData.password) {
|
||||||
formData = {}
|
|
||||||
} else if (!formData.server || !formData.port || !formData.username || !formData.password) {
|
|
||||||
return message.error('请完成邮件服务配置');
|
return message.error('请完成邮件服务配置');
|
||||||
}
|
}
|
||||||
_doSubmit([{key: 'mail_service', value: formData}])
|
_doSubmit([{key: 'mail_service', value: formData}])
|
||||||
|
@ -50,15 +47,7 @@ export default observer(function () {
|
||||||
<div className={styles.title}>报警服务设置</div>
|
<div className={styles.title}>报警服务设置</div>
|
||||||
<div style={{maxWidth: 340}}>
|
<div style={{maxWidth: 340}}>
|
||||||
<Form.Item label="邮件服务" labelCol={{span: 24}} style={{marginTop: 12}} extra="用于通过邮件方式发送报警信息">
|
<Form.Item label="邮件服务" labelCol={{span: 24}} style={{marginTop: 12}} extra="用于通过邮件方式发送报警信息">
|
||||||
<Radio.Group
|
<div style={{marginTop: 12}}>
|
||||||
value={mode}
|
|
||||||
style={{marginBottom: 8}}
|
|
||||||
buttonStyle="solid"
|
|
||||||
onChange={e => setMode(e.target.value)}>
|
|
||||||
<Radio.Button value="1">内置</Radio.Button>
|
|
||||||
<Radio.Button value="2">自定义</Radio.Button>
|
|
||||||
</Radio.Group>
|
|
||||||
<div style={{marginTop: 12, display: mode === '1' ? 'none' : 'block'}}>
|
|
||||||
<Form form={form} initialValues={setting} labelCol={{span: 7}} wrapperCol={{span: 17}}>
|
<Form form={form} initialValues={setting} labelCol={{span: 7}} wrapperCol={{span: 17}}>
|
||||||
<Form.Item required name="server" label="邮件服务器">
|
<Form.Item required name="server" label="邮件服务器">
|
||||||
<Input placeholder="例如:smtp.exmail.qq.com"/>
|
<Input placeholder="例如:smtp.exmail.qq.com"/>
|
||||||
|
@ -79,7 +68,7 @@ export default observer(function () {
|
||||||
</div>
|
</div>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
<Space style={{marginTop: 24}}>
|
<Space style={{marginTop: 24}}>
|
||||||
{mode !== '1' && <Button type="danger" loading={loading} onClick={handleEmailTest}>测试邮件服务</Button>}
|
<Button type="danger" loading={loading} onClick={handleEmailTest}>测试邮件服务</Button>
|
||||||
<Button type="primary" loading={store.loading} onClick={handleSubmit}>保存设置</Button>
|
<Button type="primary" loading={store.loading} onClick={handleSubmit}>保存设置</Button>
|
||||||
</Space>
|
</Space>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,52 +0,0 @@
|
||||||
/**
|
|
||||||
* Copyright (c) OpenSpug Organization. https://github.com/openspug/spug
|
|
||||||
* Copyright (c) <spug.dev@gmail.com>
|
|
||||||
* Released under the AGPL-3.0 License.
|
|
||||||
*/
|
|
||||||
import React from 'react';
|
|
||||||
import { observer } from 'mobx-react';
|
|
||||||
import { Form, Popover, Input, Button, message } from 'antd';
|
|
||||||
import styles from './index.module.css';
|
|
||||||
import { http } from 'libs';
|
|
||||||
import store from './store';
|
|
||||||
|
|
||||||
export default observer(function () {
|
|
||||||
function handleSubmit() {
|
|
||||||
const spug_key = store.settings.spug_key;
|
|
||||||
if (!spug_key) return message.error('请输入调用凭据');
|
|
||||||
store.loading = true;
|
|
||||||
http.post('/api/setting/', {data: [{key: 'spug_key', value: spug_key}]})
|
|
||||||
.then(() => {
|
|
||||||
message.success('保存成功');
|
|
||||||
store.fetchSettings()
|
|
||||||
})
|
|
||||||
.finally(() => store.loading = false)
|
|
||||||
}
|
|
||||||
|
|
||||||
const spugWx = <img src="https://cdn.spug.cc/img/spug-weixin.jpeg" alt='spug'/>;
|
|
||||||
return (
|
|
||||||
<React.Fragment>
|
|
||||||
<div className={styles.title}>基本设置</div>
|
|
||||||
<div style={{maxWidth: 340}}>
|
|
||||||
<Form.Item
|
|
||||||
label="调用凭据"
|
|
||||||
labelCol={{span: 24}}
|
|
||||||
extra={<span>如需要使用Spug的邮件、微信和MFA等内置服务,请关注公众号
|
|
||||||
<span style={{color: '#008dff', cursor: 'pointer'}}>
|
|
||||||
<Popover content={spugWx}>
|
|
||||||
<span>Spug</span>
|
|
||||||
</Popover>
|
|
||||||
</span>
|
|
||||||
在【我的】页面获取调用凭据,否则请留空。</span>}>
|
|
||||||
<Input
|
|
||||||
value={store.settings.spug_key}
|
|
||||||
onChange={e => store.update('spug_key', e.target.value)}
|
|
||||||
placeholder="请输入Spug微信公众号获取到的Token"/>
|
|
||||||
</Form.Item>
|
|
||||||
<Form.Item style={{marginTop: 24}}>
|
|
||||||
<Button type="primary" loading={store.loading} onClick={handleSubmit}>保存设置</Button>
|
|
||||||
</Form.Item>
|
|
||||||
</div>
|
|
||||||
</React.Fragment>
|
|
||||||
)
|
|
||||||
})
|
|
|
@ -6,7 +6,6 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Menu } from 'antd';
|
import { Menu } from 'antd';
|
||||||
import { AuthDiv, Breadcrumb } from 'components';
|
import { AuthDiv, Breadcrumb } from 'components';
|
||||||
import BasicSetting from './BasicSetting';
|
|
||||||
import AlarmSetting from './AlarmSetting';
|
import AlarmSetting from './AlarmSetting';
|
||||||
import LDAPSetting from './LDAPSetting';
|
import LDAPSetting from './LDAPSetting';
|
||||||
import OpenService from './OpenService';
|
import OpenService from './OpenService';
|
||||||
|
@ -22,7 +21,7 @@ class Index extends React.Component {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
super(props);
|
super(props);
|
||||||
this.state = {
|
this.state = {
|
||||||
selectedKeys: ['basic']
|
selectedKeys: ['security']
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,7 +45,6 @@ class Index extends React.Component {
|
||||||
selectedKeys={selectedKeys}
|
selectedKeys={selectedKeys}
|
||||||
style={{border: 'none'}}
|
style={{border: 'none'}}
|
||||||
onSelect={({selectedKeys}) => this.setState({selectedKeys})}>
|
onSelect={({selectedKeys}) => this.setState({selectedKeys})}>
|
||||||
<Menu.Item key="basic">基本设置</Menu.Item>
|
|
||||||
<Menu.Item key="security">安全设置</Menu.Item>
|
<Menu.Item key="security">安全设置</Menu.Item>
|
||||||
<Menu.Item key="ldap">LDAP设置</Menu.Item>
|
<Menu.Item key="ldap">LDAP设置</Menu.Item>
|
||||||
<Menu.Item key="key">密钥设置</Menu.Item>
|
<Menu.Item key="key">密钥设置</Menu.Item>
|
||||||
|
@ -57,7 +55,6 @@ class Index extends React.Component {
|
||||||
</Menu>
|
</Menu>
|
||||||
</div>
|
</div>
|
||||||
<div className={styles.right}>
|
<div className={styles.right}>
|
||||||
{selectedKeys[0] === 'basic' && <BasicSetting/>}
|
|
||||||
{selectedKeys[0] === 'security' && <SecuritySetting/>}
|
{selectedKeys[0] === 'security' && <SecuritySetting/>}
|
||||||
{selectedKeys[0] === 'ldap' && <LDAPSetting/>}
|
{selectedKeys[0] === 'ldap' && <LDAPSetting/>}
|
||||||
{selectedKeys[0] === 'alarm' && <AlarmSetting/>}
|
{selectedKeys[0] === 'alarm' && <AlarmSetting/>}
|
||||||
|
|
Loading…
Reference in New Issue