mirror of
https://github.com/Cp0204/quark-auto-save.git
synced 2026-01-13 07:40:45 +08:00
✨ 保存路径和任务名称智能关联填写
This commit is contained in:
parent
fd3d439b3e
commit
2687de5428
@ -176,7 +176,7 @@
|
||||
<label class="col-sm-2 col-form-label">任务名称</label>
|
||||
<div class="col-sm-10">
|
||||
<div class="input-group">
|
||||
<input type="text" name="taskname[]" class="form-control" v-model="task.taskname" placeholder="必填">
|
||||
<input type="text" name="taskname[]" class="form-control" v-model="task.taskname" placeholder="必填" @focus="focusTaskname(index, task)" @input="changeTaskname(task)">
|
||||
<div class="input-group-append" v-if="task.taskname">
|
||||
<div class="input-group-text">
|
||||
<a target="_blank" :href="`https://www.google.com/search?q=%22pan.quark%22+${task.taskname}`"><i class="bi bi-search"></i></a>
|
||||
@ -202,8 +202,10 @@
|
||||
<label class="col-sm-2 col-form-label">保存路径</label>
|
||||
<div class="col-sm-10">
|
||||
<div class="input-group">
|
||||
<input type="text" name="savepath[]" class="form-control" v-model="task.savepath" placeholder="必填">
|
||||
<input type="text" name="savepath[]" class="form-control" v-model="task.savepath" placeholder="必填" @focus="focusTaskname(index, task)">
|
||||
<div class="input-group-append">
|
||||
<button class="btn btn-secondary" type="button" v-if="smart_param.index == index && task.savepath != smart_param.origin_savepath" @click="task.savepath = smart_param.origin_savepath"><i class="
|
||||
bi bi-reply"></i></button>
|
||||
<button class="btn btn-outline-secondary dropdown-toggle" type="button" @click="getSavepathDirs(task.savepath)" data-toggle="dropdown" aria-expanded="false">选择</button>
|
||||
<div class="dropdown-menu" style="max-height: 300px; overflow-y: auto;">
|
||||
<a class="dropdown-item" @click.stop.prevent="selectSavepath(index,getParentDirectory(task.savepath),'..')" href="#">..</a>
|
||||
@ -391,7 +393,7 @@
|
||||
newTask: {
|
||||
taskname: "",
|
||||
shareurl: "",
|
||||
savepath: "",
|
||||
savepath: "/",
|
||||
pattern: "",
|
||||
replace: "",
|
||||
enddate: "",
|
||||
@ -406,7 +408,12 @@
|
||||
savepaths: [],
|
||||
modalLoading: false,
|
||||
shareFiles: [],
|
||||
forceTaskIndex: null
|
||||
forceTaskIndex: null,
|
||||
smart_param: {
|
||||
index: null,
|
||||
savepath: "",
|
||||
origin_savepath: "",
|
||||
},
|
||||
},
|
||||
filters: {
|
||||
ts2date: function (value) {
|
||||
@ -511,11 +518,13 @@
|
||||
addTask() {
|
||||
newTask = { ...this.newTask }
|
||||
newTask.taskname = this.taskNameFilter
|
||||
lastTask = this.formData.tasklist[this.formData.tasklist.length - 1]
|
||||
if (this.formData.tasklist.length > 0 && lastTask.taskname) {
|
||||
newTask.savepath = lastTask.savepath.replace(lastTask.taskname, 'TASKNAME')
|
||||
} else {
|
||||
newTask.savepath = this.taskDirSelected + "/" + newTask.taskname
|
||||
if (this.formData.tasklist.length > 0) {
|
||||
lastTask = this.formData.tasklist[this.formData.tasklist.length - 1]
|
||||
if (this.taskDirSelected) {
|
||||
newTask.savepath = this.taskDirSelected + '/TASKNAME'
|
||||
} else {
|
||||
newTask.savepath = lastTask.savepath.replace(lastTask.taskname, 'TASKNAME')
|
||||
}
|
||||
}
|
||||
this.formData.tasklist.push(newTask);
|
||||
// 滚到最下
|
||||
@ -525,6 +534,22 @@
|
||||
});
|
||||
}, 1);
|
||||
},
|
||||
focusTaskname(index, task) {
|
||||
this.smart_param.index = index
|
||||
this.smart_param.origin_savepath = task.savepath
|
||||
regex = new RegExp(`/${task.taskname}(/|$)`)
|
||||
if (task.savepath.includes('TASKNAME')) {
|
||||
this.smart_param.savepath = task.savepath;
|
||||
} else if (task.savepath.match(regex)) {
|
||||
this.smart_param.savepath = task.savepath.replace(task.taskname, 'TASKNAME');
|
||||
} else {
|
||||
this.smart_param.savepath = undefined;
|
||||
}
|
||||
},
|
||||
changeTaskname(task) {
|
||||
if (this.smart_param.savepath)
|
||||
task.savepath = this.smart_param.savepath.replace('TASKNAME', task.taskname);
|
||||
},
|
||||
removeTask(index) {
|
||||
if (confirm("确认删除任务 [#" + (index + 1) + ": " + this.formData.tasklist[index].taskname + "] 吗?"))
|
||||
this.formData.tasklist.splice(index, 1);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user