diff --git a/app/views/note/note-dev.html b/app/views/note/note-dev.html index 6727830..3317282 100644 --- a/app/views/note/note-dev.html +++ b/app/views/note/note-dev.html @@ -18,13 +18,15 @@ + + @@ -60,7 +62,7 @@ function log(o) {
@@ -68,14 +70,15 @@ function log(o) {
- - + + {{msg . "newNote"}} {{msg . "new"}} | - - Markdown + + + {{msg . "newMarkdown"}} Md - @@ -86,7 +89,7 @@ function log(o) { @@ -95,14 +98,14 @@ function log(o) {
- +
      @@ -541,7 +544,7 @@ function log(o) {
      -
      +
      @@ -549,10 +552,10 @@ function log(o) {
      -
      +
      @@ -581,16 +584,15 @@ function log(o) {
      -
      - +
      ");content=$("
      ").html(content).text();content=content.replace(//g,">");if(content.length<300){return content}return content.substring(0,300)};Note.genAbstract=function(content,len){if(!content){return""}if(len==undefined){len=1e3}if(content.length"&&isCode){n=n-1;isCode=false}else if(temp==";"&&isHTML){isHTML=false}if(!isCode&&!isHTML){n=n+1}result+=temp;if(n>=maxLen){break}}var d=document.createElement("div");d.innerHTML=result;return d.innerHTML};Note.getImgSrc=function(content){if(!content){return""}var imgs=$(content).find("img");for(var i in imgs){var src=imgs.eq(i).attr("src");if(src){return src}}return""};Note.saveInProcess={};Note.savePool={};Note.curChangedSaveIt=function(force,callback){var me=this;if(!Note.curNoteId||Note.isReadOnly){return}var hasChanged=Note.curHasChanged(force);if(hasChanged.hasChanged||hasChanged.IsNew){Note.renderChangedNote(hasChanged);delete hasChanged.hasChanged;showMsg(getMsg("saving"));me.saveInProcess[hasChanged.NoteId]=true;ajaxPost("/note/updateNoteOrContent",hasChanged,function(ret){me.saveInProcess[hasChanged.NoteId]=false;if(hasChanged.IsNew){ret.IsNew=false;Note.setNoteCache(ret,false);Pjax.changeNote(ret)}callback&&callback();showMsg(getMsg("saveSuccess"),1e3)});if(hasChanged["Tags"]!=undefined&&typeof hasChanged["Tags"]=="string"){hasChanged["Tags"]=hasChanged["Tags"].split(",")}Note.setNoteCache(hasChanged,false);Note.setNoteCache({NoteId:hasChanged.NoteId,UpdatedTime:(new Date).format("yyyy-MM-ddThh:mm:ss.S")},false);return hasChanged}return false};Note.updatePoolNote=function(){var me=this;for(var noteId in me.savePool){if(!noteId){continue}delete me.savePool[noteId];var hasChanged=me.savePool[noteId];me.saveInProcess[noteId]=true;ajaxPost("/note/updateNoteOrContent",hasChanged,function(ret){me.saveInProcess[noteId]=false})}};Note.updatePoolNoteInterval=null;Note.startUpdatePoolNoteInterval=function(){return;var me=this;if(me.updatePoolNoteInterval){return}me.updatePoolNoteInterval=setTimeout(function(){log("update pool");me.updatePoolNote()},1e3)};Note.selectTarget=function(target){$(".item").removeClass("item-active");$(target).addClass("item-active")};Note.showContentLoading=function(){$("#noteMaskForLoading").css("z-index",99999)};Note.hideContentLoading=function(){$("#noteMaskForLoading").css("z-index",-1)};Note.directToNote=function(noteId){var $p=$("#noteItemList");var pHeight=$p.height();var pTop=$("[noteId='"+noteId+"']").position().top;var scrollTop=$p.scrollTop();pTop+=scrollTop;if(pTop>=scrollTop&&pTop<=pHeight+scrollTop){}else{var top=pTop;log("定位到特定note, 在可视范围内");if(!LEA.isMobile&&!Mobile.isMobile()){$("#noteItemList").scrollTop(top);$("#noteItemList").slimScroll({scrollTo:top+"px",height:"100%",onlyScrollBar:true})}else{}}};Note.changeNoteForPjax=function(noteId,mustPush,needTargetNotebook){var me=this;var note=me.getNote(noteId);if(!note){return}var isShare=note.Perm!=undefined;if(needTargetNotebook==undefined){needTargetNotebook=true}me.changeNote(noteId,isShare,true,function(note){if(mustPush==undefined){mustPush=true}if(mustPush){Pjax.changeNote(note)}if(needTargetNotebook){Note.directToNote(noteId)}});if(needTargetNotebook){if(isShare){if($("#myShareNotebooks").hasClass("closed")){$("#myShareNotebooks .folderHeader").trigger("click")}}else{if($("#myNotebooks").hasClass("closed")){$("#myNotebooks .folderHeader").trigger("click")}}Notebook.expandNotebookTo(note.NotebookId)}};Note.contentAjax=null;Note.contentAjaxSeq=1;Note.changeNote=function(selectNoteId,isShare,needSaveChanged,callback){var self=this;Note.stopInterval();var target=$(tt('[noteId="?"]',selectNoteId));Note.selectTarget(target);if(needSaveChanged==undefined){needSaveChanged=true}if(needSaveChanged){var changedNote=Note.curChangedSaveIt()}Note.curNoteId="";var cacheNote=Note.cache[selectNoteId];if(!isShare){if(cacheNote.Perm!=undefined){isShare=true}}var hasPerm=!isShare||Share.hasUpdatePerm(selectNoteId);if(hasPerm){Note.hideReadOnly();Note.renderNote(cacheNote)}else{Note.renderNoteReadOnly(cacheNote)}switchEditor(cacheNote.IsMarkdown);Attach.renderNoteAttachNum(selectNoteId,true);Note.contentAjaxSeq++;var seq=Note.contentAjaxSeq;function setContent(ret){Note.contentAjax=null;if(seq!=Note.contentAjaxSeq){return}Note.setNoteCache(ret,false);ret=Note.cache[selectNoteId];Note.renderNoteContent(ret);self.hideContentLoading();callback&&callback(ret)}if(cacheNote.Content){setContent(cacheNote);return}var url="/note/getNoteContent";var param={noteId:selectNoteId};if(isShare){url="/share/getShareNoteContent";param.sharedUserId=cacheNote.UserId}self.showContentLoading();if(Note.contentAjax!=null){Note.contentAjax.abort()}Note.contentAjax=ajaxGet(url,param,setContent)};Note.renderChangedNote=function(changedNote){if(!changedNote){return}var $leftNoteNav=$(tt('[noteId="?"]',changedNote.NoteId));if(changedNote.Title){$leftNoteNav.find(".item-title").html(changedNote.Title)}if(changedNote.Desc){$leftNoteNav.find(".desc").html(changedNote.Desc)}if(changedNote.ImgSrc){$thumb=$leftNoteNav.find(".item-thumb");if($thumb.length>0){$thumb.find("img").attr("src",changedNote.ImgSrc)}else{$leftNoteNav.append(tt('
      ',changedNote.ImgSrc));$leftNoteNav.addClass("item-image")}$leftNoteNav.find(".item-desc").removeAttr("style")}else if(changedNote.ImgSrc==""){$leftNoteNav.find(".item-thumb").remove();$leftNoteNav.removeClass("item-image")}};Note.clearNoteInfo=function(){Note.curNoteId="";Tag.clearTags();$("#noteTitle").val("");setEditorContent("");$("#noteRead").hide()};Note.clearNoteList=function(){Note.noteItemListO.html("")};Note.clearAll=function(){Note.curNoteId="";Note.clearNoteInfo();Note.clearNoteList()};Note.renderNote=function(note){if(!note){return}$("#noteTitle").val(trimTitle(note.Title));Tag.renderTags(note.Tags);note.isDirty=false};Note.renderNoteContent=function(content){setEditorContent(content.Content,content.IsMarkdown,content.Preview,function(){Note.curNoteId=content.NoteId;Note.toggleReadOnly()});Note.curNoteId=content.NoteId};Note.showEditorMask=function(){$("#editorMask").css("z-index",10).show();if(Notebook.curNotebookIsTrashOrAll()){$("#editorMaskBtns").hide();$("#editorMaskBtnsEmpty").show()}else{$("#editorMaskBtns").show();$("#editorMaskBtnsEmpty").hide()}};Note.hideEditorMask=function(){$("#editorMask").css("z-index",-10).hide()};Note.renderNotesC=0;Note.renderNotes=function(notes,forNewNote,isShared){var renderNotesC=++Note.renderNotesC;if(!LEA.isMobile&&!Mobile.isMobile()){$("#noteItemList").slimScroll({scrollTo:"0px",height:"100%",onlyScrollBar:true})}if(!notes||typeof notes!="object"||notes.length<=0){if(!forNewNote){Note.showEditorMask()}return}Note.hideEditorMask();if(forNewNote==undefined){forNewNote=false}if(!forNewNote){Note.noteItemListO.html("")}var len=notes.length;var c=Math.ceil(len/20);Note._renderNotes(notes,forNewNote,isShared,1);for(var i=0;i'+getMsg("close")+"");options={};options.show=true;$("#leanoteDialog").modal(options);ajaxGet("/noteContentHistory/listHistories",{noteId:Note.curNoteId},function(re){if(!isArray(re)){$content.html(getMsg("noHistories"));return}var str="

      "+getMsg("historiesNum")+'

      ';note=Note.cache[Note.curNoteId];var s="div";if(note.IsMarkdown){s="pre"}for(i in re){var content=re[i];content.Ab=Note.genAbstract(content.Content,200);str+='"}str+="
      #'+(i+1)+"<"+s+' class="each-content">'+content.Ab+"
      '+getMsg("datetime")+': '+goNowToDatetime(content.UpdatedTime)+'
      ";$content.html(str);$("#historyList .all").click(function(){$p=$(this).parent().parent();var seq=$p.attr("seq");var $c=$p.find(".each-content");var info=re[seq];if(!info.unfold){$(this).text(getMsg("fold"));$c.html(info.Content);info.unfold=true}else{$(this).text(getMsg("unfold"));$c.html(info.Ab);info.unfold=false}});$("#historyList .back").click(function(){$p=$(this).parent().parent();var seq=$p.attr("seq");if(confirm(getMsg("confirmBackup"))){Note.curChangedSaveIt();note=Note.cache[Note.curNoteId];setEditorContent(re[seq].Content,note.IsMarkdown);hideDialog()}})})};Note.showReadOnly=function(){Note.isReadOnly=true;$("#note").addClass("read-only")};Note.hideReadOnly=function(){Note.isReadOnly=false;$("#note").removeClass("read-only");$("#noteRead").hide()};Note.renderNoteReadOnly=function(note){Note.showReadOnly();$("#noteReadTitle").html(note.Title||getMsg("unTitled"));Tag.renderReadOnlyTags(note.Tags);$("#noteReadCreatedTime").html(goNowToDatetime(note.CreatedTime));$("#noteReadUpdatedTime").html(goNowToDatetime(note.UpdatedTime))};Note.renderNoteContentReadOnly=function(note){};Note.lastSearch=null;Note.lastKey=null;Note.lastSearchTime=new Date;Note.isOver2Seconds=false;Note.isSameSearch=function(key){var now=new Date;var duration=now.getTime()-Note.lastSearchTime.getTime();Note.isOver2Seconds=duration>2e3?true:false;if(!Note.lastKey||Note.lastKey!=key||duration>1e3){Note.lastKey=key;Note.lastSearchTime=now;return false}if(key==Note.lastKey){return true}Note.lastSearchTime=now;Note.lastKey=key;return false};Note.searchNote=function(){var val=$("#searchNoteInput").val();if(!val){Notebook.changeNotebook("0");return}if(Note.isSameSearch(val)){return}if(Note.lastSearch){Note.lastSearch.abort()}Note.curChangedSaveIt();Note.clearAll();showLoading();Note.lastSearch=$.post("/note/searchNote",{key:val},function(notes){hideLoading();if(notes){Note.lastSearch=null;Note.renderNotes(notes);if(!isEmpty(notes)){Note.changeNote(notes[0].NoteId,false)}}else{}})};Note.setNote2Blog=function(target){var noteId=$(target).attr("noteId");var note=Note.cache[noteId];var isBlog=true;if(note.IsBlog!=undefined){isBlog=!note.IsBlog}if(isBlog){$(target).find(".item-blog").show()}else{$(target).find(".item-blog").hide()}ajaxPost("/note/setNote2Blog",{noteId:noteId,isBlog:isBlog},function(ret){if(ret){Note.setNoteCache({NoteId:noteId,IsBlog:isBlog},false)}})};Note.setAllNoteBlogStatus=function(notebookId,isBlog){if(!notebookId){return}var notes=Note.getNotesByNotebookId(notebookId);if(!isArray(notes)){return}var len=notes.length;if(len==0){for(var i in Note.cache){if(Note.cache[i].NotebookId==notebookId){Note.cache[i].IsBlog=isBlog}}}else{for(var i=0;i'+attach.Title+"")}});self.linkAllBtnO.on("click",function(e){e.stopPropagation();var note=Note.getCurNote();if(!note){return}var src=UrlPrefix+"/attach/downloadAll?noteId="+Note.curNoteId;var title=note.Title?note.Title+".tar.gz":"all.tar.gz";if(LEA.isMarkdownEditor()&&MD){MD.insertLink(src,title)}else{tinymce.activeEditor.insertContent(''+title+"")}})},attachListO:$("#attachList"),attachNumO:$("#attachNum"),attachDropdownO:$("#attachDropdown"),downloadAllBtnO:$("#downloadAllBtn"),linkAllBtnO:$("#linkAllBtn"),clearNoteAttachNum:function(){var self=this;self.attachNumO.html("").hide()},renderNoteAttachNum:function(noteId,needHide){var self=this;var note=Note.getNote(noteId);if(note.AttachNum){self.attachNumO.html("("+note.AttachNum+")").show();self.downloadAllBtnO.show();self.linkAllBtnO.show()}else{self.attachNumO.hide();self.downloadAllBtnO.hide();self.linkAllBtnO.hide()}if(needHide){self.attachDropdownO.removeClass("open")}},_renderAttachs:function(attachs){var self=this;var html="";var attachNum=attachs.length;for(var i=0;i'+'
      '+each.Title+"
      "+'
      '+' '+' '+' '+"
      "+"";self.attachsMap[each.AttachId]=each}self.attachListO.html(html);var note=Note.getCurNote();if(note){note.AttachNum=attachNum;self.renderNoteAttachNum(note.NoteId,false)}},_bookmark:null,renderAttachs:function(noteId){var self=this;if(self.loadedNoteAttachs[noteId]){self._renderAttachs(self.loadedNoteAttachs[noteId]);return}self.attachListO.html('
    • ');ajaxGet("/attach/getAttachs",{noteId:noteId},function(ret){var list=[];if(ret.Ok){list=ret.List;if(!list){list=[]}}self.loadedNoteAttachs[noteId]=list;self._renderAttachs(list)})},addAttach:function(attachInfo){var self=this;if(!self.loadedNoteAttachs[attachInfo.NoteId]){self.loadedNoteAttachs[attachInfo.NoteId]=[]}self.loadedNoteAttachs[attachInfo.NoteId].push(attachInfo);self.renderAttachs(attachInfo.NoteId)},deleteAttach:function(attachId){var self=this;var noteId=Note.curNoteId;var attachs=self.loadedNoteAttachs[noteId];for(var i=0;i

      ?

      ? ?

      ?

      ';Note.itemTpl='
    • ';Note.itemTpl+=Note.itemIsBlog+'

      ?

      ? ?

      ?

    • ';Note.newItemTpl='
    • ';Note.newItemTpl+=Note.itemIsBlog+'

      ?

      ? ?
      ?

    • ';Note.noteItemListO=$("#noteItemList");Note.cacheByNotebookId={all:{}};Note.notebookIds={};Note.isReadOnly=false;Note.intervalTime=6e5;Note.startInterval=function(){Note.interval=setInterval(function(){log("自动保存开始...");changedNote=Note.curChangedSaveIt(false)},Note.intervalTime)};Note.stopInterval=function(){clearInterval(Note.interval);setTimeout(function(){Note.startInterval()},Note.intervalTime)};Note.addNoteCache=function(note){Note.cache[note.NoteId]=note;Note.clearCacheByNotebookId(note.NotebookId)};Note.setNoteCache=function(content,clear){if(!Note.cache[content.NoteId]){Note.cache[content.NoteId]=content}else{$.extend(Note.cache[content.NoteId],content)}if(clear==undefined){clear=true}if(clear){Note.clearCacheByNotebookId(content.NotebookId)}};Note.getCurNote=function(){var self=this;if(self.curNoteId==""){return null}return self.cache[self.curNoteId]};Note.getNote=function(noteId){var self=this;return self.cache[noteId]};Note.clearCacheByNotebookId=function(notebookId){if(notebookId){Note.cacheByNotebookId[notebookId]={};Note.cacheByNotebookId["all"]={};Note.notebookIds[notebookId]=true}};Note.notebookHasNotes=function(notebookId){var notes=Note.getNotesByNotebookId(notebookId);return!isEmpty(notes)};Note.getNotesByNotebookId=function(notebookId,sortBy,isAsc){if(!sortBy){sortBy="UpdatedTime"}if(isAsc=="undefined"){isAsc=false}if(!notebookId){notebookId="all"}if(!Note.cacheByNotebookId[notebookId]){return[]}if(Note.cacheByNotebookId[notebookId][sortBy]){return Note.cacheByNotebookId[notebookId][sortBy]}else{}var notes=[];var sortBys=[];for(var i in Note.cache){if(!i){continue}var note=Note.cache[i];if(note.IsTrash||note.IsShared){continue}if(notebookId=="all"||note.NotebookId==notebookId){notes.push(note)}}notes.sort(function(a,b){var t1=a[sortBy];var t2=b[sortBy];if(isAsc){if(t1t2){return 1}}else{if(t1t2){return-1}}return 0});Note.cacheByNotebookId[notebookId][sortBy]=notes;return notes};Note.curNoteIsDirtied=function(){var me=this;var note=me.getCurNote();if(note){note.isDirty=true}};Note.renderNotesAndFirstOneContent=function(ret){if(!isArray(ret)){return}Note.renderNotes(ret);if(!isEmpty(ret[0])){Note.changeNoteForPjax(ret[0].NoteId,true,false)}else{}};Note.curHasChanged=function(force){if(force==undefined){force=true}var cacheNote=Note.cache[Note.curNoteId]||{};var title=$("#noteTitle").val();var tags=Tag.getTags();var contents=getEditorContent(cacheNote.IsMarkdown);var content,preview;var contentText;if(isArray(contents)){content=contents[0];preview=contents[1];contentText=content;if(content&&previewIsEmpty(preview)&&Converter){preview=Converter.makeHtml(content)}if(!content){preview=""}cacheNote.Preview=preview}else{content=contents;try{contentText=$(content).text()}catch(e){}}var hasChanged={hasChanged:false,IsNew:cacheNote.IsNew,IsMarkdown:cacheNote.IsMarkdown,FromUserId:cacheNote.FromUserId,NoteId:cacheNote.NoteId,NotebookId:cacheNote.NotebookId,Version:cacheNote.Version||0};if(hasChanged.IsNew){$.extend(hasChanged,cacheNote)}else{if(!cacheNote.isDirty){log("no dirty");hasChanged.hasChanged=false;return hasChanged}}if(cacheNote.Title!=title){hasChanged.hasChanged=true;hasChanged.Title=title;if(!hasChanged.Title){}}if(!arrayEqual(cacheNote.Tags,tags)){hasChanged.hasChanged=true;hasChanged.Tags=tags.join(",")}if(force&&cacheNote.Content!=content||!force&&(!cacheNote.IsMarkdown&&$(cacheNote.Content).text()!=contentText||cacheNote.IsMarkdown&&cacheNote.Content!=contentText)){hasChanged.hasChanged=true;hasChanged.Content=content;var c=preview||content;if(!cacheNote.HasSelfDefined||!cacheNote.IsBlog){hasChanged.Desc=Note.genDesc(c);hasChanged.ImgSrc=Note.getImgSrc(c);hasChanged.Abstract=Note.genAbstract(c)}}else{log("text相同");log(cacheNote.Content==content)}hasChanged["UserId"]=cacheNote["UserId"]||"";return hasChanged};Note.genDesc=function(content){if(!content){return""}content=content.replace(/
      /g,"
      ");content=content.replace(/<\/p>/g,"

      ");content=content.replace(/<\/div>/g,"
      ");content=$("
      ").html(content).text();content=content.replace(//g,">");if(content.length<300){return content}return content.substring(0,300)};Note.genAbstract=function(content,len){if(!content){return""}if(len==undefined){len=1e3}if(content.length"&&isCode){n=n-1;isCode=false}else if(temp==";"&&isHTML){isHTML=false}if(!isCode&&!isHTML){n=n+1}result+=temp;if(n>=maxLen){break}}var d=document.createElement("div");d.innerHTML=result;return d.innerHTML};Note.getImgSrc=function(content){if(!content){return""}var imgs=$(content).find("img");for(var i in imgs){var src=imgs.eq(i).attr("src");if(src){return src}}return""};Note.saveInProcess={};Note.savePool={};Note.curChangedSaveIt=function(force,callback){var me=this;if(!Note.curNoteId||Note.isReadOnly){return}var hasChanged=Note.curHasChanged(force);if(hasChanged.hasChanged||hasChanged.IsNew){Note.renderChangedNote(hasChanged);delete hasChanged.hasChanged;showMsg(getMsg("saving"));me.saveInProcess[hasChanged.NoteId]=true;ajaxPost("/note/updateNoteOrContent",hasChanged,function(ret){me.saveInProcess[hasChanged.NoteId]=false;if(hasChanged.IsNew){ret.IsNew=false;Note.setNoteCache(ret,false);Pjax.changeNote(ret)}callback&&callback();showMsg(getMsg("saveSuccess"),1e3)});if(hasChanged["Tags"]!=undefined&&typeof hasChanged["Tags"]=="string"){hasChanged["Tags"]=hasChanged["Tags"].split(",")}Note.setNoteCache(hasChanged,false);Note.setNoteCache({NoteId:hasChanged.NoteId,UpdatedTime:(new Date).format("yyyy-MM-ddThh:mm:ss.S")},false);return hasChanged}return false};Note.updatePoolNote=function(){var me=this;for(var noteId in me.savePool){if(!noteId){continue}delete me.savePool[noteId];var hasChanged=me.savePool[noteId];me.saveInProcess[noteId]=true;ajaxPost("/note/updateNoteOrContent",hasChanged,function(ret){me.saveInProcess[noteId]=false})}};Note.updatePoolNoteInterval=null;Note.startUpdatePoolNoteInterval=function(){return;var me=this;if(me.updatePoolNoteInterval){return}me.updatePoolNoteInterval=setTimeout(function(){log("update pool");me.updatePoolNote()},1e3)};Note.selectTarget=function(target){$(".item").removeClass("item-active");$(target).addClass("item-active")};Note.showContentLoading=function(){$("#noteMaskForLoading").css("z-index",99999)};Note.hideContentLoading=function(){$("#noteMaskForLoading").css("z-index",-1)};Note.directToNote=function(noteId){var $p=$("#noteItemList");var pHeight=$p.height();var pTop=$("[noteId='"+noteId+"']").position().top;var scrollTop=$p.scrollTop();pTop+=scrollTop;if(pTop>=scrollTop&&pTop<=pHeight+scrollTop){}else{var top=pTop;log("定位到特定note, 在可视范围内");if(!LEA.isMobile&&!Mobile.isMobile()){$("#noteItemList").scrollTop(top);$("#noteItemList").slimScroll({scrollTo:top+"px",height:"100%",onlyScrollBar:true})}else{}}};Note.changeNoteForPjax=function(noteId,mustPush,needTargetNotebook){var me=this;var note=me.getNote(noteId);if(!note){return}var isShare=note.Perm!=undefined;if(needTargetNotebook==undefined){needTargetNotebook=true}me.changeNote(noteId,isShare,true,function(note){if(mustPush==undefined){mustPush=true}if(mustPush){Pjax.changeNote(note)}if(needTargetNotebook){Note.directToNote(noteId)}});if(needTargetNotebook){if(isShare){if($("#myShareNotebooks").hasClass("closed")){$("#myShareNotebooks .folderHeader").trigger("click")}}else{if($("#myNotebooks").hasClass("closed")){$("#myNotebooks .folderHeader").trigger("click")}}Notebook.expandNotebookTo(note.NotebookId)}};Note.contentAjax=null;Note.contentAjaxSeq=1;Note.changeNote=function(selectNoteId,isShare,needSaveChanged,callback){var self=this;Note.stopInterval();var target=$(tt('[noteId="?"]',selectNoteId));Note.selectTarget(target);if(needSaveChanged==undefined){needSaveChanged=true}if(needSaveChanged){var changedNote=Note.curChangedSaveIt()}Note.curNoteId="";var cacheNote=Note.cache[selectNoteId];if(!isShare){if(cacheNote.Perm!=undefined){isShare=true}}var hasPerm=!isShare||Share.hasUpdatePerm(selectNoteId);if(hasPerm){Note.hideReadOnly();Note.renderNote(cacheNote)}else{Note.renderNoteReadOnly(cacheNote)}switchEditor(cacheNote.IsMarkdown);Attach.renderNoteAttachNum(selectNoteId,true);Note.contentAjaxSeq++;var seq=Note.contentAjaxSeq;function setContent(ret){Note.contentAjax=null;if(seq!=Note.contentAjaxSeq){return}Note.setNoteCache(ret,false);ret=Note.cache[selectNoteId];Note.renderNoteContent(ret);self.hideContentLoading();callback&&callback(ret)}if(cacheNote.Content){setContent(cacheNote);return}var url="/note/getNoteContent";var param={noteId:selectNoteId};if(isShare){url="/share/getShareNoteContent";param.sharedUserId=cacheNote.UserId}self.showContentLoading();if(Note.contentAjax!=null){Note.contentAjax.abort()}Note.contentAjax=ajaxGet(url,param,setContent)};Note.renderChangedNote=function(changedNote){if(!changedNote){return}var $leftNoteNav=$(tt('[noteId="?"]',changedNote.NoteId));if(changedNote.Title){$leftNoteNav.find(".item-title").html(trimTitle(changedNote.Title))}if(changedNote.Desc){$leftNoteNav.find(".desc").html(changedNote.Desc)}if(changedNote.ImgSrc){$thumb=$leftNoteNav.find(".item-thumb");if($thumb.length>0){$thumb.find("img").attr("src",changedNote.ImgSrc)}else{$leftNoteNav.append(tt('
      ',changedNote.ImgSrc));$leftNoteNav.addClass("item-image")}$leftNoteNav.find(".item-desc").removeAttr("style")}else if(changedNote.ImgSrc==""){$leftNoteNav.find(".item-thumb").remove();$leftNoteNav.removeClass("item-image")}};Note.clearNoteInfo=function(){Note.curNoteId="";Tag.clearTags();$("#noteTitle").val("");setEditorContent("");$("#noteRead").hide()};Note.clearNoteList=function(){Note.noteItemListO.html("")};Note.clearAll=function(){Note.curNoteId="";Note.clearNoteInfo();Note.clearNoteList()};Note.renderNote=function(note){if(!note){return}$("#noteTitle").val(note.Title);Tag.renderTags(note.Tags);note.isDirty=false};Note.renderNoteContent=function(content){setEditorContent(content.Content,content.IsMarkdown,content.Preview,function(){Note.curNoteId=content.NoteId;Note.toggleReadOnly()});Note.curNoteId=content.NoteId};Note.showEditorMask=function(){$("#editorMask").css("z-index",10).show();if(Notebook.curNotebookIsTrashOrAll()){$("#editorMaskBtns").hide();$("#editorMaskBtnsEmpty").show()}else{$("#editorMaskBtns").show();$("#editorMaskBtnsEmpty").hide()}};Note.hideEditorMask=function(){$("#editorMask").css("z-index",-10).hide()};Note.renderNotesC=0;Note.renderNotes=function(notes,forNewNote,isShared){var renderNotesC=++Note.renderNotesC;if(!LEA.isMobile&&!Mobile.isMobile()){$("#noteItemList").slimScroll({scrollTo:"0px",height:"100%",onlyScrollBar:true})}if(!notes||typeof notes!="object"||notes.length<=0){if(!forNewNote){Note.showEditorMask()}return}Note.hideEditorMask();if(forNewNote==undefined){forNewNote=false}if(!forNewNote){Note.noteItemListO.html("")}var len=notes.length;var c=Math.ceil(len/20);Note._renderNotes(notes,forNewNote,isShared,1);for(var i=0;i'+getMsg("close")+"");options={};options.show=true;$("#leanoteDialog").modal(options);ajaxGet("/noteContentHistory/listHistories",{noteId:Note.curNoteId},function(re){if(!isArray(re)){$content.html(getMsg("noHistories"));return}var str="

      "+getMsg("historiesNum")+'

      ';note=Note.cache[Note.curNoteId];var s="div";if(note.IsMarkdown){s="pre"}for(i in re){var content=re[i];content.Ab=Note.genAbstract(content.Content,200);str+='"}str+="
      #'+(i+1)+"<"+s+' class="each-content">'+content.Ab+"
      '+getMsg("datetime")+': '+goNowToDatetime(content.UpdatedTime)+'
      ";$content.html(str);$("#historyList .all").click(function(){$p=$(this).parent().parent();var seq=$p.attr("seq");var $c=$p.find(".each-content");var info=re[seq];if(!info.unfold){$(this).text(getMsg("fold"));$c.html(info.Content);info.unfold=true}else{$(this).text(getMsg("unfold"));$c.html(info.Ab);info.unfold=false}});$("#historyList .back").click(function(){$p=$(this).parent().parent();var seq=$p.attr("seq");if(confirm(getMsg("confirmBackup"))){Note.curChangedSaveIt();note=Note.cache[Note.curNoteId];setEditorContent(re[seq].Content,note.IsMarkdown);hideDialog()}})})};Note.exportPDF=function(target){var noteId=$(target).attr("noteId");$('
      ').appendTo("body").submit().remove()};Note.html2Image=function(target){var noteId=$(target).attr("noteId");showDialog("html2ImageDialog",{title:"分享到社区",postShow:function(){ajaxGet("/note/html2Image",{noteId:noteId},function(ret){if(typeof ret=="object"&&ret.Ok){$("#leanoteDialog .weibo span").html("生成成功, 右键图片保存到本地.");$("#leanoteDialog .weibo img").attr("src",ret.Id+"?"+(new Date).getTime());$("#leanoteDialog .btn-share").removeClass("disabled");var note=Note.cache[noteId];var pic=UrlPrefix+ret.Id;var title=encodeURI(note.Title+" ("+UserInfo.Username+"分享. 来自leanote.com)");var windowParam="width=700, height=580, top=180, left=320, toolbar=no, menubar=no, scrollbars=no, location=yes, resizable=no, status=no";$("#leanoteDialog .sendWeiboBtn").click(function(){var url="http://service.weibo.com/share/share.php?title="+title;url+="&pic="+pic;window.open(url,"分享到新浪微博",windowParam)});$("#leanoteDialog .sendTxWeiboBtn").click(function(){var _appkey="801542571";var url="http://share.v.t.qq.com/index.php?c=share&a=index&appkey="+_appkey+"&title="+title+"&url=&pic="+pic;window.open(url,"分享到腾讯微博",windowParam)});$("#leanoteDialog .sendQQBtn").click(function(){var url="http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url="+UrlPrefix+"&title="+title+"&pics="+pic;window.open(url,"分享QQ空间",windowParam)});$("#leanoteDialog .sendRRBtn").click(function(){var url="http://widget.renren.com/dialog/share?resourceUrl="+UrlPrefix+"&srcUrl="+UrlPrefix+"&title="+title+"&pic="+pic;window.open(url,"分享人人网",windowParam)})}else{$("#leanoteDialog .weibo").html("对不起, 我们出错了!")}})}})};Note.showReadOnly=function(){Note.isReadOnly=true;$("#note").addClass("read-only")};Note.hideReadOnly=function(){Note.isReadOnly=false;$("#note").removeClass("read-only");$("#noteRead").hide()};Note.renderNoteReadOnly=function(note){Note.showReadOnly();$("#noteReadTitle").html(note.Title||getMsg("unTitled"));Tag.renderReadOnlyTags(note.Tags);$("#noteReadCreatedTime").html(goNowToDatetime(note.CreatedTime));$("#noteReadUpdatedTime").html(goNowToDatetime(note.UpdatedTime))};Note.renderNoteContentReadOnly=function(note){};Note.lastSearch=null;Note.lastKey=null;Note.lastSearchTime=new Date;Note.isOver2Seconds=false;Note.isSameSearch=function(key){var now=new Date;var duration=now.getTime()-Note.lastSearchTime.getTime();Note.isOver2Seconds=duration>2e3?true:false;if(!Note.lastKey||Note.lastKey!=key||duration>1e3){Note.lastKey=key;Note.lastSearchTime=now;return false}if(key==Note.lastKey){return true}Note.lastSearchTime=now;Note.lastKey=key;return false};Note.searchNote=function(){var val=$("#searchNoteInput").val();if(!val){Notebook.changeNotebook("0");return}if(Note.isSameSearch(val)){return}if(Note.lastSearch){Note.lastSearch.abort()}Note.curChangedSaveIt();Note.clearAll();showLoading();Note.lastSearch=$.post("/note/searchNote",{key:val},function(notes){hideLoading();if(notes){Note.lastSearch=null;Note.renderNotes(notes);if(!isEmpty(notes)){Note.changeNote(notes[0].NoteId,false)}}else{}})};Note.setNote2Blog=function(target){var noteId=$(target).attr("noteId");var note=Note.cache[noteId];var isBlog=true;if(note.IsBlog!=undefined){isBlog=!note.IsBlog}if(isBlog){$(target).find(".item-blog").show()}else{$(target).find(".item-blog").hide()}ajaxPost("/note/setNote2Blog",{noteId:noteId,isBlog:isBlog},function(ret){if(ret){Note.setNoteCache({NoteId:noteId,IsBlog:isBlog},false)}})};Note.setAllNoteBlogStatus=function(notebookId,isBlog){if(!notebookId){return}var notes=Note.getNotesByNotebookId(notebookId);if(!isArray(notes)){return}var len=notes.length;if(len==0){for(var i in Note.cache){if(Note.cache[i].NotebookId==notebookId){Note.cache[i].IsBlog=isBlog}}}else{for(var i=0;i'+attach.Title+"")}});self.linkAllBtnO.on("click",function(e){e.stopPropagation();var note=Note.getCurNote();if(!note){return}var src=UrlPrefix+"/attach/downloadAll?noteId="+Note.curNoteId;var title=note.Title?note.Title+".tar.gz":"all.tar.gz";if(LEA.isMarkdownEditor()&&MD){MD.insertLink(src,title)}else{tinymce.activeEditor.insertContent(''+title+"")}})},attachListO:$("#attachList"),attachNumO:$("#attachNum"),attachDropdownO:$("#attachDropdown"),downloadAllBtnO:$("#downloadAllBtn"),linkAllBtnO:$("#linkAllBtn"),clearNoteAttachNum:function(){var self=this;self.attachNumO.html("").hide()},renderNoteAttachNum:function(noteId,needHide){var self=this;var note=Note.getNote(noteId);if(note.AttachNum){self.attachNumO.html("("+note.AttachNum+")").show();self.downloadAllBtnO.show();self.linkAllBtnO.show()}else{self.attachNumO.hide();self.downloadAllBtnO.hide();self.linkAllBtnO.hide()}if(needHide){self.attachDropdownO.removeClass("open")}},_renderAttachs:function(attachs){var self=this;var html="";var attachNum=attachs.length;for(var i=0;i'+'
      '+each.Title+"
      "+'
      '+' '+' '+' '+"
      "+"";self.attachsMap[each.AttachId]=each}self.attachListO.html(html);var note=Note.getCurNote();if(note){note.AttachNum=attachNum;self.renderNoteAttachNum(note.NoteId,false)}},_bookmark:null,renderAttachs:function(noteId){var self=this;if(self.loadedNoteAttachs[noteId]){self._renderAttachs(self.loadedNoteAttachs[noteId]);return}self.attachListO.html('
    • ');ajaxGet("/attach/getAttachs",{noteId:noteId},function(ret){var list=[];if(ret.Ok){list=ret.List;if(!list){list=[]}}self.loadedNoteAttachs[noteId]=list;self._renderAttachs(list)})},addAttach:function(attachInfo){var self=this;if(!self.loadedNoteAttachs[attachInfo.NoteId]){self.loadedNoteAttachs[attachInfo.NoteId]=[]}self.loadedNoteAttachs[attachInfo.NoteId].push(attachInfo);self.renderAttachs(attachInfo.NoteId)},deleteAttach:function(attachId){var self=this;var noteId=Note.curNoteId;var attachs=self.loadedNoteAttachs[noteId];for(var i=0;i + $("#noteTitle").val(note.Title); // 当前正在编辑的 // tags @@ -1138,6 +1139,71 @@ Note.listNoteContentHistories = function() { }); } +// 导出成PDF +Note.exportPDF = function(target) { + var noteId = $(target).attr("noteId"); + /* + { + "Ok": true, + "Code": 0, + "Msg": "", + "Id": "upload/5368c1aa99c37b029d000001/images/weibo/我靠, 这是什么??.pdf", + "List": null, + "Item": null + } + */ + $('
      ').appendTo('body').submit().remove(); + // $.get("/note/exportPdf?noteId=" + noteId); + // window.open("/note/exportPdf?noteId=" + noteId); + /* + ajaxGet(", {noteId: noteId}, function(ret) { + if(reIsOk(ret)) { + window.open(UrlPrefix + '/pubic/' + ret.Id); + } else { + alert('error!'); + } + }); + */ +}; + +// 长微博 +Note.html2Image = function(target) { + var noteId = $(target).attr("noteId"); + showDialog("html2ImageDialog", {title: "分享到社区", postShow: function() { + ajaxGet("/note/html2Image", {noteId: noteId}, function(ret) { + if (typeof ret == "object" && ret.Ok) { + $("#leanoteDialog .weibo span").html("生成成功, 右键图片保存到本地.") + $("#leanoteDialog .weibo img").attr("src", ret.Id + "?" + ((new Date()).getTime())); + $("#leanoteDialog .btn-share").removeClass("disabled"); + var note = Note.cache[noteId]; + var pic = UrlPrefix + ret.Id; + var title = encodeURI(note.Title + " (" + UserInfo.Username + "分享. 来自leanote.com)"); + var windowParam = 'width=700, height=580, top=180, left=320, toolbar=no, menubar=no, scrollbars=no, location=yes, resizable=no, status=no'; + $("#leanoteDialog .sendWeiboBtn").click(function() { + var url = "http://service.weibo.com/share/share.php?title=" + title; + url += "&pic=" + pic; + window.open(url, '分享到新浪微博', windowParam); + }); + $("#leanoteDialog .sendTxWeiboBtn").click(function() { + var _appkey = '801542571'; + var url = "http://share.v.t.qq.com/index.php?c=share&a=index&appkey=" + _appkey +"&title=" + title +"&url=&pic=" + pic + window.open(url, '分享到腾讯微博', windowParam); + }); + $("#leanoteDialog .sendQQBtn").click(function() { + var url = 'http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=' + UrlPrefix + '&title=' + title + '&pics=' + pic; + window.open(url, '分享QQ空间', windowParam); + }); + $("#leanoteDialog .sendRRBtn").click(function() { + var url = 'http://widget.renren.com/dialog/share?resourceUrl=' + UrlPrefix + '&srcUrl=' + UrlPrefix + '&title=' + title + '&pic=' + pic; + window.open(url, '分享人人网', windowParam); + }); + } else { + $("#leanoteDialog .weibo").html("对不起, 我们出错了!") + } + }); + }}); +} + //-------------- // read only @@ -1397,17 +1463,16 @@ Note.deleteNoteTag = function(item, tag) { }; // readonly -Note.readOnly = true; +Note.readOnly = false; // 默认为false要好? // 切换只读模式 Note.toggleReadOnly = function() { - if(LEA.em && LEA.em.isWriting()) { + if(LEA.em && LEA.em.isWriting()) { // 写作模式下 return Note.toggleWriteable(); } var me = this; var note = me.getCurNote(); - // console.log('((((((((((((((((((((((('); // tinymce var $editor = $('#editor'); $editor.addClass('read-only').removeClass('all-tool'); // 不要全部的 @@ -1422,6 +1487,7 @@ Note.toggleReadOnly = function() { return; } + $('.info-toolbar').removeClass('invisible'); if(note.IsMarkdown) { $('#mdInfoToolbar .created-time').html(goNowToDatetime(note.CreatedTime)); $('#mdInfoToolbar .updated-time').html(goNowToDatetime(note.UpdatedTime)); @@ -1460,7 +1526,7 @@ Note.toggleWriteable = function() { if(!note) { return; } - + if(!note.readOnly) { return; } @@ -1536,6 +1602,9 @@ Note.initContextmenu = function() { { text: getMsg("publicAsBlog"), alias: 'set2Blog', faIcon: "fa-bold", action: Note.setNote2Blog }, { text: getMsg("cancelPublic"), alias: 'unset2Blog', faIcon: "fa-undo", action: Note.setNote2Blog }, { type: "splitLine" }, + // { text: "分享到社区", alias: 'html2Image', icon: "", action: Note.html2Image}, + { text: getMsg("exportPdf"), alias: 'exportPDF', faIcon: "fa-file-pdf-o", action: Note.exportPDF}, + { type: "splitLine" }, { text: getMsg("delete"), icon: "", faIcon: "fa-trash-o", action: Note.deleteNote }, { text: getMsg("move"), alias: "move", faIcon: "fa-arrow-right", type: "group", diff --git a/public/js/app/page-min.js b/public/js/app/page-min.js index bfbe8d9..62247b5 100644 --- a/public/js/app/page-min.js +++ b/public/js/app/page-min.js @@ -1 +1 @@ -function editorMode(){this.writingHash="writing";this.normalHash="normal";this.isWritingMode=location.hash.indexOf(this.writingHash)>=0;this.toggleA=null}editorMode.prototype.toggleAText=function(isWriting){var self=this;setTimeout(function(){var toggleA=$(".toggle-editor-mode a");var toggleSpan=$(".toggle-editor-mode span");if(isWriting){toggleA.attr("href","#"+self.normalHash);toggleSpan.text(getMsg("normalMode"))}else{toggleA.attr("href","#"+self.writingHash);toggleSpan.text(getMsg("writingMode"))}},0)};editorMode.prototype.isWriting=function(hash){if(!hash){hash=location.hash}return hash.indexOf(this.writingHash)>=0};editorMode.prototype.init=function(){this.$themeLink=$("#themeLink");this.changeMode(this.isWritingMode);var self=this;$(".toggle-editor-mode").click(function(e){e.preventDefault();saveBookmark();var $a=$(this).find("a");var isWriting=self.isWriting($a.attr("href"));self.changeMode(isWriting);if(isWriting){setHash("m",self.writingHash)}else{setHash("m",self.normalHash)}restoreBookmark()})};editorMode.prototype.changeMode=function(isWritingMode){this.toggleAText(isWritingMode);if(isWritingMode){this.writtingMode()}else{this.normalMode()}};editorMode.prototype.resizeEditor=function(){setTimeout(function(){resizeEditor()},10);setTimeout(function(){resizeEditor()},20);setTimeout(function(){resizeEditor()},500)};editorMode.prototype.normalMode=function(){$("#noteItemListWrap, #notesAndSort").show();$("#noteList").unbind("mouseenter").unbind("mouseleave");var theme=UserInfo.Theme||"default";theme+=".css";var $themeLink=$("#themeLink");if(this.$themeLink.attr("href").indexOf("writting-overwrite.css")!=-1){this.$themeLink.attr("href","/css/theme/"+theme)}$("#noteList").width(UserInfo.NoteListWidth);$("#note").css("left",UserInfo.NoteListWidth)};editorMode.prototype.writtingMode=function(){if(this.$themeLink.attr("href").indexOf("writting-overwrite.css")==-1){this.$themeLink.attr("href","/css/theme/writting-overwrite.css")}$("#noteItemListWrap, #notesAndSort").fadeOut();$("#noteList").hover(function(){$("#noteItemListWrap, #notesAndSort").fadeIn()},function(){$("#noteItemListWrap, #notesAndSort").fadeOut()});this.resizeEditor();$("#noteList").width(250);$("#note").css("left",0);Note.toggleWriteable()};editorMode.prototype.getWritingCss=function(){if(this.isWritingMode){return["/css/editor/editor-writting-mode.css"]}return[]};var em=new editorMode;LEA.em=em;var Resize={lineMove:false,mdLineMove:false,target:null,leftNotebook:$("#leftNotebook"),notebookSplitter:$("#notebookSplitter"),noteList:$("#noteList"),noteAndEditor:$("#noteAndEditor"),noteSplitter:$("#noteSplitter"),note:$("#note"),body:$("body"),leftColumn:$("#left-column"),rightColumn:$("#right-column"),mdSplitter:$("#mdSplitter2"),init:function(){var self=this;self.initEvent()},initEvent:function(){var self=this;$(".noteSplit").bind("mousedown",function(event){event.preventDefault();self.lineMove=true;$(this).css("background-color","#ccc");self.target=$(this).attr("id");$("#noteMask").css("z-index",99999)});self.mdSplitter.bind("mousedown",function(event){event.preventDefault();if($(this).hasClass("open")){self.mdLineMove=true}});self.body.bind("mousemove",function(event){if(self.lineMove){event.preventDefault();self.resize3Columns(event)}else if(self.mdLineMove){event.preventDefault();self.resizeMdColumns(event)}});self.body.bind("mouseup",function(event){self.stopResize();$("#noteMask").css("z-index",-1)});var everLeftWidth;$(".layout-toggler-preview").click(function(){var $t=$(this);var $p=self.leftColumn.parent();if($t.hasClass("open")){var totalWidth=$p.width();var minRightWidth=22;var leftWidth=totalWidth-minRightWidth;everLeftWidth=self.leftColumn.width();self.leftColumn.width(leftWidth);self.rightColumn.css("left","auto").width(minRightWidth);$t.removeClass("open");self.rightColumn.find(".layout-resizer").removeClass("open");$(".preview-container").hide()}else{$t.addClass("open");self.rightColumn.find(".layout-resizer").addClass("open");self.leftColumn.width(everLeftWidth);$(".preview-container").show();self.rightColumn.css("left",everLeftWidth).width("auto");if(MD){MD.onResize()}}})},stopResize:function(){var self=this;if(self.lineMove||self.mdLineMove){ajaxGet("/user/updateColumnWidth",{mdEditorWidth:UserInfo.MdEditorWidth,notebookWidth:UserInfo.NotebookWidth,noteListWidth:UserInfo.NoteListWidth},function(){})}self.lineMove=false;self.mdLineMove=false;$(".noteSplit").css("background","none");self.mdSplitter.css("background","none")},set3ColumnsWidth:function(notebookWidth,noteListWidth){var self=this;if(notebookWidth<150||noteListWidth<100){return}var noteWidth=self.body.width()-notebookWidth-noteListWidth;if(noteWidth<400){return}self.leftNotebook.width(notebookWidth);self.notebookSplitter.css("left",notebookWidth);self.noteAndEditor.css("left",notebookWidth);self.noteList.width(noteListWidth);self.noteSplitter.css("left",noteListWidth);self.note.css("left",noteListWidth);UserInfo.NotebookWidth=notebookWidth;UserInfo.NoteListWidth=noteListWidth},resize3Columns:function(event,isFromeIfr){var self=this;if(isFromeIfr){event.clientX+=self.body.width()-self.note.width()}var notebookWidth,noteListWidth;if(self.lineMove){if(self.target=="notebookSplitter"){notebookWidth=event.clientX;noteListWidth=self.noteList.width();self.set3ColumnsWidth(notebookWidth,noteListWidth)}else{notebookWidth=self.leftNotebook.width();noteListWidth=event.clientX-notebookWidth;self.set3ColumnsWidth(notebookWidth,noteListWidth)}resizeEditor()}},resizeMdColumns:function(event){var self=this;if(self.mdLineMove){var mdEditorWidth=event.clientX-self.leftColumn.offset().left;self.setMdColumnWidth(mdEditorWidth)}},setMdColumnWidth:function(mdEditorWidth){var self=this;if(mdEditorWidth>100){UserInfo.MdEditorWidth=mdEditorWidth;log(mdEditorWidth);self.leftColumn.width(mdEditorWidth);self.rightColumn.css("left",mdEditorWidth)}if(MD){MD.onResize()}}};Mobile={noteO:$("#note"),bodyO:$("body"),setMenuO:$("#setMenu"),hashChange:function(){var self=Mobile;var hash=location.hash;if(hash.indexOf("noteId")!=-1){self.toEditor(false);var noteId=hash.substr(8);Note.changeNote(noteId,false,false)}else{self.toNormal(false)}},init:function(){var self=this;self.isMobile()},isMobile:function(){var u=navigator.userAgent;LEA.isMobile=false;LEA.isMobile=/Mobile|Android|iPhone|iPad/i.test(u);LEA.isIpad=/iPad/i.test(u);LEA.isIphone=/iPhone/i.test(u);if(!LEA.isMobile&&$(document).width()<=700){LEA.isMobile=true}return LEA.isMobile},changeNote:function(noteId){var self=this;if(!LEA.isMobile){return true}self.toEditor(true,noteId);return false},toEditor:function(changeHash,noteId){var self=this;self.bodyO.addClass("full-editor");self.noteO.addClass("editor-show")},toNormal:function(changeHash){var self=this;self.bodyO.removeClass("full-editor");self.noteO.removeClass("editor-show")},switchPage:function(){var self=this;if(!LEA.isMobile||LEA.isIpad){return true}if(self.bodyO.hasClass("full-editor")){self.toNormal(true)}else{self.toEditor(true)}return false}};function initSlimScroll(){if(Mobile.isMobile()){return}$("#notebook").slimScroll({height:"100%"});$("#noteItemList").slimScroll({height:"100%"});$("#wmd-panel-preview").slimScroll({height:"100%"});$("#wmd-panel-preview").css("width","100%")}function initEditor(){var mceToobarEverHeight=0;$("#moreBtn").click(function(){saveBookmark();var $editor=$("#editor");if($editor.hasClass("all-tool")){$editor.removeClass("all-tool")}else{$editor.addClass("all-tool")}restoreBookmark()});tinymce.init({inline:true,theme:"leanote",valid_children:"+pre[div|#text|p|span|textarea|i|b|strong]",setup:function(ed){ed.on("keydown",function(e){var num=e.which?e.which:e.keyCode;if(Note.readOnly&&!((e.ctrlKey||e.metaKey)&&num==67)){e.preventDefault();return}Note.saveNote(e)});ed.on("click",function(e){})},convert_urls:true,relative_urls:false,remove_script_host:false,selector:"#editorContent",content_css:["/css/editor/editor.css"],skin:"custom",language:LEA.locale,plugins:["autolink link leaui_image lists charmap hr","paste","searchreplace leanote_nav leanote_code tabfocus","table directionality textcolor"],toolbar1:"formatselect | forecolor backcolor | bold italic underline strikethrough | leaui_image | leanote_code leanote_inline_code | bullist numlist | alignleft aligncenter alignright alignjustify",toolbar2:"outdent indent blockquote | link unlink | table | hr removeformat | subscript superscript |searchreplace | pastetext pasteCopyImage | leanote_ace_pre | fontselect fontsizeselect",menubar:false,toolbar_items_size:"small",statusbar:false,url_converter:false,font_formats:"Arial=arial,helvetica,sans-serif;"+"Arial Black=arial black,avant garde;"+"Times New Roman=times new roman,times;"+"Courier New=courier new,courier;"+"Tahoma=tahoma,arial,helvetica,sans-serif;"+"Verdana=verdana,geneva;"+"宋体=SimSun;"+"新宋体=NSimSun;"+"黑体=SimHei;"+"微软雅黑=Microsoft YaHei",block_formats:"Header 1=h1;Header 2=h2;Header 3=h3;Header 4=h4;Paragraph=p",paste_data_images:true});window.onbeforeunload=function(e){Note.curChangedSaveIt()};$("body").on("keydown",Note.saveNote)}var random=1;function scrollTo(self,tagName,text){var iframe=$("#editorContent");var target=iframe.find(tagName+":contains("+text+")");random++;var navs=$('#leanoteNavContent [data-a="'+tagName+"-"+encodeURI(text)+'"]');var len=navs.size();for(var i=0;i=i+1){target=target.eq(i);var top=iframe.scrollTop()-iframe.offset().top+target.offset().top;iframe.animate({scrollTop:top},300);return}}$(function(){$(window).resize(function(){Mobile.isMobile();resizeEditor()});initEditor();$(".folderHeader").click(function(){var body=$(this).next();var p=$(this).parent();if(!body.is(":hidden")){$(".folderNote").removeClass("opened").addClass("closed");p.removeClass("opened").addClass("closed");$(this).find(".fa-angle-down").removeClass("fa-angle-down").addClass("fa-angle-right")}else{$(".folderNote").removeClass("opened").addClass("closed");p.removeClass("closed").addClass("opened");$(this).find(".fa-angle-right").removeClass("fa-angle-right").addClass("fa-angle-down")}});$(".leanoteNav h1").on("click",function(e){var $leanoteNav=$(this).closest(".leanoteNav");if(!$leanoteNav.hasClass("unfolder")){$leanoteNav.addClass("unfolder")}else{$leanoteNav.removeClass("unfolder")}});function openSetInfoDialog(whichTab){showDialogRemote("/user/account",{tab:whichTab})}$("#setInfo").click(function(){openSetInfoDialog(0)});$("#wrongEmail").click(function(){openSetInfoDialog(1)});$("#setAvatarMenu").click(function(){showDialog2("#avatarDialog",{title:"头像设置",postShow:function(){}})});$("#setTheme").click(function(){showDialog2("#setThemeDialog",{title:"主题设置",postShow:function(){if(!UserInfo.Theme){UserInfo.Theme="default"}$("#themeForm input[value='"+UserInfo.Theme+"']").attr("checked",true)}})});$("#themeForm").on("click","input",function(e){var val=$(this).val();$("#themeLink").attr("href","/css/theme/"+val+".css");ajaxPost("/user/updateTheme",{theme:val},function(re){if(reIsOk(re)){UserInfo.Theme=val}})});if(!UserInfo.Verified){}$("#notebook, #newMyNote, #myProfile, #topNav, #notesAndSort","#leanoteNavTrigger").bind("selectstart",function(e){e.preventDefault();return false});function updateLeftIsMin(is){ajaxGet("/user/updateLeftIsMin",{leftIsMin:is})}function minLeft(save){$("#leftNotebook").width(30);$("#notebook").hide();$("#noteAndEditor").css("left",30);$("#notebookSplitter").hide();$("#logo").hide();$("#leftSwitcher").hide();$("#leftSwitcher2").show();$("#leftNotebook .slimScrollDiv").hide();if(save){updateLeftIsMin(true)}}function maxLeft(save){$("#noteAndEditor").css("left",UserInfo.NotebookWidth);$("#leftNotebook").width(UserInfo.NotebookWidth);$("#notebook").show();$("#notebookSplitter").show();$("#leftSwitcher2").hide();$("#logo").show();$("#leftSwitcher").show();$("#leftNotebook .slimScrollDiv").show();if(save){updateLeftIsMin(false)}}$("#leftSwitcher2").on("click",function(){maxLeft(true)});$("#leftSwitcher").click("click",function(){if(Mobile.switchPage()){minLeft(true)}});function getMaxDropdownHeight(obj){var offset=$(obj).offset();var maxHeight=$(document).height()-offset.top;maxHeight-=70;if(maxHeight<0){maxHeight=0}var preHeight=$(obj).find("ul").height();return preHeight/gi,"\n").replace(//g,">");pre.html(value);var id=pre.attr("id");if(!id){id=me.getAceId();pre.attr("id",id)}me.initAce(id)}}(pre))}},10)},allToPre:function(editor){if(!this.canAndIsAce()){return}var me=this;if(me.clearIntervalForInitAce){clearInterval(me.clearIntervalForInitAce)}me.clearIntervalForInitAce=setTimeout(function(){var content=$(editor.getBody());var pres=content.find("pre");for(var i=0;i/gi,"\n");pre.html(value);var id=pre.attr("id");if(!id){id=me.getAceId();pre.attr("id",id)}me.initAce(id)}}}(pre))}},10)},destroyAceFromContent:function(everContent){if(!this.canAce()){return}var pres=everContent.find("pre");for(var i=0;i0){everBrush=m[0]}return everBrush},preToAce:function(pre,force){if(!force&&!this.canAce()){return}var $pre=$(pre);var id=this.getAceId();$pre.attr("id",id);var editor=this.initAce(id,"",true);if(editor){editor.focus()}},aceToPre:function(pre,isFocus){var me=this;var $pre=$(pre);var aceEditorAndPre=me.isInAce($pre);if(aceEditorAndPre){var aceEditor=aceEditorAndPre[0];var $pre=aceEditorAndPre[1];var value=aceEditor.getValue();if(isAceError(value)){value=$pre.html()}value=value.replace(//g,">");var replacePre=$('
      '+value+"
      ");$pre.replaceWith(replacePre);aceEditor.destroy();me._aceEditors[$pre.attr("id")]=null;if(isFocus){setTimeout(function(){var tinymceEditor=tinymce.activeEditor;var selection=tinymceEditor.selection;var rng=selection.getRng();rng.selectNode(replacePre.get(0));tinymceEditor.focus();replacePre.trigger("click");replacePre.html(value+" ")},0)}}},handleEvent:function(){if(!this.canAce()){return}var me=this;$("#editorContent").on("mouseenter","pre",function(){var $t=$(this);$raw=$t.find(".toggle-raw");if($raw.length==0){$t.append('
      ')}$input=$t.find(".toggle-raw input");if(LeaAce.isInAce($t)){$input.prop("checked",true)}else{$input.prop("checked",false)}});$("#editorContent").on("mouseleave","pre",function(){var $raw=$(this).find(".toggle-raw");$raw.remove()});$("#editorContent").on("change",".toggle-raw input",function(){var checked=$(this).prop("checked");var $pre=$(this).closest("pre");if(checked){me.preToAce($pre,true)}else{me.aceToPre($pre,true)}})}};function initPage(){$(function(){Notebook.renderNotebooks(notebooks);Share.renderShareNotebooks(sharedUserInfos,shareNotebooks);if(curSharedNoteNotebookId){Share.firstRenderShareNote(curSharedUserId,curSharedNoteNotebookId,curNoteId)}else{Note.setNoteCache(noteContentJson);Note.renderNotes(notes);if(curNoteId){setTimeout(function(){Note.changeNoteForPjax(curNoteId,true,curNotebookId)});if(!curNotebookId){Notebook.selectNotebook($(tt('#notebook [notebookId="?"]',Notebook.allNotebookId)))}}}if(latestNotes.length>0){for(var i=0;i=0;this.toggleA=null}editorMode.prototype.toggleAText=function(isWriting){var self=this;setTimeout(function(){var toggleA=$(".toggle-editor-mode a");var toggleSpan=$(".toggle-editor-mode span");if(isWriting){toggleA.attr("href","#"+self.normalHash);toggleSpan.text(getMsg("normalMode"))}else{toggleA.attr("href","#"+self.writingHash);toggleSpan.text(getMsg("writingMode"))}},0)};editorMode.prototype.isWriting=function(hash){if(!hash){hash=location.hash}return hash.indexOf(this.writingHash)>=0};editorMode.prototype.init=function(){this.$themeLink=$("#themeLink");this.changeMode(this.isWritingMode);var self=this;$(".toggle-editor-mode").click(function(e){e.preventDefault();saveBookmark();var $a=$(this).find("a");var isWriting=self.isWriting($a.attr("href"));self.changeMode(isWriting);if(isWriting){setHash("m",self.writingHash)}else{setHash("m",self.normalHash)}restoreBookmark()})};editorMode.prototype.changeMode=function(isWritingMode){this.toggleAText(isWritingMode);if(isWritingMode){this.writtingMode()}else{this.normalMode()}};editorMode.prototype.resizeEditor=function(){setTimeout(function(){resizeEditor()},10);setTimeout(function(){resizeEditor()},20);setTimeout(function(){resizeEditor()},500)};editorMode.prototype.normalMode=function(){$("#noteItemListWrap, #notesAndSort").show();$("#noteList").unbind("mouseenter").unbind("mouseleave");var theme=UserInfo.Theme||"default";theme+=".css";var $themeLink=$("#themeLink");if(this.$themeLink.attr("href").indexOf("writting-overwrite.css")!=-1){this.$themeLink.attr("href","/css/theme/"+theme)}$("#noteList").width(UserInfo.NoteListWidth);$("#note").css("left",UserInfo.NoteListWidth)};editorMode.prototype.writtingMode=function(){if(this.$themeLink.attr("href").indexOf("writting-overwrite.css")==-1){this.$themeLink.attr("href","/css/theme/writting-overwrite.css")}$("#noteItemListWrap, #notesAndSort").fadeOut();$("#noteList").hover(function(){$("#noteItemListWrap, #notesAndSort").fadeIn()},function(){$("#noteItemListWrap, #notesAndSort").fadeOut()});this.resizeEditor();$("#noteList").width(250);$("#note").css("left",0);Note.toggleWriteable()};editorMode.prototype.getWritingCss=function(){if(this.isWritingMode){return["/css/editor/editor-writting-mode.css"]}return[]};var em=new editorMode;LEA.em=em;var Resize={lineMove:false,mdLineMove:false,target:null,leftNotebook:$("#leftNotebook"),notebookSplitter:$("#notebookSplitter"),noteList:$("#noteList"),noteAndEditor:$("#noteAndEditor"),noteSplitter:$("#noteSplitter"),note:$("#note"),body:$("body"),leftColumn:$("#left-column"),rightColumn:$("#right-column"),mdSplitter:$("#mdSplitter2"),init:function(){var self=this;self.initEvent()},initEvent:function(){var self=this;$(".noteSplit").bind("mousedown",function(event){event.preventDefault();self.lineMove=true;$(this).css("background-color","#ccc");self.target=$(this).attr("id");$("#noteMask").css("z-index",99999)});self.mdSplitter.bind("mousedown",function(event){event.preventDefault();if($(this).hasClass("open")){self.mdLineMove=true}});self.body.bind("mousemove",function(event){if(self.lineMove){event.preventDefault();self.resize3Columns(event)}else if(self.mdLineMove){event.preventDefault();self.resizeMdColumns(event)}});self.body.bind("mouseup",function(event){self.stopResize();$("#noteMask").css("z-index",-1)});var everLeftWidth;$(".layout-toggler-preview").click(function(){var $t=$(this);var $p=self.leftColumn.parent();if($t.hasClass("open")){var totalWidth=$p.width();var minRightWidth=22;var leftWidth=totalWidth-minRightWidth;everLeftWidth=self.leftColumn.width();self.leftColumn.width(leftWidth);self.rightColumn.css("left","auto").width(minRightWidth);$t.removeClass("open");self.rightColumn.find(".layout-resizer").removeClass("open");$(".preview-container").hide()}else{$t.addClass("open");self.rightColumn.find(".layout-resizer").addClass("open");self.leftColumn.width(everLeftWidth);$(".preview-container").show();self.rightColumn.css("left",everLeftWidth).width("auto");if(MD){MD.onResize()}}})},stopResize:function(){var self=this;if(self.lineMove||self.mdLineMove){ajaxGet("/user/updateColumnWidth",{mdEditorWidth:UserInfo.MdEditorWidth,notebookWidth:UserInfo.NotebookWidth,noteListWidth:UserInfo.NoteListWidth},function(){})}self.lineMove=false;self.mdLineMove=false;$(".noteSplit").css("background","none");self.mdSplitter.css("background","none")},set3ColumnsWidth:function(notebookWidth,noteListWidth){var self=this;if(notebookWidth<150||noteListWidth<100){return}var noteWidth=self.body.width()-notebookWidth-noteListWidth;if(noteWidth<400){return}self.leftNotebook.width(notebookWidth);self.notebookSplitter.css("left",notebookWidth);self.noteAndEditor.css("left",notebookWidth);self.noteList.width(noteListWidth);self.noteSplitter.css("left",noteListWidth);self.note.css("left",noteListWidth);UserInfo.NotebookWidth=notebookWidth;UserInfo.NoteListWidth=noteListWidth},resize3Columns:function(event,isFromeIfr){var self=this;if(isFromeIfr){event.clientX+=self.body.width()-self.note.width()}var notebookWidth,noteListWidth;if(self.lineMove){if(self.target=="notebookSplitter"){notebookWidth=event.clientX;noteListWidth=self.noteList.width();self.set3ColumnsWidth(notebookWidth,noteListWidth)}else{notebookWidth=self.leftNotebook.width();noteListWidth=event.clientX-notebookWidth;self.set3ColumnsWidth(notebookWidth,noteListWidth)}resizeEditor()}},resizeMdColumns:function(event){var self=this;if(self.mdLineMove){var mdEditorWidth=event.clientX-self.leftColumn.offset().left;self.setMdColumnWidth(mdEditorWidth)}},setMdColumnWidth:function(mdEditorWidth){var self=this;if(mdEditorWidth>100){UserInfo.MdEditorWidth=mdEditorWidth;log(mdEditorWidth);self.leftColumn.width(mdEditorWidth);self.rightColumn.css("left",mdEditorWidth)}if(MD){MD.onResize()}}};Mobile={noteO:$("#note"),bodyO:$("body"),setMenuO:$("#setMenu"),hashChange:function(){var self=Mobile;var hash=location.hash;if(hash.indexOf("noteId")!=-1){self.toEditor(false);var noteId=hash.substr(8);Note.changeNote(noteId,false,false)}else{self.toNormal(false)}},init:function(){var self=this;self.isMobile()},isMobile:function(){var u=navigator.userAgent;LEA.isMobile=false;LEA.isMobile=/Mobile|Android|iPhone|iPad/i.test(u);LEA.isIpad=/iPad/i.test(u);LEA.isIphone=/iPhone/i.test(u);if(!LEA.isMobile&&$(document).width()<=700){LEA.isMobile=true}return LEA.isMobile},changeNote:function(noteId){var self=this;if(!LEA.isMobile){return true}self.toEditor(true,noteId);return false},toEditor:function(changeHash,noteId){var self=this;self.bodyO.addClass("full-editor");self.noteO.addClass("editor-show")},toNormal:function(changeHash){var self=this;self.bodyO.removeClass("full-editor");self.noteO.removeClass("editor-show")},switchPage:function(){var self=this;if(!LEA.isMobile||LEA.isIpad){return true}if(self.bodyO.hasClass("full-editor")){self.toNormal(true)}else{self.toEditor(true)}return false}};function initSlimScroll(){if(Mobile.isMobile()){return}$("#notebook").slimScroll({height:"100%"});$("#noteItemList").slimScroll({height:"100%"});$("#wmd-panel-preview").slimScroll({height:"100%"});$("#wmd-panel-preview").css("width","100%")}function initEditor(){var mceToobarEverHeight=0;$("#moreBtn").click(function(){saveBookmark();var $editor=$("#editor");if($editor.hasClass("all-tool")){$editor.removeClass("all-tool")}else{$editor.addClass("all-tool")}restoreBookmark()});tinymce.init({inline:true,theme:"leanote",valid_children:"+pre[div|#text|p|span|textarea|i|b|strong]",setup:function(ed){ed.on("keydown",function(e){var num=e.which?e.which:e.keyCode;if(Note.readOnly&&!((e.ctrlKey||e.metaKey)&&num==67)){e.preventDefault();return}Note.saveNote(e)});ed.on("click",function(e){})},convert_urls:true,relative_urls:false,remove_script_host:false,selector:"#editorContent",content_css:["/css/editor/editor.css"],skin:"custom",language:LEA.locale,plugins:["autolink link leaui_image leaui_mind lists charmap hr","paste","searchreplace leanote_nav leanote_code tabfocus","table directionality textcolor"],toolbar1:"formatselect | forecolor backcolor | bold italic underline strikethrough | leaui_image leaui_mind | leanote_code leanote_inline_code | bullist numlist | alignleft aligncenter alignright alignjustify",toolbar2:"outdent indent blockquote | link unlink | table | hr removeformat | subscript superscript |searchreplace | pastetext pasteCopyImage | leanote_ace_pre | fontselect fontsizeselect",menubar:false,toolbar_items_size:"small",statusbar:false,url_converter:false,font_formats:"Arial=arial,helvetica,sans-serif;"+"Arial Black=arial black,avant garde;"+"Times New Roman=times new roman,times;"+"Courier New=courier new,courier;"+"Tahoma=tahoma,arial,helvetica,sans-serif;"+"Verdana=verdana,geneva;"+"宋体=SimSun;"+"新宋体=NSimSun;"+"黑体=SimHei;"+"微软雅黑=Microsoft YaHei",block_formats:"Header 1=h1;Header 2=h2;Header 3=h3;Header 4=h4;Paragraph=p",paste_data_images:true});window.onbeforeunload=function(e){Note.curChangedSaveIt()};$("body").on("keydown",Note.saveNote)}var random=1;function scrollTo(self,tagName,text){var iframe=$("#editorContent");var target=iframe.find(tagName+":contains("+text+")");random++;var navs=$('#leanoteNavContent [data-a="'+tagName+"-"+encodeURI(text)+'"]');var len=navs.size();for(var i=0;i=i+1){target=target.eq(i);var top=iframe.scrollTop()-iframe.offset().top+target.offset().top;iframe.animate({scrollTop:top},300);return}}$(function(){$(window).resize(function(){Mobile.isMobile();resizeEditor()});initEditor();$(".folderHeader").click(function(){var body=$(this).next();var p=$(this).parent();if(!body.is(":hidden")){$(".folderNote").removeClass("opened").addClass("closed");p.removeClass("opened").addClass("closed");$(this).find(".fa-angle-down").removeClass("fa-angle-down").addClass("fa-angle-right")}else{$(".folderNote").removeClass("opened").addClass("closed");p.removeClass("closed").addClass("opened");$(this).find(".fa-angle-right").removeClass("fa-angle-right").addClass("fa-angle-down")}});$(".leanoteNav h1").on("click",function(e){var $leanoteNav=$(this).closest(".leanoteNav");if(!$leanoteNav.hasClass("unfolder")){$leanoteNav.addClass("unfolder")}else{$leanoteNav.removeClass("unfolder")}});function openSetInfoDialog(whichTab){showDialogRemote("/user/account",{tab:whichTab})}$("#setInfo").click(function(){openSetInfoDialog(0)});$("#wrongEmail").click(function(){openSetInfoDialog(1)});$("#setAvatarMenu").click(function(){showDialog2("#avatarDialog",{title:"头像设置",postShow:function(){}})});$("#setTheme").click(function(){showDialog2("#setThemeDialog",{title:"主题设置",postShow:function(){if(!UserInfo.Theme){UserInfo.Theme="default"}$("#themeForm input[value='"+UserInfo.Theme+"']").attr("checked",true)}})});$("#themeForm").on("click","input",function(e){var val=$(this).val();$("#themeLink").attr("href","/css/theme/"+val+".css");ajaxPost("/user/updateTheme",{theme:val},function(re){if(reIsOk(re)){UserInfo.Theme=val}})});if(!UserInfo.Verified){}$("#notebook, #newMyNote, #myProfile, #topNav, #notesAndSort","#leanoteNavTrigger").bind("selectstart",function(e){e.preventDefault();return false});function updateLeftIsMin(is){ajaxGet("/user/updateLeftIsMin",{leftIsMin:is})}function minLeft(save){$("#leftNotebook").width(30);$("#notebook").hide();$("#noteAndEditor").css("left",30);$("#notebookSplitter").hide();$("#logo").hide();$("#leftSwitcher").hide();$("#leftSwitcher2").show();$("#leftNotebook .slimScrollDiv").hide();if(save){updateLeftIsMin(true)}}function maxLeft(save){$("#noteAndEditor").css("left",UserInfo.NotebookWidth);$("#leftNotebook").width(UserInfo.NotebookWidth);$("#notebook").show();$("#notebookSplitter").show();$("#leftSwitcher2").hide();$("#logo").show();$("#leftSwitcher").show();$("#leftNotebook .slimScrollDiv").show();if(save){updateLeftIsMin(false)}}$("#leftSwitcher2").on("click",function(){maxLeft(true)});$("#leftSwitcher").click("click",function(){if(Mobile.switchPage()){minLeft(true)}});function getMaxDropdownHeight(obj){var offset=$(obj).offset();var maxHeight=$(document).height()-offset.top;maxHeight-=70;if(maxHeight<0){maxHeight=0}var preHeight=$(obj).find("ul").height();return preHeight/gi,"\n").replace(//g,">");pre.html(value);var id=pre.attr("id");if(!id){id=me.getAceId();pre.attr("id",id)}me.initAce(id)}}(pre))}},10)},allToPre:function(editor){if(!this.canAndIsAce()){return}var me=this;if(me.clearIntervalForInitAce){clearInterval(me.clearIntervalForInitAce)}me.clearIntervalForInitAce=setTimeout(function(){var content=$(editor.getBody());var pres=content.find("pre");for(var i=0;i/gi,"\n");pre.html(value);var id=pre.attr("id");if(!id){id=me.getAceId();pre.attr("id",id)}me.initAce(id)}}}(pre))}},10)},destroyAceFromContent:function(everContent){if(!this.canAce()){return}var pres=everContent.find("pre");for(var i=0;i0){everBrush=m[0]}return everBrush},preToAce:function(pre,force){if(!force&&!this.canAce()){return}var $pre=$(pre);var id=this.getAceId();$pre.attr("id",id);var editor=this.initAce(id,"",true);if(editor){editor.focus()}},aceToPre:function(pre,isFocus){var me=this;var $pre=$(pre);var aceEditorAndPre=me.isInAce($pre);if(aceEditorAndPre){var aceEditor=aceEditorAndPre[0];var $pre=aceEditorAndPre[1];var value=aceEditor.getValue();if(isAceError(value)){value=$pre.html()}value=value.replace(//g,">");var replacePre=$('
      '+value+"
      ");$pre.replaceWith(replacePre);aceEditor.destroy();me._aceEditors[$pre.attr("id")]=null;if(isFocus){setTimeout(function(){var tinymceEditor=tinymce.activeEditor;var selection=tinymceEditor.selection;var rng=selection.getRng();rng.selectNode(replacePre.get(0));tinymceEditor.focus();replacePre.trigger("click");replacePre.html(value+" ")},0)}}},handleEvent:function(){if(!this.canAce()){return}var me=this;$("#editorContent").on("mouseenter","pre",function(){var $t=$(this);$raw=$t.find(".toggle-raw");if($raw.length==0){$t.append('
      ')}$input=$t.find(".toggle-raw input");if(LeaAce.isInAce($t)){$input.prop("checked",true)}else{$input.prop("checked",false)}});$("#editorContent").on("mouseleave","pre",function(){var $raw=$(this).find(".toggle-raw");$raw.remove()});$("#editorContent").on("change",".toggle-raw input",function(){var checked=$(this).prop("checked");var $pre=$(this).closest("pre");if(checked){me.preToAce($pre,true)}else{me.aceToPre($pre,true)}})}};function initPage(){$(function(){Notebook.renderNotebooks(notebooks);Share.renderShareNotebooks(sharedUserInfos,shareNotebooks);if(curSharedNoteNotebookId){Share.firstRenderShareNote(curSharedUserId,curSharedNoteNotebookId,curNoteId)}else{Note.setNoteCache(noteContentJson);Note.renderNotes(notes);if(curNoteId){setTimeout(function(){Note.changeNoteForPjax(curNoteId,true,curNotebookId)});if(!curNotebookId){Notebook.selectNotebook($(tt('#notebook [notebookId="?"]',Notebook.allNotebookId)))}}}if(latestNotes.length>0){for(var i=0;i code handleEvent: function () { if(!this.canAce()) { return; } var me = this; - $("#editorContent").on('mouseenter', 'pre', function(){ + $("#editorContent").on('mouseenter', 'pre', function(e) { // log('in'); // log($(this)); var $t = $(this); $raw = $t.find('.toggle-raw'); if($raw.length == 0) { - $t.append('
      '); + var curToggleRaw = $('
      '); + $t.append(curToggleRaw); + me.curToggleRaw = curToggleRaw; } $input = $t.find('.toggle-raw input'); if(LeaAce.isInAce($t)) { @@ -1361,20 +1380,49 @@ LeaAce = { $("#editorContent").on('change', '.toggle-raw input', function(){ var checked = $(this).prop('checked'); var $pre = $(this).closest('pre'); - if(checked) { + if (checked) { // 转成ace me.preToAce($pre, true); } else { me.aceToPre($pre, true); } }); + + // 当ace里没有内容时, 连续删除则把ace remove掉 + // keydown的delete事件没有 + var lastDeleteTime; + $("#editorContent").on('keyup', 'pre', function(e) { + var keyCode = e.keyCode; + // console.log('keyup'); + if(keyCode == 8 || keyCode == 46) { // BackSpace || Delete + // console.log('delete'); + if(!lastDeleteTime) { + lastDeleteTime = (new Date()).getTime(); + } + else { + var now = (new Date()).getTime(); + if(now - lastDeleteTime < 300) { // 间隔时间很短 + var inAce = me.isInAce($(this)) + if(inAce && !inAce[0].getValue()) { + // console.log('destroy'); + inAce[0].destroy(); + $(this).remove(); + return; + } + } + lastDeleteTime = now; + } + // console.log($(this)); + } + }); } }; // note.html调用 // 实始化页面 function initPage() { - $(function() { + // 不要用$(function() {}) 因为要等到");if(lastEndScriptPos==-1){return content}var length=content.length;if(length-9==lastEndScriptPos){var lastScriptPos=content.lastIndexOf("");if(lastEndScriptPos==-1){return content}var length=content.length;if(length-9==lastEndScriptPos){var lastScriptPos=content.lastIndexOf("