mirror of
https://github.com/jxxghp/MoviePilot-Frontend.git
synced 2026-05-11 18:10:49 +08:00
feat: Add new card with duplicate name judgment
- 给添加新卡片时,自动生成的名称增加一层重名判断,避免出现重名。 - 目录卡片特化处理,在保存时,增加一层重名检查。
This commit is contained in:
@@ -81,6 +81,11 @@ async function loadDirectories() {
|
||||
async function saveDirectories() {
|
||||
orderDirectoryCards()
|
||||
try {
|
||||
const names = directories.value.map(item => item.name)
|
||||
if (new Set(names).size !== names.length) {
|
||||
$toast.error('存在重复目录名称!无法保存,请修改!')
|
||||
return
|
||||
}
|
||||
const result: { [key: string]: any } = await api.post('system/setting/Directories', directories.value)
|
||||
if (result.success) {
|
||||
$toast.success('目录设置保存成功')
|
||||
@@ -93,8 +98,12 @@ async function saveDirectories() {
|
||||
|
||||
// 添加媒体库目录
|
||||
function addDirectory() {
|
||||
let name = `目录${directories.value.length + 1}`;
|
||||
while (directories.value.some(item => item.name === name)) {
|
||||
name = `目录${parseInt(name.split('目录')[1]) + 1}`;
|
||||
}
|
||||
directories.value.push({
|
||||
name: `目录${directories.value.length + 1}`,
|
||||
name: name,
|
||||
storage: 'local',
|
||||
download_path: '',
|
||||
priority: -1,
|
||||
|
||||
@@ -52,9 +52,17 @@ async function saveCustomRules() {
|
||||
|
||||
// 添加自定义规则
|
||||
function addCustomRule() {
|
||||
let id = `RULE${customRules.value.length + 1}`;
|
||||
while (customRules.value.some(item => item.id === id)) {
|
||||
id = `RULE${parseInt(id.split('RULE')[1]) + 1}`;
|
||||
}
|
||||
let name = `规则${customRules.value.length + 1}`;
|
||||
while (customRules.value.some(item => item.name === name)) {
|
||||
name = `规则${parseInt(name.split('规则')[1]) + 1}`;
|
||||
}
|
||||
customRules.value.push({
|
||||
id: `RULE${customRules.value.length + 1}`,
|
||||
name: `规则${customRules.value.length + 1}`,
|
||||
id: id,
|
||||
name: name,
|
||||
include: '',
|
||||
exclude: '',
|
||||
})
|
||||
@@ -89,8 +97,12 @@ async function saveFilterRuleGroups() {
|
||||
|
||||
// 添加规则组
|
||||
function addFilterRuleGroup() {
|
||||
let name = `规则组${filterRuleGroups.value.length + 1}`;
|
||||
while (filterRuleGroups.value.some(item => item.name === name)) {
|
||||
name = `规则组${parseInt(name.split('规则组')[1]) + 1}`;
|
||||
}
|
||||
filterRuleGroups.value.push({
|
||||
name: `规则组${filterRuleGroups.value.length + 1}`,
|
||||
name: name,
|
||||
rule_string: '',
|
||||
media_type: '',
|
||||
category: '',
|
||||
|
||||
@@ -113,8 +113,12 @@ async function saveSystemSetting() {
|
||||
|
||||
// 添加下载器
|
||||
function addDownloader(downloader: string) {
|
||||
let name = `下载器${downloaders.value.length + 1}`;
|
||||
while (downloaders.value.some(item => item.name === name)) {
|
||||
name = `下载器${parseInt(name.split('下载器')[1]) + 1}`;
|
||||
}
|
||||
downloaders.value.push({
|
||||
name: `下载器${downloaders.value.length + 1}`,
|
||||
name: name,
|
||||
type: downloader,
|
||||
default: false,
|
||||
enabled: false,
|
||||
@@ -136,8 +140,12 @@ function onDownloaderChange(downloader: DownloaderConf) {
|
||||
|
||||
// 添加媒体服务器
|
||||
function addMediaServer(mediaserver: string) {
|
||||
let name = `服务器${mediaServers.value.length + 1}`;
|
||||
while (mediaServers.value.some(item => item.name === name)) {
|
||||
name = `服务器${parseInt(name.split('服务器')[1]) + 1}`;
|
||||
}
|
||||
mediaServers.value.push({
|
||||
name: `服务器${mediaServers.value.length + 1}`,
|
||||
name: name,
|
||||
type: mediaserver,
|
||||
enabled: false,
|
||||
config: {},
|
||||
|
||||
Reference in New Issue
Block a user