diff --git a/README.md b/README.md index 919381c..f8f97e8 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # kiftd——青阳网络文件系统 # ## 一款小型、便捷、开源的个人网盘系统。 ## +_外网访问太慢?可以转至国内托管地址进行下载: https://gitee.com/kohgylw/kiftd 需要从github上浏览项目?可以访问github上的项目主页: https://github.com/KOHGYLW/kiftd_ + ### 什么是kift? * 您还在使用U盘分享软件么? > 很不幸,U盘易丢,同时又无法兼容各种平台的文件系统,在需要大规模分享时--通过U盘拷贝简直就像是接力赛一样原始又低效。 @@ -19,13 +21,6 @@ _注:kift的解压即用版就叫做kiftd_ -------------------- -马上知道kift的优势: -* 安装快速,只需3分钟即可将网盘服务器安装完毕,解压就好,不能更快速了。 -* 跨越平台,无论是Windows还是Linux又或是Mac,都能随时开启这个网盘服务器。 -* 功能专业,不要被它看似“简单”的页面给蒙蔽了。kift在页面响应速度如丝般顺滑的基础上,具备着视频播放、PDF预览、图片查看等主流公共网盘所具有的功能。光是这一点,就已经很有吸引力了。 -* 开源免费,您还在担心隐藏代码偷偷挖矿?kift是完全开源的,您可以很轻松地查看它的源代码,也可以将其拷贝下来自行编译部署。爱护用户平台硬件,从开源做起。此外,它不会产生任何遗留,能够做到轻轻地走就如轻轻地来,卸载时绝对不会和你卖萌。 -* 使用方便,kiftd的目标是让最小白的用户也能顺利使用它,并避免国外软件带来的文字障碍。 ------------------- 最新讯息: ### kift重大更新:v1.0.1 @@ -34,10 +29,18 @@ _这是kift完全具备完整功能的第一个版本,推荐所有用户更新 + 新增登录控制功能。现在您终于可以设定用户是直接访问主页还是需要先进入登录页面登录后才可访问主页了。本人经过思考后觉得这项功能对于个人用户而言十分重要,能够为个人用户提供更强的隐私性。感谢之前使用邮件提出此建议的使用者。详见《说明文档》。 + 新增高效的批量上传、批量下载和批量删除功能。很多kift的用户经常需要大规模地上传、下载文件,现在,kift能够批量上传多个文件,此外也可以对多个文件进行打包下载。当然,还可以将选中的文件一次性删除。详见《说明文档》 + 更新版本并保留原有文件的方法现已加入《说明文档》,您可以按照上面的指示来进行更新并保留网盘中原有的文件。 + +------------------- +马上知道kift的优势: +* 安装快速,只需3分钟即可将网盘服务器安装完毕,解压就好,不能更快速了。 +* 跨越平台,无论是Windows还是Linux又或是Mac,都能随时开启这个网盘服务器。 +* 功能专业,不要被它看似“简单”的页面给蒙蔽了。kift在页面响应速度如丝般顺滑的基础上,具备着视频播放、PDF预览、图片查看等主流公共网盘所具有的功能。光是这一点,就已经很有吸引力了。 +* 开源免费,您还在担心隐藏代码偷偷挖矿?kift是完全开源的,您可以很轻松地查看它的源代码,也可以将其拷贝下来自行编译部署。爱护用户平台硬件,从开源做起。此外,它不会产生任何遗留,能够做到轻轻地走就如轻轻地来,卸载时绝对不会和你卖萌。 +* 使用方便,kiftd的目标是让最小白的用户也能顺利使用它,并避免国外软件带来的文字障碍。 ------------------- ### 只需抽出3分钟时间,您就可以在您自己的电脑上搭建出一个专业快捷的网盘服务器了。 -* 马上下载本网盘服务器?请点击右上方绿色按钮“Clone or Download”,之后选择“Download ZIP”进行下载。 +* 马上下载本网盘服务器?请点击右上方绿色按钮“Clone or Download”,之后选择“Download ZIP”进行下载,也可以前往国内托管的下载地址: https://gitee.com/kohgylw/kiftd (码云) * 率先预览?请访问主页:https://github.com/KOHGYLW/kiftd/wiki 浏览如何一分钟快速开始。 * 在线阅读《说明文档》?请直接点击上方文件列表中的《说明文档》来在线预览,它是本应用的完全体说明说,您可以通过它来了解关于本应用的全部内容。 * 立刻获取开源代码?请访问本应用代码托管地址:https://github.com/KOHGYLW/KohgylwIFT diff --git a/webapps/.DS_Store b/webapps/.DS_Store index c28b7b8..f1035f1 100644 Binary files a/webapps/.DS_Store and b/webapps/.DS_Store differ diff --git a/webapps/ROOT/.DS_Store b/webapps/ROOT/.DS_Store index fd49125..5008ddf 100644 Binary files a/webapps/ROOT/.DS_Store and b/webapps/ROOT/.DS_Store differ diff --git a/webapps/ROOT/META-INF/maven/kohgylw/KohgylwIFT/pom.properties b/webapps/ROOT/META-INF/maven/kohgylw/KohgylwIFT/pom.properties index 4b5d6ca..603bbac 100644 --- a/webapps/ROOT/META-INF/maven/kohgylw/KohgylwIFT/pom.properties +++ b/webapps/ROOT/META-INF/maven/kohgylw/KohgylwIFT/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven Integration for Eclipse -#Thu Mar 22 15:10:21 CST 2018 +#Fri Mar 23 08:34:28 CST 2018 version=0.0.1-SNAPSHOT groupId=kohgylw m2e.projectName=KohgylwIFT diff --git a/webapps/ROOT/WEB-INF/classes/kohgylw/filter/MastLoginFilter.class b/webapps/ROOT/WEB-INF/classes/kohgylw/filter/MastLoginFilter.class index ca0b7a2..d5b204d 100644 Binary files a/webapps/ROOT/WEB-INF/classes/kohgylw/filter/MastLoginFilter.class and b/webapps/ROOT/WEB-INF/classes/kohgylw/filter/MastLoginFilter.class differ diff --git a/webapps/ROOT/css/overrall.min.css b/webapps/ROOT/css/overrall.min.css index 6c407c3..e35e74f 100644 --- a/webapps/ROOT/css/overrall.min.css +++ b/webapps/ROOT/css/overrall.min.css @@ -1 +1 @@ -@charset "UTF-8";.titlebox{height:30px;line-height:30px;padding-top:5px;padding-bottom:5px;padding-left:10px;padding-right:10px;position:relative;bottom:-7px}.titletext{color:#000;font-size:22px}.graytext{color:#8b8b8b}.subtitle{color:#5cacee;text-align:center}.rightbtn{border-right:10px;float:right;margin-left:10px}.heading{height:8px}.centerText{text-align:center} \ No newline at end of file +@charset "UTF-8";.titlebox{height:30px;line-height:30px;padding-top:5px;padding-bottom:5px;padding-left:10px;padding-right:10px;position:relative;bottom:-7px}.titletext{color:#000;font-size:22px}.graytext{color:#8b8b8b}.subtitle{color:#5cacee;text-align:center}.rightbtn{border-right:10px;float:right;margin-left:10px}.heading{height:8px}.centerText{text-align:center}.uploadstatusbox{color:#9c9c9c;font-size:4px;height:48px;overflow:auto}html{height:100%}body{height:100%} \ No newline at end of file diff --git a/webapps/ROOT/home.jsp b/webapps/ROOT/home.jsp index b91cf34..516aa4b 100644 --- a/webapps/ROOT/home.jsp +++ b/webapps/ROOT/home.jsp @@ -13,7 +13,7 @@ KIFT - + @@ -371,5 +371,5 @@ - + \ No newline at end of file diff --git a/webapps/ROOT/js/home.min.js b/webapps/ROOT/js/home.min.js index be449e4..f56fb1d 100644 --- a/webapps/ROOT/js/home.min.js +++ b/webapps/ROOT/js/home.min.js @@ -1,4 +1,4 @@ /** * home.jsp */ -var locationpath="root";var parentpath="null";$(function(){getServerOS();showFolderView("root")});function getServerOS(){$.ajax({type:"POST",dataType:"text",data:{},url:"homeController/getServerOS.ajax",success:function(result){$("#serverOS").text(result)},error:function(){$("#serverOS").html("获取失败,点击重试")}})}function showFolderView(fid){$.ajax({type:"POST",dataType:"text",data:{fid:fid},url:"homeController/getFolderView.ajax",success:function(result){var folderView=eval("("+result+")");locationpath=folderView.folder.folderId;parentpath=folderView.folder.folderParent;showParentList(folderView);showAccountView(folderView);showPublishTime(folderView);showFolderTable(folderView)},error:function(){$("#tb").html("获取失败,请尝试刷新");$("#publishTime").html("获取失败,请尝试刷新");$("#parentlistbox").html("获取失败,请尝试刷新")}})}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"){$.ajax({type:"POST",dataType:"text",url:"homeController/doLogin.ajax",data:{accountid:accountid,accountpwd:accountpwd},success:function(result){$("#alertbox").removeClass("alert");$("#alertbox").removeClass("alert-danger");$("#alertbox").text("");if(result=="permitlogin"){$("#accountidbox").removeClass("has-error");$("#accountpwdbox").removeClass("has-error");window.location.href="home.jsp"}else{if(result=="accountnotfound"){$("#accountidbox").addClass("has-error");$("#accountpwdbox").removeClass("has-error");$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:登录失败,账户不存在或未设置")}else{if(result=="accountpwderror"){$("#accountpwdbox").addClass("has-error");$("#accountidbox").removeClass("has-error");$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:登录失败,密码错误或未设置")}else{$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:无法登录,未知错误")}}}},error:function(){$("#alertbox").addClass("alert");$("#alertbox").addClass("alert-danger");$("#alertbox").text("提示:登录请求失败,请检查网络或服务器运行状态")}})}}function dologout(){$("#logoutModal").modal("hide");window.location.href="homeController/doLogout.do"}function showParentList(folderView){$("#parentlistbox").html("");var f=folderView.folder;var index=0;$.each(folderView.parentList,function(n,val){if(index<=6){$("#parentlistbox").append(" / ");index++}else{}});if(index>6){$("#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("")}}}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+""}}}}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=="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=="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=="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(){$("#umbutton").attr("disabled",false);$("#uploadfile").val("");$("#filepath").val("");$("#pros").width("0%");$("#uploadFileAlert").removeClass("alert");$("#uploadFileAlert").removeClass("alert-danger");$("#uploadFileAlert").text("");$("#uploadFileModal").modal("toggle")}function checkpath(){$("#uploadfile").click()}function showfilepath(){var fp=$("#uploadfile").val();$("#filepath").val(fp)}function checkUploadFile(){$("#umbutton").attr("disabled",true);$("#uploadFileAlert").removeClass("alert");$("#uploadFileAlert").removeClass("alert-danger");$("#uploadFileAlert").text("");var filename=$("#filepath").val().replace(/^.+?\\([^\\]+?)?$/gi,"$1");$.ajax({type:"POST",dataType:"text",data:{folderId:locationpath,filename:filename},url:"homeController/checkUploadFile.ajax",success:function(result){if(result=="errorParameter"){showUploadFileAlert("提示:参数不正确,无法开始上传")}else{if(result=="noAuthorized"){showUploadFileAlert("提示:您的操作未被授权,无法开始上传")}else{if(result=="duplicationFileName"){showUploadFileAlert("提示:存在重命名文件,无法开始上传")}else{if(result=="permitUpload"){doupload()}else{showUploadFileAlert("提示:出现意外错误,无法开始上传")}}}}},error:function(){showUploadFileAlert("提示:出现意外错误,无法开始上传")}})}var xhr;function doupload(){$("#pros").width("0%");var uploadfile=$("#uploadfile").get(0).files[0];if(uploadfile!=null){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"){$("#uploadFileModal").modal("hide");$("#umbutton").attr("disabled",false);showFolderView(locationpath)}else{if(result=="uploaderror"){showUploadFileAlert("提示:出现意外错误,上传失败")}else{$("#uploadFileModal").modal("hide")}}}else{showUploadFileAlert("提示:出现意外错误,上传失败")}}}else{showUploadFileAlert("提示:未选择任何文件")}}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=="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=="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()}$("#uploadFileModal").modal("hide")}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("homeController/playVideo.do?fileId="+fileId)}function pdfView(fileId){window.open("homeController/pdfView.do?fileId="+fileId)}function showPicture(fileId){window.open("homeController/showPicture.do?fileId="+fileId)}; \ No newline at end of file +function getServerOS(){$.ajax({type:"POST",dataType:"text",data:{},url:"homeController/getServerOS.ajax",success:function(a){"mustLogin"==a&&(window.location.href="login.jsp"),$("#serverOS").text(a)},error:function(){$("#serverOS").html("获取失败,点击重试")}})}function showFolderView(fid){$.ajax({type:"POST",dataType:"text",data:{fid:fid},url:"homeController/getFolderView.ajax",success:function(result){if("mustLogin"==result)window.location.href="login.jsp";else{var folderView=eval("("+result+")");locationpath=folderView.folder.folderId,parentpath=folderView.folder.folderParent,showParentList(folderView),showAccountView(folderView),showPublishTime(folderView),showFolderTable(folderView)}},error:function(){$("#tb").html("获取失败,请尝试刷新"),$("#publishTime").html("获取失败,请尝试刷新"),$("#parentlistbox").html("获取失败,请尝试刷新")}})}function dologin(){var a=$("#accountid").val(),b=$("#accountpwd").val(),c="y";0==a.length?($("#accountidbox").addClass("has-error"),c="n"):$("#accountidbox").removeClass("has-error"),0==b.length?($("#accountpwdbox").addClass("has-error"),c="n"):$("#accountpwdbox").removeClass("has-error"),"y"==c&&$.ajax({type:"POST",dataType:"text",url:"homeController/doLogin.ajax",data:{accountid:a,accountpwd:b},success:function(a){$("#alertbox").removeClass("alert"),$("#alertbox").removeClass("alert-danger"),$("#alertbox").text(""),"permitlogin"==a?($("#accountidbox").removeClass("has-error"),$("#accountpwdbox").removeClass("has-error"),window.location.href="home.jsp"):"accountnotfound"==a?($("#accountidbox").addClass("has-error"),$("#accountpwdbox").removeClass("has-error"),$("#alertbox").addClass("alert"),$("#alertbox").addClass("alert-danger"),$("#alertbox").text("提示:登录失败,账户不存在或未设置")):"accountpwderror"==a?($("#accountpwdbox").addClass("has-error"),$("#accountidbox").removeClass("has-error"),$("#alertbox").addClass("alert"),$("#alertbox").addClass("alert-danger"),$("#alertbox").text("提示:登录失败,密码错误或未设置")):($("#alertbox").addClass("alert"),$("#alertbox").addClass("alert-danger"),$("#alertbox").text("提示:无法登录,未知错误"))},error:function(){$("#alertbox").addClass("alert"),$("#alertbox").addClass("alert-danger"),$("#alertbox").text("提示:登录请求失败,请检查网络或服务器运行状态")}})}function dologout(){$("#logoutModal").modal("hide"),window.location.href="homeController/doLogout.do"}function showParentList(a){var b,c;$("#parentlistbox").html(""),b=a.folder,c=0,$.each(a.parentList,function(a,b){3>=c&&($("#parentlistbox").append(" / "),c++)}),c>3&&$("#parentlistbox").append("... / "),$("#parentlistbox").append(b.folderName)}function showAccountView(a){$("#tb").html(""),null!=a.account?$("#tb").append(""):$("#tb").append("");var b=a.authList;null!=b&&(checkAuth(b,"C")&&$("#parentlistbox").append(""),checkAuth(b,"U")&&$("#parentlistbox").append(""),checkAuth(b,"L")&&$("#parentlistbox").append(""),checkAuth(b,"D")&&$("#parentlistbox").append(""))}function checkAuth(a,b){var c=!1;return $.each(a,function(a,d){d==b&&(c=!0)}),c}function showPublishTime(a){$("#publishTime").html("");var b="";b=null!=a.publishTime?a.publishTime:"--",$("#publishTime").text(b)}function refreshFolderView(){null!=locationpath&&locationpath.length>0?showFolderView(locationpath):showFolderView("root")}function returnPF(){null!=parentpath&&"null"!=parentpath?showFolderView(parentpath):showFolderView("root")}function showFolderTable(a){var b,c,d,e;$("#foldertable").html(""),null!=parentpath&&"null"!=parentpath&&$("#foldertable").append("--------"),b=a.authList,c=!1,d=!1,e=!1,checkAuth(b,"D")&&(c=!0),checkAuth(b,"R")&&(d=!0),checkAuth(b,"L")&&(e=!0),$.each(a.folderList,function(a,b){var e=""+b.folderCreationDate+"--"+b.folderCreator+"";c&&(e=e+""),d&&(e=e+""),d||c||(e+="--"),e+="",$("#foldertable").append(e)}),$.each(a.fileList,function(a,b){var f=""+b.fileName+""+b.fileCreationDate+""+b.fileSize+"MB"+b.fileCreator+"";e&&(f=f+"","mp4"==getSuffix(b.fileName)||"webm"==getSuffix(b.fileName)?f=f+"":"pdf"==getSuffix(b.fileName)?f=f+"":("jpg"==getSuffix(b.fileName)||"jpeg"==getSuffix(b.fileName)||"gif"==getSuffix(b.fileName)||"png"==getSuffix(b.fileName)||"bmp"==getSuffix(b.fileName))&&(f=f+"")),c&&(f=f+""),d&&(f=f+""),d||c||e||(f+="--"),f+="",$("#foldertable").append(f)})}function showNewFolderModel(){$("#foldername").val(""),$("#newFolderModal").modal("toggle")}function createfolder(){var a=$("#foldername").val(),b=new RegExp("^[0-9a-zA-Z_\\u4E00-\\u9FFF]+$","g");0==a.length?showFolderAlert("提示:文件夹名称不能为空。"):a.length>20?showFolderAlert("提示:文件夹名称太长。"):b.test(a)?($("#folderalert").removeClass("alert"),$("#folderalert").removeClass("alert-danger"),$("#foldernamebox").removeClass("has-error"),$("#folderalert").text(""),$.ajax({type:"POST",dataType:"text",data:{parentId:locationpath,folderName:a},url:"homeController/newFolder.ajax",success:function(a){"mustLogin"==a?window.location.href="login.jsp":"noAuthorized"==a?showFolderAlert("提示:您的操作未被授权,创建文件夹失败"):"errorParameter"==a?showFolderAlert("提示:参数不正确,创建文件夹失败"):"cannotCreateFolder"==a?showFolderAlert("提示:出现意外错误,可能未能创建文件夹"):"folderAlreadyExist"==a?showFolderAlert("提示:该文件夹已经存在,请更换文件夹名称"):"createFolderSuccess"==a?($("#newFolderModal").modal("hide"),showFolderView(locationpath)):($("#newFolderModal").modal("hide"),showFolderView(locationpath))},error:function(){showFolderAlert("提示:出现意外错误,可能未能创建文件夹")}})):showFolderAlert("提示:文件夹名只能包含英文字母、数组、汉字和下划线。")}function showFolderAlert(a){$("#folderalert").addClass("alert"),$("#folderalert").addClass("alert-danger"),$("#foldernamebox").addClass("has-error"),$("#folderalert").text(a)}function entryFolder(a){showFolderView(a)}function showDeleteFolderModel(a,b){$("#deleteFolderBox").html(""),$("#dmbutton").attr("disabled",!1),$("#deleteFolderMessage").text("提示:确定要彻底删除文件夹:["+b+"]及其全部内容么?该操作不可恢复"),$("#deleteFolderModal").modal("toggle")}function deleteFolder(a){$("#dmbutton").attr("disabled",!0),$("#deleteFolderMessage").text("提示:正在删除,请稍候..."),$.ajax({type:"POST",dataType:"text",data:{folderId:a},url:"homeController/deleteFolder.ajax",success:function(a){"mustLogin"==a?window.location.href="login.jsp":"noAuthorized"==a?($("#deleteFolderMessage").text("提示:您的操作未被授权,删除文件夹失败"),$("#dmbutton").attr("disabled",!1)):"errorParameter"==a?($("#deleteFolderMessage").text("提示:参数不正确,删除文件夹失败"),$("#dmbutton").attr("disabled",!1)):"cannotDeleteFolder"==a?($("#deleteFolderMessage").text("提示:出现意外错误,可能未能删除文件夹"),$("#dmbutton").attr("disabled",!1)):"deleteFolderSuccess"==a?($("#deleteFolderModal").modal("hide"),showFolderView(locationpath)):($("#deleteFolderMessage").text("提示:出现意外错误,可能未能删除文件夹"),$("#dmbutton").attr("disabled",!1))},error:function(){$("#deleteFolderMessage").text("提示:出现意外错误,可能未能删除文件夹"),$("#dmbutton").attr("disabled",!1)}})}function showRenameFolderModel(a,b){$("#newfolderalert").removeClass("alert"),$("#newfolderalert").removeClass("alert-danger"),$("#folderrenamebox").removeClass("has-error"),$("#newfolderalert").text(""),$("#renameFolderBox").html(""),$("#newfoldername").val(b),$("#renameFolderModal").modal("toggle")}function renameFolder(a){var b=$("#newfoldername").val(),c=new RegExp("^[0-9a-zA-Z_\\u4E00-\\u9FFF]+$","g");0==b.length?showRenameFolderAlert("提示:文件夹名称不能为空。"):b.length>20?showRenameFolderAlert("提示:文件夹名称太长。"):c.test(b)?($("#newfolderalert").removeClass("alert"),$("#newfolderalert").removeClass("alert-danger"),$("#folderrenamebox").removeClass("has-error"),$("#newfolderalert").text(""),$.ajax({type:"POST",dataType:"text",data:{folderId:a,newName:b},url:"homeController/renameFolder.ajax",success:function(a){"mustLogin"==a?window.location.href="login.jsp":"noAuthorized"==a?showRenameFolderAlert("提示:您的操作未被授权,重命名失败"):"errorParameter"==a?showRenameFolderAlert("提示:参数不正确,重命名失败"):"cannotRenameFolder"==a?showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件夹"):"renameFolderSuccess"==a?($("#renameFolderModal").modal("hide"),showFolderView(locationpath)):showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件夹")},error:function(){showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件夹")}})):showRenameFolderAlert("提示:文件夹名只能包含英文字母、数组、汉字和下划线")}function showRenameFolderAlert(a){$("#newfolderalert").addClass("alert"),$("#newfolderalert").addClass("alert-danger"),$("#folderrenamebox").addClass("has-error"),$("#newfolderalert").text(a)}function showUploadFileModel(){$("#uploadFileAlert").removeClass("alert"),$("#uploadFileAlert").removeClass("alert-danger"),$("#uploadFileAlert").text(""),$("#uploadFileModal").modal("toggle")}function checkpath(){$("#uploadfile").click()}function showfilepath(){var c,a=$("#uploadfile").get(0).files,b="";for(c=0;c1&&$("#filecount").text("("+a+"/"+c+")"),$("#uploadstatus").prepend("

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

