diff --git a/node_modules/api.js b/node_modules/api.js
index 49842dea..5a46588d 100644
--- a/node_modules/api.js
+++ b/node_modules/api.js
@@ -350,35 +350,36 @@ var Api = {
// note.NotebookId是本的, 要得到远程的
Notebook.getServerNotebookIdByNotebookId(note.NotebookId, function(serverNotebookId) {
var data = {
- title: note.Title,
- notebookId: serverNotebookId,
- content: note.Content,
- isMarkdown: note.isMarkdown,
- tags: note.Tags,
- isBlog: note.IsBlog,
+ Title: note.Title,
+ NotebookId: serverNotebookId,
+ Content: note.Content,
+ IsMarkdown: note.isMarkdown,
+ Tags: note.Tags,
+ IsBlog: note.IsBlog,
}
log('add note');
- log(data);
+ // log(data);
// files处理
var files = note.Files;
var needTransferFiles = [];
var needPostFilesAttr = [];
async.eachSeries(files, function(file, cb) {
- var file = files[i];
+ // var file = files[i];
var needFile = {
- fileId: file.ServerFileId,
- localFileId: file.FileId,
- hasBody: false
+ FileId: file.ServerFileId,
+ LocalFileId: file.FileId,
+ HasBody: false
}
+ // console.log(file);
// 要传数据的
if(file.IsDirty) {
- ifs.exists(file.Path, function(isExists) {
- needTransferFiles[file.ServerFileId] = {
+ fs.exists(file.Path, function(isExists) {
+ needTransferFiles[file.FileId] = {
file: file.Path,
content_type: 'image/' + file.Type
}
- needFile.hasBody = true;
+ needFile.HasBody = true;
needPostFilesAttr.push(needFile);
return cb();
});
@@ -387,7 +388,7 @@ var Api = {
return cb();
}
}, function() {
- data.files = needPostFilesAttr;
+ data.Files = needPostFilesAttr;
var needMultiple = false;
for(var i in needTransferFiles) {
needMultiple = true;
@@ -405,6 +406,7 @@ var Api = {
log('add note ret');
log(ret);
if(Common.isOk(ret)) {
+ // 将serverId保存
callback(ret);
} else {
callback(false);
diff --git a/node_modules/evt.js b/node_modules/evt.js
index e33ebe41..06a46f65 100644
--- a/node_modules/evt.js
+++ b/node_modules/evt.js
@@ -3,6 +3,7 @@ var User = require('user');
function log(o) {console.log(o)}
var Evt = {
+ leanoteUrl: 'http://localhost:9000',
port: 8008,
localUrl: 'http://127.0.0.1:8008',
getImageLocalUrl: function(fileId) {
diff --git a/node_modules/file.js b/node_modules/file.js
index fa94d016..5bb564e1 100644
--- a/node_modules/file.js
+++ b/node_modules/file.js
@@ -158,6 +158,21 @@ var File = {
}
callback(images);
});
+ },
+
+ // 笔记添加/修改后会有LocalFileId <=> FileId映射
+ updateFileForce(files) {
+ if(!files) {
+ // callback && callback(false);
+ return;
+ }
+ for(var i in files) {
+ var file = files[i];
+ if(!file.FileId || !file.LocalFileId) {
+ continue;
+ }
+ Images.update({FileId: file.LocalFileId}, {$set: {ServerFileId: file.FileId, IsDirty: false}});
+ }
}
};
diff --git a/node_modules/note.js b/node_modules/note.js
index a60038f7..43d566f7 100644
--- a/node_modules/note.js
+++ b/node_modules/note.js
@@ -169,19 +169,48 @@ var Note = {
});
},
- // 远程修改本地内容
- updateNoteContentForce: function(noteId, content, callback) {
- //
- // 改成
");
- log(content);
Notes.update({NoteId: noteId}, { $set: {Content: content, InitSync: false, IsContentDirty: false} }, {}, function (err, numReplaced) {
if(err) {
log(err);
@@ -351,12 +380,21 @@ var Note = {
});
},
+ // addNote, updateNote后的操作
// 添加修改ServerNoteId; 更新修改usn
- updateNoteForceForSendChange: function(note, callback) {
+ updateNoteForceForSendChange: function(note, isAdd, callback) {
var me = this;
note.IsDirty = false;
note.InitSync = false;
note.LocalIsNew = false;
+
+ if(isAdd) {
+ delete note['content'];
+ }
+
+ // 修改LocalFileId <=> FileId的映射
+ File.updateFileForce(note.Files);
+
Notes.update({NoteId: note.NoteId}, {$set: note}, function(err, n) {
if(err || !n) {
log('updateNoteForceForSendChange err');
@@ -524,9 +562,10 @@ var Note = {
// 每一个笔记得到图片, 附件信息和数据
async.eachSeries(notes, function(note, cb) {
me.getNoteFiles(note.NoteId, note.Content, function(files) {
+ note.Content = me.fixNoteContentForSend(note.Content);
note.Files = files || [];
cb();
- })
+ });
}, function() {
callback(notes);
})
diff --git a/node_modules/sync.js b/node_modules/sync.js
index 6a97d22a..183a2049 100644
--- a/node_modules/sync.js
+++ b/node_modules/sync.js
@@ -539,7 +539,7 @@ var Sync = {
newNote.NoteId = note.NoteId;
me._syncInfo.note.changeAdds.push(newNote);
- Note.updateNoteForceForSendChange(newNote);
+ Note.updateNoteForceForSendChange(newNote, true);
me.checkNeedIncSyncAgain(newNote.Usn);
@@ -570,7 +570,8 @@ var Sync = {
return cb();
}
// 更新成功
- Note.updateNoteForceForSendChange({NoteId: note.NoteId, Usn: ret.Usn});
+ // TODO 返回是真note
+ Note.updateNoteForceForSendChange({NoteId: note.NoteId, Usn: ret.Usn}, false);
me.checkNeedIncSyncAgain(ret.Usn);
diff --git a/test.js b/test.js
index 6f98a529..76706c42 100755
--- a/test.js
+++ b/test.js
@@ -16,12 +16,13 @@ Api.addNotebook({
Title: "哈哈"
}, function() {});
*/
-Api.uploadImage();
-/*
+// Api.uploadImage();
User.userId = '54bdc65599c37b0da9000002';
// console.log(User.getCurActiveUserId());
Note.getDirtyNotes(function(ret) {
- console.log(ret);
+ Api.addNote(ret[0], function(ret2){
+ console.log(ret2);
+ })
});
/*
Note.getNoteByServerNoteId("54c6313799c37bdeec000008", function(ret){