mirror of
https://github.com/leanote/desktop-app.git
synced 2025-10-17 08:38:18 +00:00
删除附件优化, 删除本地笔记后删除附件
删除图片待解决, 因为笔记复制后可能一个图片存在于两篇笔记中
This commit is contained in:
91
node_modules/note.js
generated
vendored
91
node_modules/note.js
generated
vendored
@@ -369,32 +369,70 @@ var Note = {
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
// sync时调用
|
||||
// 是新的, 又是deleted的, 则删除之
|
||||
deleteLocalNote: function(noteId, callback) {
|
||||
db.notes.remove({NoteId: noteId}, function() {
|
||||
callback && callback();
|
||||
var me = this;
|
||||
this.getNote(noteId, function(note) {
|
||||
if (!note) {
|
||||
callback && callback();
|
||||
return;
|
||||
}
|
||||
db.notes.remove({NoteId: noteId}, function() {
|
||||
me.deleteNoteAllOthers(note);
|
||||
callback && callback();
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
// 删除笔记的所有
|
||||
// 1) notes
|
||||
// 2) noteHistory
|
||||
// 3) imgages, attachs
|
||||
deleteNoteAllOthers: function (note) {
|
||||
if (!note) {
|
||||
return;
|
||||
}
|
||||
var me = this;
|
||||
// 删除图片
|
||||
me.deleteImages(note);
|
||||
// 删除附件
|
||||
me.deleteAttachs(note.Attachs);
|
||||
// 删除历史记录
|
||||
me.deleteNoteHistory(note.NoteId);
|
||||
},
|
||||
|
||||
// 彻底删除笔记, 如果有tags, 则需要更新tags's count
|
||||
deleteTrash: function(note, callback) {
|
||||
var me = this;
|
||||
if(note) {
|
||||
note.LocalIsDelete = true;
|
||||
note.IsDirty = true;
|
||||
|
||||
// TODO 删除附件
|
||||
db.notes.update({_id: note._id}, {$set: {IsDirty: true, LocalIsDelete: true}}, function(err, n) {
|
||||
if(n) {
|
||||
// 删除附件
|
||||
me.deleteAttachs(note.Attachs);
|
||||
// 删除历史记录
|
||||
me.deleteNoteHistory(note.NoteId);
|
||||
// 如果有tags, 则重新更新tags' count
|
||||
me.updateTagCount(note.Tags);
|
||||
callback(true);
|
||||
}
|
||||
callback(false);
|
||||
});
|
||||
// 如果是本地用户, 则直接删除
|
||||
if(User.isLocal) {
|
||||
db.notes.remove({_id: note._id}, function(err, n) {
|
||||
if(n) {
|
||||
me.deleteNoteAllOthers(note);
|
||||
// 如果有tags, 则重新更新tags' count
|
||||
me.updateTagCount(note.Tags);
|
||||
callback(true);
|
||||
return;
|
||||
}
|
||||
callback(false);
|
||||
});
|
||||
}
|
||||
else {
|
||||
note.LocalIsDelete = true;
|
||||
note.IsDirty = true;
|
||||
db.notes.update({_id: note._id}, {$set: {IsDirty: true, LocalIsDelete: true}}, function(err, n) {
|
||||
if(n) {
|
||||
me.deleteNoteAllOthers(note);
|
||||
me.updateTagCount(note.Tags);
|
||||
callback(true);
|
||||
return;
|
||||
}
|
||||
callback(false);
|
||||
});
|
||||
}
|
||||
} else {
|
||||
callback(false);
|
||||
}
|
||||
@@ -704,10 +742,7 @@ var Note = {
|
||||
if(err) {
|
||||
callback && callback(false);
|
||||
} else {
|
||||
// 删除附件
|
||||
me.deleteAttachs(note.Attachs);
|
||||
// 删除历史记录
|
||||
me.deleteNoteHistory(noteId);
|
||||
me.deleteNoteAllOthers(note);
|
||||
Notebook.reCountNotebookNumberNotes(note.NotebookId);
|
||||
callback && callback(true);
|
||||
}
|
||||
@@ -1511,6 +1546,11 @@ var Note = {
|
||||
});
|
||||
},
|
||||
|
||||
// 删除图片
|
||||
// 删除图片有困难, 如果用户复制了笔记的内容贴到其它笔记中去了
|
||||
deleteImages: function (note) {
|
||||
},
|
||||
|
||||
// 删除附件, 在sync时
|
||||
// 或者, 在删除笔记后
|
||||
deleteAttachs: function(attachs) {
|
||||
@@ -1519,13 +1559,13 @@ var Note = {
|
||||
}
|
||||
var me = this;
|
||||
var fileBasePath = User.getCurUserAttachsPath();
|
||||
for(var i in attachs) {
|
||||
for(var i = 0; i < attachs.length; ++i) {
|
||||
var path = attachs[i].Path;
|
||||
if(path && path.indexOf(fileBasePath) > 0) {
|
||||
if(path && path.indexOf(fileBasePath) >= 0) {
|
||||
try {
|
||||
fs.unlink(path);
|
||||
} catch(e) {
|
||||
console.log(e);
|
||||
console.error(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1718,6 +1758,7 @@ var Note = {
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
exportPdf: function(noteId, callback) {
|
||||
var me = this;
|
||||
me.getServerNoteIdByNoteId(noteId, function(serverNoteId) {
|
||||
|
Reference in New Issue
Block a user