"),xhr=new XMLHttpRequest,f=new FormData,f.append("file",d),f.append("folderId",locationpath),xhr.open("POST","homeController/douploadFile.ajax",!0),xhr.upload.addEventListener("progress",uploadProgress,!1),xhr.send(f),xhr.onloadend=function(){if(200===xhr.status){var b=xhr.responseText;"uploadsuccess"==b?($("#uls_"+a).text("[已完成]"),c>a?doupload(a+1):($("#uploadfile").val(""),$("#filepath").val(""),$("#pros").width("0%"),$("#uploadFileModal").modal("hide"),$("#umbutton").attr("disabled",!1),showFolderView(locationpath),$("#filecount").text(""),$("#uploadstatus").text(""),$("#selectcount").text(""))):"uploaderror"==b?(showUploadFileAlert("提示:出现意外错误,文件:["+e+"]上传失败,上传被中断。"),$("#uls_"+a).text("[失败]")):($("#uploadFileModal").modal("hide"),$("#uls_"+a).text("[失败]"))}else showUploadFileAlert("提示:出现意外错误,文件:["+e+"]上传失败,上传被中断。"),$("#uls_"+a).text("[失败]")}):(showUploadFileAlert("提示:要上传的文件不存在。"),$("#uploadstatus").prepend("

