# 移除内置服务相关配置

dependabot/pip/spug_api/paramiko-3.4.0
vapao 2023-11-10 16:08:56 +08:00
parent 3d3697e47b
commit 1c955c0332
3 changed files with 5 additions and 71 deletions

View File

@ -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>

View File

@ -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>
)
})

View File

@ -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/>}