var locationpath="root";var parentpath="null";var ap;var zipTimer;$(function(){getServerOS();showFolderView(locationpath);$(document).click(function(e){var filetable=$("#filetable")[0];if(e.target!==filetable&&!$.contains(filetable,e.target)){$(".filerow").removeClass("info")}});$('#audioPlayerModal').on('hidden.bs.modal',function(e){if(ap!=null){ap.seek(0);ap.pause()}});$('#downloadAllCheckedModal').on('hidden.bs.modal',function(e){if(zipTimer!=null){window.clearInterval(zipTimer)}});$('#loginModal').on('hidden.bs.modal',function(e){$("#accountid").val('');$("#accountpwd").val('')})});function doAlert(){alert("kiftd错误:无法连接到服务器,请检查网络连接或服务器运行状态。")}function getServerOS(){$.ajax({type:"POST",dataType:"text",data:{},url:"homeController/getServerOS.ajax",success:function(result){if(result=="mustLogin"){window.location.href="login.html"}$("#serverOS").text(result)},error:function(){$("#serverOS").html("获取失败,点击重试")}})}function showFolderView(fid){startLoading();$.ajax({type:'POST',dataType:'text',data:{fid:fid},url:'homeController/getFolderView.ajax',success:function(result){endLoading();if(result=="mustLogin"){window.location.href="login.html"}else{var folderView=eval("("+result+")");locationpath=folderView.folder.folderId;parentpath=folderView.folder.folderParent;showParentList(folderView);showAccountView(folderView);showPublishTime(folderView);showFolderTable(folderView)}},error:function(){endLoading();doAlert();$("#tb").html("获取失败,请尝试刷新");$("#publishTime").html("获取失败,请尝试刷新");$("#parentlistbox").html("获取失败,请尝试刷新")}})}function startLoading(){$('#loadingModal').modal({backdrop:'static',keyboard:false});$('#loadingModal').modal('show')}function endLoading(){$('#loadingModal').modal('hide')}function startLogin(){$("#accountid").attr('disabled','disabled');$("#accountpwd").attr('disabled','disabled');$("#dologinButton").attr('disabled','disabled')}function finishLogin(){$("#accountid").removeAttr('disabled','disabled');$("#accountpwd").removeAttr('disabled','disabled');$("#dologinButton").removeAttr('disabled','disabled')}function dologin(){var accountId=$("#accountid").val();var accountPwd=$("#accountpwd").val();var check="y";if(accountId.length==0){$("#accountidbox").addClass("has-error");check="n"}else{$("#accountidbox").removeClass("has-error")}if(accountPwd.length==0){$("#accountpwdbox").addClass("has-error");check="n"}else{$("#accountpwdbox").removeClass("has-error")}if(check=="y"){startLogin();$.ajax({url:'homeController/getPublicKey.ajax',type:'POST',data:{},dataType:'text',success:function(result){var publicKeyInfo=eval("("+result+")");var date=new Date();var loginInfo='{accountId:"'+accountId+'",accountPwd:"'+accountPwd+'",time:"'+publicKeyInfo.time+'"}';var encrypt=new JSEncrypt();encrypt.setPublicKey(publicKeyInfo.publicKey);var encrypted=encrypt.encrypt(loginInfo);sendLoginInfo(encrypted)},error:function(){finishLogin();$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:登录请求失败,请检查网络或服务器运行状态")}})}}function sendLoginInfo(encrypted){$.ajax({type:"POST",dataType:"text",url:"homeController/doLogin.ajax",data:{encrypted:encrypted},success:function(result){finishLogin();$("#alertbox").removeClass("alert");$("#alertbox").removeClass("alert-danger");$("#alertbox").text("");switch(result){case"permitlogin":$("#accountidbox").removeClass("has-error");$("#accountpwdbox").removeClass("has-error");$('#loginModal').modal('hide');showFolderView(locationpath);break;case"accountnotfound":$("#accountidbox").addClass("has-error");$("#accountpwdbox").removeClass("has-error");$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:登录失败,账户不存在或未设置");break;case"accountpwderror":$("#accountpwdbox").addClass("has-error");$("#accountidbox").removeClass("has-error");$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:登录失败,密码错误或未设置");break;case"error":$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:登录失败,登录请求无法通过效验(可能是请求耗时过长导致的)");break;default:$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:无法登录,未知错误");break}},error:function(){finishLogin();$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:登录请求失败,请检查网络或服务器运行状态")}})}function dologout(){$('#logoutModal').modal('hide');$.ajax({url:'homeController/doLogout.ajax',type:'POST',data:{},dataType:'text',success:function(result){if(result=="SUCCESS"){showFolderView(locationpath)}},error:function(){doAlert()}})}function showParentList(folderView){$("#parentlistbox").html("");var f=folderView.folder;var index=0;$.each(folderView.parentList,function(n,val){if(index<=3){$("#parentlistbox").append(" / ");index++}else{}});if(index>3){$("#parentlistbox").append("... / ")}$("#parentlistbox").append(f.folderName)}function showAccountView(folderView){$("#tb").html("");if(folderView.account!=null){$("#tb").append("")}else{$("#tb").append("")}var authList=folderView.authList;if(authList!=null){if(checkAuth(authList,"C")){$("#parentlistbox").append("")}if(checkAuth(authList,"U")){$("#parentlistbox").append("")}if(checkAuth(authList,"L")){$("#parentlistbox").append("")}if(checkAuth(authList,"D")){$("#parentlistbox").append("")}}}function checkAuth(authList,auth){var k=false;$.each(authList,function(n,a){if(a==auth){k=true}});return k}function showPublishTime(folderView){$("#publishTime").html("");var pt="";if(folderView.publishTime!=null){pt=folderView.publishTime}else{pt="--"}$("#publishTime").text(pt)}function refreshFolderView(){if(locationpath!=null&&locationpath.length>0){showFolderView(locationpath)}else{showFolderView('root')}}function returnPF(){if(parentpath!=null&&parentpath!="null"){showFolderView(parentpath)}else{showFolderView('root')}}function showFolderTable(folderView){$("#foldertable").html("");if(parentpath!=null&&parentpath!="null"){$("#foldertable").append("--------")}var authList=folderView.authList;var aD=false;var aR=false;var aL=false;if(checkAuth(authList,"D")){aD=true}if(checkAuth(authList,"R")){aR=true}if(checkAuth(authList,"L")){aL=true}$.each(folderView.folderList,function(n,f){var folderRow=""+f.folderCreationDate+"--"+f.folderCreator+"";if(aD){folderRow=folderRow+""}if(aR){folderRow=folderRow+""}if(!aR&&!aD){folderRow=folderRow+"--"}folderRow=folderRow+"";$("#foldertable").append(folderRow)});$.each(folderView.fileList,function(n,fi){var fileRow=""+fi.fileName+""+fi.fileCreationDate+""+fi.fileSize+"MB"+fi.fileCreator+"";if(aL){fileRow=fileRow+"";if(getSuffix(fi.fileName)=="mp4"||getSuffix(fi.fileName)=="webm"){fileRow=fileRow+""}else if(getSuffix(fi.fileName)=="pdf"){fileRow=fileRow+""}else if(getSuffix(fi.fileName)=="jpg"||getSuffix(fi.fileName)=="jpeg"||getSuffix(fi.fileName)=="gif"||getSuffix(fi.fileName)=="png"||getSuffix(fi.fileName)=="bmp"){fileRow=fileRow+""}else if(getSuffix(fi.fileName)=="mp3"||getSuffix(fi.fileName)=="wav"||getSuffix(fi.fileName)=="ogg"){fileRow=fileRow+""}}if(aD){fileRow=fileRow+""}if(aR){fileRow=fileRow+""}if(!aR&&!aD&&!aL){fileRow=fileRow+"--"}fileRow=fileRow+"";$("#foldertable").append(fileRow)})}function showNewFolderModel(){$("#foldername").val("");$('#newFolderModal').modal('toggle')}function createfolder(){var fn=$("#foldername").val();var reg=new RegExp("^[0-9a-zA-Z_\\u4E00-\\u9FFF]+$","g");if(fn.length==0){showFolderAlert("提示:文件夹名称不能为空。")}else if(fn.length>20){showFolderAlert("提示:文件夹名称太长。")}else if(reg.test(fn)){$("#folderalert").removeClass("alert");$("#folderalert").removeClass("alert-danger");$("#foldernamebox").removeClass("has-error");$("#folderalert").text("");$.ajax({type:"POST",dataType:"text",data:{parentId:locationpath,folderName:fn},url:"homeController/newFolder.ajax",success:function(result){if(result=="mustLogin"){window.location.href="login.html"}else{if(result=="noAuthorized"){showFolderAlert("提示:您的操作未被授权,创建文件夹失败")}else if(result=="errorParameter"){showFolderAlert("提示:参数不正确,创建文件夹失败")}else if(result=="cannotCreateFolder"){showFolderAlert("提示:出现意外错误,可能未能创建文件夹")}else if(result=="folderAlreadyExist"){showFolderAlert("提示:该文件夹已经存在,请更换文件夹名称")}else if(result=="createFolderSuccess"){$('#newFolderModal').modal('hide');showFolderView(locationpath)}else{$('#newFolderModal').modal('hide');showFolderView(locationpath)}}},error:function(){showFolderAlert("提示:出现意外错误,可能未能创建文件夹")}})}else{showFolderAlert("提示:文件夹名只能包含英文字母、数组、汉字和下划线。")}}function showFolderAlert(txt){$("#folderalert").addClass("alert");$("#folderalert").addClass("alert-danger");$("#foldernamebox").addClass("has-error");$("#folderalert").text(txt)}function entryFolder(folderId){showFolderView(folderId)}function showDeleteFolderModel(folderId,folderName){$('#deleteFolderBox').html("");$("#dmbutton").attr('disabled',false);$('#deleteFolderMessage').text("提示:确定要彻底删除文件夹:["+folderName+"]及其全部内容么?该操作不可恢复");$('#deleteFolderModal').modal('toggle')}function deleteFolder(folderId){$("#dmbutton").attr('disabled',true);$('#deleteFolderMessage').text("提示:正在删除,请稍候...");$.ajax({type:"POST",dataType:"text",data:{folderId:folderId},url:"homeController/deleteFolder.ajax",success:function(result){if(result=="mustLogin"){window.location.href="login.html"}else{if(result=="noAuthorized"){$('#deleteFolderMessage').text("提示:您的操作未被授权,删除文件夹失败");$("#dmbutton").attr('disabled',false)}else if(result=="errorParameter"){$('#deleteFolderMessage').text("提示:参数不正确,删除文件夹失败");$("#dmbutton").attr('disabled',false)}else if(result=="cannotDeleteFolder"){$('#deleteFolderMessage').text("提示:出现意外错误,可能未能删除文件夹");$("#dmbutton").attr('disabled',false)}else if(result=="deleteFolderSuccess"){$('#deleteFolderModal').modal('hide');showFolderView(locationpath)}else{$('#deleteFolderMessage').text("提示:出现意外错误,可能未能删除文件夹");$("#dmbutton").attr('disabled',false)}}},error:function(){$('#deleteFolderMessage').text("提示:出现意外错误,可能未能删除文件夹");$("#dmbutton").attr('disabled',false)}})}function showRenameFolderModel(folderId,folderName){$("#newfolderalert").removeClass("alert");$("#newfolderalert").removeClass("alert-danger");$("#folderrenamebox").removeClass("has-error");$("#newfolderalert").text("");$("#renameFolderBox").html("");$("#newfoldername").val(folderName);$("#renameFolderModal").modal('toggle')}function renameFolder(folderId){var newName=$("#newfoldername").val();var reg=new RegExp("^[0-9a-zA-Z_\\u4E00-\\u9FFF]+$","g");if(newName.length==0){showRenameFolderAlert("提示:文件夹名称不能为空。")}else if(newName.length>20){showRenameFolderAlert("提示:文件夹名称太长。")}else if(reg.test(newName)){$("#newfolderalert").removeClass("alert");$("#newfolderalert").removeClass("alert-danger");$("#folderrenamebox").removeClass("has-error");$("#newfolderalert").text("");$.ajax({type:"POST",dataType:"text",data:{folderId:folderId,newName:newName},url:"homeController/renameFolder.ajax",success:function(result){if(result=="mustLogin"){window.location.href="login.html"}else{if(result=="noAuthorized"){showRenameFolderAlert("提示:您的操作未被授权,重命名失败")}else if(result=="errorParameter"){showRenameFolderAlert("提示:参数不正确,重命名失败")}else if(result=="cannotRenameFolder"){showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件夹")}else if(result=="renameFolderSuccess"){$('#renameFolderModal').modal('hide');showFolderView(locationpath)}else{showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件夹")}}},error:function(){showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件夹")}})}else{showRenameFolderAlert("提示:文件夹名只能包含英文字母、数组、汉字和下划线")}}function showRenameFolderAlert(txt){$("#newfolderalert").addClass("alert");$("#newfolderalert").addClass("alert-danger");$("#folderrenamebox").addClass("has-error");$("#newfolderalert").text(txt)}function showUploadFileModel(){$("#uploadFileAlert").removeClass("alert");$("#uploadFileAlert").removeClass("alert-danger");$("#uploadFileAlert").text("");$('#uploadFileModal').modal('toggle')}function checkpath(){$('#uploadfile').click()}function showfilepath(){var fs=$("#uploadfile").get(0).files;var filename="";for(var i=0;i1){$("#filecount").text("("+count+"/"+fcount+")")}$("#uploadstatus").prepend("

"+fname+"[正在上传...]

");xhr=new XMLHttpRequest();var fd=new FormData();fd.append("file",uploadfile);fd.append("folderId",locationpath);xhr.open("POST","homeController/douploadFile.ajax",true);xhr.upload.addEventListener("progress",uploadProgress,false);xhr.send(fd);xhr.onloadend=function(){if(xhr.status===200){var result=xhr.responseText;if(result=="uploadsuccess"){$("#uls_"+count).text("[已完成]");if(count未找到要上传的文件[失败]

")}}function uploadProgress(evt){if(evt.lengthComputable){var percentComplete=Math.round((evt.loaded)*100/evt.total);$("#pros").width(percentComplete+"%")}}function showUploadFileAlert(txt){$("#uploadFileAlert").addClass("alert");$("#uploadFileAlert").addClass("alert-danger");$("#uploadFileAlert").text(txt);$("#umbutton").attr('disabled',false)}function showDownloadModel(fileId,fileName){$("#downloadModal").modal('toggle');$("#downloadFileName").text("提示:您确认要下载文件:["+fileName+"]么?");$("#downloadFileBox").html("");$("#dlmbutton").attr('disabled',false)}function dodownload(fileId){$("#dlmbutton").attr('disabled',true);$("#downloadFileName").text("提示:准备开始下载,请稍候...");var t=setTimeout("$('#downloadModal').modal('hide');",800);window.location.href="homeController/downloadFile.do?fileId="+fileId}function showDeleteFileModel(fileId,fileName){$('#deleteFileBox').html("");$("#dfmbutton").attr('disabled',false);$('#deleteFileMessage').text("提示:确定要彻底删除文件:["+fileName+"]么?该操作不可恢复");$('#deleteFileModal').modal('toggle')}function deleteFile(fileId){$("#dfmbutton").attr('disabled',true);$('#deleteFileMessage').text("提示:正在删除,请稍候...");$.ajax({type:"POST",dataType:"text",data:{fileId:fileId},url:"homeController/deleteFile.ajax",success:function(result){if(result=="mustLogin"){window.location.href="login.html"}else{if(result=="noAuthorized"){$('#deleteFileMessage').text("提示:您的操作未被授权,删除失败");$("#dfmbutton").attr('disabled',false)}else if(result=="errorParameter"){$('#deleteFileMessage').text("提示:参数不正确,删除失败");$("#dfmbutton").attr('disabled',false)}else if(result=="cannotDeleteFile"){$('#deleteFileMessage').text("提示:出现意外错误,可能未能删除文件");$("#dfmbutton").attr('disabled',false)}else if(result=="deleteFileSuccess"){$('#deleteFileModal').modal('hide');showFolderView(locationpath)}else{$('#deleteFileMessage').text("提示:出现意外错误,可能未能删除文件");$("#dfmbutton").attr('disabled',false)}}},error:function(){$('#deleteFileMessage').text("提示:出现意外错误,可能未能删除文件");$("#dfmbutton").attr('disabled',false)}})}function showRenameFileModel(fileId,fileName){$("#newFileNamealert").removeClass("alert");$("#newFileNamealert").removeClass("alert-danger");$("#filerenamebox").removeClass("has-error");$("#newFileNamealert").text("");$("#renameFileBox").html("");$("#newfilename").val(fileName);$("#renameFileModal").modal('toggle')}function renameFile(fileId){var reg=new RegExp("[\/\|\\s\\\\\*\\<\\>"+'"'+"]+","g");var newFileName=$("#newfilename").val();if(newFileName.length>0){if(newFileName.length<128){if(!reg.test(newFileName)){$.ajax({type:"POST",dataType:"text",data:{fileId:fileId,newFileName:newFileName},url:"homeController/renameFile.ajax",success:function(result){if(result=="mustLogin"){window.location.href="login.html"}else{if(result=="cannotRenameFile"){showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件")}else if(result=="renameFileSuccess"){$('#renameFileModal').modal('hide');showFolderView(locationpath)}else if(result=="errorParameter"){showRenameFolderAlert("提示:参数错误,重命名失败")}else if(result=="noAuthorized"){showRenameFolderAlert("提示:您的操作未被授权,重命名失败")}else{showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件")}}},error:function(){showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件")}})}else{showRenameFolderAlert("提示:文件名中不应含有:空格 引号 / \ * | < > ")}}else{showRenameFolderAlert("提示:文件名称太长")}}else{showRenameFolderAlert("提示:文件名不能为空")}}function showRenameFolderAlert(txt){$("#newFileNamealert").addClass("alert");$("#newFileNamealert").addClass("alert-danger");$("#filerenamebox").addClass("has-error");$("#newFileNamealert").text(txt)}function abortUpload(){if(xhr!=null){xhr.abort();$("#umbutton").attr('disabled',false);$("#pros").width("0%");$("#filecount").text("")}$("#uploadfile").val("");$("#filepath").val("");$("#uploadstatus").html("");$("#selectcount").text("");$('#uploadFileModal').modal('hide');showFolderView(locationpath)}function getSuffix(filename){var index1=filename.lastIndexOf(".");var index2=filename.length;var suffix=filename.substring(index1+1,index2);return suffix.toLowerCase()}function playVideo(fileId){window.open("quickview/video.html?fileId="+fileId)}function pdfView(fileId){window.open("homeController/pdfView.do?fileId="+fileId)}function showPicture(fileId){$.ajax({url:"homeController/getPrePicture.ajax",data:{fileId:fileId},type:"POST",dataType:"text",success:function(result){if(result!="ERROR"){var pvl=eval("("+result+")");var imageslist=document.createElement("ul");$.each(pvl.pictureViewList,function(n,val){var image=new Image();image.src="fileblocks/"+val.filePath;image.alt=val.fileName;var imagerow=document.createElement("li");imagerow.appendChild(image);imageslist.appendChild(imagerow)});viewer=new Viewer(imageslist,{hidden:function(){viewer.destroy()}});viewer.view(pvl.index);viewer.show()}else{alert("错误:无法定位要预览的文件或该操作未被授权。")}},error:function(){alert("错误:请求失败,请刷新重试。")}})}function checkfile(fileId){if(!window.event.shiftKey){$(".filerow").removeClass("info");$("#"+fileId).addClass("info")}else{if($("#"+fileId).hasClass("info")){$("#"+fileId).removeClass("info")}else{$("#"+fileId).addClass("info")}}}var checkAll=true;function checkallfile(){if(checkAll){$(".filerow").addClass("info");checkAll=false}else{$(".filerow").removeClass("info");checkAll=true}}function showDownloadAllCheckedModel(){$("#downloadAllCheckedBox").html("");$("#downloadAllCheckedLoad").text("");var checkedfiles=$(".info").get();if(checkedfiles.length==0){$("#downloadAllCheckedName").text("提示:您还未选择任何文件,请先选中一些文件后再执行本操作(点击某一文件行来选中单一文件;按住Shift并点击文件行选中多个文件;点击列表的表头来选中/取消选中所有文件)。")}else{$("#downloadAllCheckedName").text("提示:您确认要打包并下载这"+checkedfiles.length+"项么?");$("#downloadAllCheckedBox").html("");$("#dclmbutton").attr('disabled',false)}$("#downloadAllCheckedModal").modal('toggle')}function downloadAllChecked(){$("#dclmbutton").attr('disabled',true);var checkedfiles=$(".info").get();var downloadIdArray=new Array();for(var i=0;i全部删除");$('#deleteFileMessage').text("提示:确定要彻底删除这"+checkedfiles.length+"项么?该操作不可恢复")}$('#deleteFileModal').modal('toggle')}function deleteAllChecked(){var checkedfiles=$(".info").get();var downloadIdArray=new Array();for(var i=0;i