未找到要上传的文件[失败]

"))}function uploadProgress(a){if(a.lengthComputable){var b=Math.round(100*a.loaded/a.total);$("#pros").width(b+"%")}}function showUploadFileAlert(a){$("#uploadFileAlert").addClass("alert"),$("#uploadFileAlert").addClass("alert-danger"),$("#uploadFileAlert").text(a),$("#umbutton").attr("disabled",!1)}function showDownloadModel(a,b){$("#downloadModal").modal("toggle"),$("#downloadFileName").text("提示:您确认要下载文件:["+b+"]么?"),$("#downloadFileBox").html(""),$("#dlmbutton").attr("disabled",!1)}function dodownload(a){$("#dlmbutton").attr("disabled",!0),$("#downloadFileName").text("提示:准备开始下载,请稍候..."),setTimeout("$('#downloadModal').modal('hide');",800),window.location.href="homeController/downloadFile.do?fileId="+a}function showDeleteFileModel(a,b){$("#deleteFileBox").html(""),$("#dfmbutton").attr("disabled",!1),$("#deleteFileMessage").text("提示:确定要彻底删除文件:["+b+"]么?该操作不可恢复"),$("#deleteFileModal").modal("toggle")}function deleteFile(a){$("#dfmbutton").attr("disabled",!0),$("#deleteFileMessage").text("提示:正在删除,请稍候..."),$.ajax({type:"POST",dataType:"text",data:{fileId:a},url:"homeController/deleteFile.ajax",success:function(a){"mustLogin"==a?window.location.href="login.jsp":"noAuthorized"==a?($("#deleteFileMessage").text("提示:您的操作未被授权,删除失败"),$("#dfmbutton").attr("disabled",!1)):"errorParameter"==a?($("#deleteFileMessage").text("提示:参数不正确,删除失败"),$("#dfmbutton").attr("disabled",!1)):"cannotDeleteFile"==a?($("#deleteFileMessage").text("提示:出现意外错误,可能未能删除文件"),$("#dfmbutton").attr("disabled",!1)):"deleteFileSuccess"==a?($("#deleteFileModal").modal("hide"),showFolderView(locationpath)):($("#deleteFileMessage").text("提示:出现意外错误,可能未能删除文件"),$("#dfmbutton").attr("disabled",!1))},error:function(){$("#deleteFileMessage").text("提示:出现意外错误,可能未能删除文件"),$("#dfmbutton").attr("disabled",!1)}})}function showRenameFileModel(a,b){$("#newFileNamealert").removeClass("alert"),$("#newFileNamealert").removeClass("alert-danger"),$("#filerenamebox").removeClass("has-error"),$("#newFileNamealert").text(""),$("#renameFileBox").html(""),$("#newfilename").val(b),$("#renameFileModal").modal("toggle")}function renameFile(a){var b=new RegExp('[/|\\s\\\\*\\<\\>"]+',"g"),c=$("#newfilename").val();c.length>0?c.length<128?b.test(c)?showRenameFolderAlert("提示:文件名中不应含有:空格 引号 / * | < > "):$.ajax({type:"POST",dataType:"text",data:{fileId:a,newFileName:c},url:"homeController/renameFile.ajax",success:function(a){"mustLogin"==a?window.location.href="login.jsp":"cannotRenameFile"==a?showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件"):"renameFileSuccess"==a?($("#renameFileModal").modal("hide"),showFolderView(locationpath)):"errorParameter"==a?showRenameFolderAlert("提示:参数错误,重命名失败"):"noAuthorized"==a?showRenameFolderAlert("提示:您的操作未被授权,重命名失败"):showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件")},error:function(){showRenameFolderAlert("提示:出现意外错误,可能未能重命名文件")}}):showRenameFolderAlert("提示:文件名称太长"):showRenameFolderAlert("提示:文件名不能为空")}function showRenameFolderAlert(a){$("#newFileNamealert").addClass("alert"),$("#newFileNamealert").addClass("alert-danger"),$("#filerenamebox").addClass("has-error"),$("#newFileNamealert").text(a)}function abortUpload(){null!=xhr&&(xhr.abort(),$("#umbutton").attr("disabled",!1),$("#pros").width("0%"),$("#filecount").text("")),$("#uploadfile").val(""),$("#filepath").val(""),$("#uploadstatus").html(""),$("#selectcount").text(""),$("#uploadFileModal").modal("hide"),showFolderView(locationpath)}function getSuffix(a){var b=a.lastIndexOf("."),c=a.length,d=a.substring(b+1,c);return d.toLowerCase()}function playVideo(a){window.open("homeController/playVideo.do?fileId="+a)}function pdfView(a){window.open("homeController/pdfView.do?fileId="+a)}function showPicture(a){window.open("homeController/showPicture.do?fileId="+a)}function checkfile(a){$("#"+a).hasClass("info")?$("#"+a).removeClass("info"):$("#"+a).addClass("info")}function checkallfile(){checkAll?($(".filerow").addClass("info"),checkAll=!1):($(".filerow").removeClass("info"),checkAll=!0)}function showDownloadAllCheckedModel(){$("#downloadFileBox").html("");var a=$(".info").get();0==a.length?$("#downloadFileName").text("提示:您还未选择任何文件,请先选中一些文件后再执行本操作(您可以通过点击某一文件行来选中/取消选中文件,也可以通过点击列表上的“文件名”一栏来选中/取消选中所有文件)"):($("#downloadFileName").text("提示:您确认要打包并下载这"+a.length+"项么?"),$("#downloadFileBox").html(""),$("#dlmbutton").attr("disabled",!1)),$("#downloadModal").modal("toggle")}function downloadAllChecked(){var c,d,f,g,a=$(".info").get(),b=new Array;for(c=0;c全部删除"),$("#deleteFileMessage").text("提示:确定要彻底删除这"+a.length+"项么?该操作不可恢复")),$("#deleteFileModal").modal("toggle")}function deleteAllChecked(){var c,d,a=$(".info").get(),b=new Array;for(c=0;c