1
0
mirror of https://github.com/1Panel-dev/1Panel.git synced 2025-01-31 22:18:07 +08:00

fix: 删除目录校验是否为禁止删除的目录 (#7031)

This commit is contained in:
2024-11-13 15:10:00 +08:00 committed by GitHub
parent 0b87025c52
commit ec372dbb98
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 7 deletions

View File

@ -211,10 +211,12 @@ func (f *FileService) Create(op request.FileCreate) error {
} }
func (f *FileService) Delete(op request.FileDelete) error { func (f *FileService) Delete(op request.FileDelete) error {
if op.IsDir {
excludeDir := global.CONF.System.DataDir excludeDir := global.CONF.System.DataDir
if strings.Contains(op.Path, ".1panel_clash") || op.Path == excludeDir { if strings.Contains(op.Path, ".1panel_clash") || op.Path == excludeDir {
return buserr.New(constant.ErrPathNotDelete) return buserr.New(constant.ErrPathNotDelete)
} }
}
fo := files.NewFileOp() fo := files.NewFileOp()
recycleBinStatus, _ := settingRepo.Get(settingRepo.WithByKey("FileRecycleBin")) recycleBinStatus, _ := settingRepo.Get(settingRepo.WithByKey("FileRecycleBin"))
if recycleBinStatus.Value == "disable" { if recycleBinStatus.Value == "disable" {

View File

@ -89,11 +89,11 @@ const getStatus = async () => {
const onConfirm = async () => { const onConfirm = async () => {
const pros = []; const pros = [];
for (const s of files.value) { for (const s of files.value) {
if (s['isDir']) {
if (s['path'].indexOf('.1panel_clash') > -1) { if (s['path'].indexOf('.1panel_clash') > -1) {
MsgWarning(i18n.global.t('file.clashDeleteAlert')); MsgWarning(i18n.global.t('file.clashDeleteAlert'));
return; return;
} }
if (s['isDir']) {
const pathRes = await loadBaseDir(); const pathRes = await loadBaseDir();
if (s['path'] === pathRes.data) { if (s['path'] === pathRes.data) {
MsgWarning(i18n.global.t('file.panelInstallDir')); MsgWarning(i18n.global.t('file.panelInstallDir'));