1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-02 15:38:15 +00:00

[dir view] fix for 'move via drag & drop'

This commit is contained in:
llj
2017-02-20 17:40:36 +08:00
parent 6eee32e805
commit 8f54c031e4

View File

@@ -200,28 +200,31 @@ define([
ev.preventDefault(); ev.preventDefault();
var cid = ev.dataTransfer.getData('text/cid'); var cid = ev.dataTransfer.getData('text/cid');
var is_dir = ev.dataTransfer.getData('text/is_dir'); var is_dir = ev.dataTransfer.getData('text/is_dir'); // the value is string: 'true' or 'undefined'
var obj_name = ev.dataTransfer.getData('text/plain'); var obj_name = ev.dataTransfer.getData('text/plain');
if (is_dir && obj_name == this.model.get('obj_name')) { if (is_dir == 'true' && obj_name == this.model.get('obj_name')) {
// can't move a directory to itself // can't move a directory to itself
return false; return false;
} }
var dir = this.dir; var dir = this.dir;
var repo_id = dir.repo_id;
var path = dir.path; var path = dir.path;
var dirent_path = Common.pathJoin([path, this.model.get('obj_name')]); var dirent_path = Common.pathJoin([path, this.model.get('obj_name')]);
$.ajax({ $.ajax({
url: Common.getUrl({ url: Common.getUrl({'name': 'copy_move_task'}),
'name': is_dir ? 'mv_dir' : 'mv_file', type: 'post',
'repo_id': dir.repo_id cache: false,
}) + '?path=' + encodeURIComponent(path)
+ '&obj_name=' + encodeURIComponent(obj_name),
type: 'POST',
dataType: 'json', dataType: 'json',
data: { data: {
'dst_repo': dir.repo_id, 'src_repo_id': repo_id,
'dst_path': dirent_path 'src_parent_dir': path,
'src_dirent_name': obj_name,
'dst_repo_id': repo_id,
'dst_parent_dir': dirent_path,
'operation': 'move',
'dirent_type': is_dir == 'true' ? 'dir' : 'file'
}, },
beforeSend: Common.prepareCSRFToken, beforeSend: Common.prepareCSRFToken,
success: function() { success: function() {