pull/216/head
BingoKingo 2021-02-06 20:19:02 +08:00
parent 31d84269ff
commit a41c5307ae
2 changed files with 239 additions and 56 deletions

View File

@ -80,7 +80,7 @@
</tbody> </tbody>
</table> </table>
具体地,您可以下载/复制体验一下或参考示例中运用tfo.html的[Li Share Storage Mini](https://tfo.herokuapp.com/ "Li Share Storage Mini")。需要注意:**主题默认隐藏了多盘切换栏**。目前主题仍存在诸多问题请谅解。PS:主题将要实现的功能有狠多,敬请期待...但是自愿附加组件如评论系统、站长工具、访问统计等涉及到其他平台的私密内容不包含在主题内若有需要请自行寻找在后台添加。主题的php历史版本请到<a href="./theme/" title="Old Theme">Theme</a>文件夹查看 具体地,您可以下载/复制体验一下或参考示例中运用tfo.html的[Li Share Storage Mini](https://tfo.herokuapp.com/ "Li Share Storage Mini")。需要注意:**主题含多盘切换栏,悬浮在路径栏上可见**。目前主题仍存在诸多问题请谅解。PS:主题将要实现的功能有狠多,敬请期待...但是自愿附加组件如评论系统、站长工具、访问统计等涉及到其他平台的私密内容不包含在主题内若有需要请自行寻找在后台添加。主题的php历史版本请到<a href="./theme/" title="Old Theme">Theme</a>文件夹查看.
## Deploy 部署 ## Deploy 部署
### Deploy to Heroku ### Deploy to Heroku

View File

@ -20,7 +20,7 @@
<meta http-equiv=X-UA-Compatible content="IE=edge"> <meta http-equiv=X-UA-Compatible content="IE=edge">
<meta name=viewport content="width=device-width,initial-scale=1;minimum-scale=1,maximum-scale=1,user-scalable=no,initial-scale=1"> <meta name=viewport content="width=device-width,initial-scale=1;minimum-scale=1,maximum-scale=1,user-scalable=no,initial-scale=1">
<meta name="keywords" content="<!--Keywords-->"> <meta name="keywords" content="<!--Keywords-->">
<meta name="description" content="<!--Description-->"> <meta name="description" content="Power by Tfo's Theme for OneManager-php" />
<link rel="icon" href="<!--base_path-->favicon.ico" type="image/x-icon"> <link rel="icon" href="<!--base_path-->favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="<!--base_path-->favicon.ico" type="image/x-icon"> <link rel="shortcut icon" href="<!--base_path-->favicon.ico" type="image/x-icon">
<style type="text/css"> <style type="text/css">
@ -36,7 +36,7 @@
.list-header-container{position:relative} .list-header-container{position:relative}
.list-header-container a.back-link{color:#000000;display:inline-block;position:absolute;font-size:16px;margin:20px 10px;vertical-align:middle;text-decoration:none;padding:19px 19px;} .list-header-container a.back-link{color:#000000;display:inline-block;position:absolute;font-size:16px;margin:20px 10px;vertical-align:middle;text-decoration:none;padding:19px 19px;}
.list-container,.list-header-container,.list-wrapper,a.back-link:hover,body{color:#24292e} .list-container,.list-header-container,.list-wrapper,a.back-link:hover,body{color:#24292e}
.table-header{margin:0;border:0 none;padding:16px 24px;text-align:left;font-weight:400;word-break:break-all;word-wrap:break-word;color:#24292e;background-color:rgba(245,245,245,0.3);line-height:1.3} .table-header{margin:0;border:0 none;padding:16px 24px;text-align:left;font-weight:400;word-break:break-all;word-wrap:break-word;color:#24292e;background-color:rgba(245,245,245,0.3);line-height:1.3;font-size:18px}
.list-body-container{position:relative;left:0;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;background:rgba(245,245,245,0.6)} .list-body-container{position:relative;left:0;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;background:rgba(245,245,245,0.6)}
.more-disk{margin:0;border:0 none;font-weight:400;color:#000;white-space:nowrap;overflow:auto;padding:18px 18px;text-align:center;background-color:rgba(245,245,245,0.3)} .more-disk{margin:0;border:0 none;font-weight:400;color:#000;white-space:nowrap;overflow:auto;padding:18px 18px;text-align:center;background-color:rgba(245,245,245,0.3)}
.more-disk a{margin:0 2px;padding:5px;transition-duration:0.3s;border-radius:18px;background-color:transparent;color:#24292e;border:2px solid rgba(85,85,85,0.7);border:1px solid rgba(27,31,35,0);font-weight:bold} .more-disk a{margin:0 2px;padding:5px;transition-duration:0.3s;border-radius:18px;background-color:transparent;color:#24292e;border:2px solid rgba(85,85,85,0.7);border:1px solid rgba(27,31,35,0);font-weight:bold}
@ -56,10 +56,10 @@
.list-table .size,.list-table .updated_at{text-align:right} .list-table .size,.list-table .updated_at{text-align:right}
.mask{position:absolute;left:0px;top:0px;width:100%;background-color:#000;filter:alpha(opacity=30);opacity:0.3;z-index:2;} .mask{position:absolute;left:0px;top:0px;width:100%;background-color:#000;filter:alpha(opacity=30);opacity:0.3;z-index:2;}
.bkgd{<!--BackgroundStart-->background-repeat:no-repeat;background-size:cover;background-attachment:fixed;background-image:url("<!--BackgroundUrl-->");background-position:center;width:100%;height:100%;filter:blur(1px)brightness(88%);position:fixed;left:0;top:0;z-index:-1;<!--BackgroundEnd-->} .bkgd{<!--BackgroundStart-->background-repeat:no-repeat;background-size:cover;background-attachment:fixed;background-image:url("<!--BackgroundUrl-->");background-position:center;width:100%;height:100%;filter:blur(1px)brightness(88%);position:fixed;left:0;top:0;z-index:-1;<!--BackgroundEnd-->}
::selection{background-color:rgba(200,200,200,0.3)} ::selection{background-color:rgba(200,200,200,0.5)}
input{cursor:pointer;padding: 0 8px;height:24px;font-weight:bold;border:1px solid rgba(27,31,35,0);transition-duration: 0.3s;border-radius:16px;background-color:transparent;color:#24292e} input{cursor:pointer;padding: 0 8px;height:24px;font-weight:bold;border:1px solid rgba(27,31,35,0);transition-duration: 0.3s;border-radius:16px;background-color:transparent;color:#24292e}
input:focus{background:rgba(3,102,214,0.6);color:#FFF;box-shadow:0 1px 15px rgba(27,31,35,.15);border:1px solid rgba(27,31,35,.15);} input:focus{background:rgba(3,102,214,0.6);color:#FFF;box-shadow:0 1px 15px rgba(27,31,35,.15);border:1px solid rgba(27,31,35,.15);}
textarea{font-weight:bold;border:1px solid rgba(27,31,35,0);transition-duration: 0.3s;border-radius:6px;background-color:transparent;color:#24292e} textarea{font-weight:bold;border:1px solid rgba(27,31,35,0);transition-duration: 0.3s;border-radius:6px;background-color:transparent;color:#24292e;resize: none;}
textarea:focus{box-shadow:0 1px 15px rgba(27,31,35,.15);} textarea:focus{box-shadow:0 1px 15px rgba(27,31,35,.15);}
.txt-right,.vlink{display:none !important;} .txt-right,.vlink{display:none !important;}
.vinput {border:1px solid rgba(27,31,35,0) !important;width:50% !important;} .vinput {border:1px solid rgba(27,31,35,0) !important;width:50% !important;}
@ -67,21 +67,26 @@
.veditor:focus{background:transparent !important;border:1px solid rgba(27,31,35,.15) !important;} .veditor:focus{background:transparent !important;border:1px solid rgba(27,31,35,.15) !important;}
.veditor{border:1px solid rgba(27,31,35,0) !important;height:fit-content !important;width:100% !important;} .veditor{border:1px solid rgba(27,31,35,0) !important;height:fit-content !important;width:100% !important;}
.vwrap {border:0 !important;padding:0 !important;} .vwrap {border:0 !important;padding:0 !important;}
p,.veditor,.v,.vsys,.vtime,.vcontent,.vinput,.vbtn{color:#000000 !important;} p,.veditor,.v,.vsys,.vtime,.vcontent,.vinput,.vbtn,.vlogin-btn{color:#000000 !important;}
.vbtn{border-color:#000000 !important;} .vbtn{border-color:#000000 !important;}
.vicon{fill:#000000 !important;} .vicon{fill:#000000 !important;}
.v a{color:rgb(3,102,214) !important;} .v a{color:rgb(3,102,214) !important;}
.vat{font-style:italic !important;} .vat{font-style:italic !important;}
.vlogin{float:right !important;} .vlogin{float:right !important;}
.vlogin-btn{width:fit-content !important;height:fit-content !important;border:0 !important}
.v[data-class=v] *{line-height: 1.35 !important;} .v[data-class=v] *{line-height: 1.35 !important;}
.leancloud_visitors{float:right !important;padding:16px !important;} .leancloud_visitors{float:right !important;padding:16px !important;}
#vcomments{padding:16px !important;} #vcomments{padding:16px !important;}
#upload_div table tr{border-radius:6px !important;} #upload_div table tr{border-radius:6px !important;}
#upload_div{margin:10px} #upload_div{margin:10px}
#more-disk-div{display:none;} #more-disk-div{display:none;}
#curpath:hover #more-disk-div{display:block;}
#jinrishici{padding:12px !important;box-shadow:0 1px 8px rgba(27,31,35,0.8);} #jinrishici{padding:12px !important;box-shadow:0 1px 8px rgba(27,31,35,0.8);}
#curpath{font-size:16px;box-shadow:0 1px 8px rgba(27,31,35,0.8);} #curpath{font-size:16px;transition-duration:0.3s;box-shadow:0 1px 8px rgba(27,31,35,0.8);}
#create_input{width:94%;} #create_input{width:94%;}
::-webkit-scrollbar {width:6px;border-radius:2px;}
::-webkit-scrollbar-thumb {background-color:rgba(200,200,200,0.5);border-radius: 5px;}
::-webkit-scrollbar-track {box-shadow:0 1px 15px rgba(27,31,35,.15);background:transparent;}
.operate:hover ul{position:absolute;display:inline-table;} .operate:hover ul{position:absolute;display:inline-table;}
<!--AdminStart--> <!--AdminStart-->
.operate{display:inline-table;margin:0;margin-right:5px;list-style:none} .operate{display:inline-table;margin:0;margin-right:5px;list-style:none}
@ -434,7 +439,7 @@
<div class="list-body-container"> <div class="list-body-container">
<div class="readme" style="overflow:hidden"> <div class="readme" style="overflow:hidden">
<div id="vcomments"></div> <div id="vcomments"></div>
<script>new Waline({el:'#vcomments',serverURL: 'https://bkc.vercel.app/',visitor:true,lang:'en',meta:['nick','mail'],requiredFields:['nick'],placeholder:'Write your commtent here, please:)'})</script> <script>new Waline({el:'#vcomments',serverURL: 'https://bkc.vercel.app/',visitor:true,lang:'en',meta:['nick','mail'],requiredFields:['nick'],placeholder:'Write your comment here, please:)'})</script>
<span id="/" class="leancloud_visitors" data-flag-title="Your Article Title"> <span id="/" class="leancloud_visitors" data-flag-title="Your Article Title">
<em class="post-meta-item-text" style="color:#000000 !important;">Rd </em> <em class="post-meta-item-text" style="color:#000000 !important;">Rd </em>
<i class="leancloud-visitors-count" style="color:#000000 !important;">1000000</i> <i class="leancloud-visitors-count" style="color:#000000 !important;">1000000</i>
@ -467,6 +472,7 @@
<label id="rename_label"></label><br><br><a onclick="operatediv_close('rename')" class="operatediv_close"><!--constStr@Close--></a> <label id="rename_label"></label><br><br><a onclick="operatediv_close('rename')" class="operatediv_close"><!--constStr@Close--></a>
<form id="rename_form" onsubmit="return submit_operate('rename');"> <form id="rename_form" onsubmit="return submit_operate('rename');">
<input id="rename_sid" name="rename_sid" type="hidden" value=""> <input id="rename_sid" name="rename_sid" type="hidden" value="">
<input id="rename_fileid" name="rename_fileid" type="hidden" value="">
<input id="rename_hidden" name="rename_oldname" type="hidden" value=""> <input id="rename_hidden" name="rename_oldname" type="hidden" value="">
<input id="rename_input" name="rename_newname" type="text" value=""> <input id="rename_input" name="rename_newname" type="text" value="">
<input name="operate_action" type="submit" value="<!--constStr@Rename-->"> <input name="operate_action" type="submit" value="<!--constStr@Rename-->">
@ -579,7 +585,7 @@
<div style="color: rgba(247,247,249,0);text-align:center;text-shadow:0 1px 15px rgba(27,31,35,0);font-weight:bold;margin-top:6px"><!--FootStr--></div> <div style="color: rgba(247,247,249,0);text-align:center;text-shadow:0 1px 15px rgba(27,31,35,0);font-weight:bold;margin-top:6px"><!--FootStr--></div>
</body> </body>
<!--ListStart--> <!--ListStart-->
<!--MdRequireStart--><link rel="stylesheet" href="//unpkg.zhimg.com/github-markdown-css@3.0.1/github-markdown.css"> <!--MdRequireStart--><link rel="stylesheet" href="//tfo.herokuapp.com/index/Uploaded/WebContents/Github/Tfo/MdTheme/gb.css">
<script type="text/javascript" src="//unpkg.zhimg.com/marked@0.6.2/marked.min.js"></script><!--MdRequireEnd--> <script type="text/javascript" src="//unpkg.zhimg.com/marked@0.6.2/marked.min.js"></script><!--MdRequireEnd-->
<!--GuestUploadStart--><script type="text/javascript" src="//cdn.bootcss.com/spark-md5/3.0.0/spark-md5.min.js"></script><!--GuestUploadEnd--> <!--GuestUploadStart--><script type="text/javascript" src="//cdn.bootcss.com/spark-md5/3.0.0/spark-md5.min.js"></script><!--GuestUploadEnd-->
<!--IsFileStart--><!--IspdfFileStart--><script src="//cdn.bootcss.com/pdf.js/2.3.200/pdf.min.js"></script><!--IspdfFileEnd--><!--IsFileEnd--> <!--IsFileStart--><!--IspdfFileStart--><script src="//cdn.bootcss.com/pdf.js/2.3.200/pdf.min.js"></script><!--IspdfFileEnd--><!--IsFileEnd-->
@ -595,27 +601,6 @@
location.href = location.href; location.href = location.href;
} }
<!--ListStart--> <!--ListStart-->
/*var root = '<!--base_disk_path-->';
function path_format(path) {
path = '/' + path + '/';
while (path.indexOf('//') !== -1) {
path = path.replace('//', '/')
}
return path
}
document.querySelectorAll('.table-header').forEach(function (e) {
var path = e.innerText;
if (path.substr(path.length-1)=='/') path = path.substr(0, path.length-1);
var paths = path.split('/');
e.innerHTML = '/ ';
if (paths <= 2) return;
for (var i = 1; i < paths.length - 1; i++) {
var to = path_format(root + paths.slice(0, i + 1).join('/'));
e.innerHTML += '<a href="' + to + '">' + paths[i] + '</a> / '
}
e.innerHTML += paths[paths.length - 1];
e.innerHTML = e.innerHTML.replace(/\s\/\s$/, '')
});*/
<!--IsFileStart--> <!--IsFileStart-->
var $url = document.getElementById('url'); var $url = document.getElementById('url');
if ($url) { if ($url) {
@ -910,6 +895,24 @@
swal(tmptextarea.innerHTML+"<!--constStr@Success-->"); swal(tmptextarea.innerHTML+"<!--constStr@Success-->");
} }
<!--UploadJsStart--> <!--UploadJsStart-->
function size_format(num) {
if (num>1024) {
num=num/1024;
} else {
return num.toFixed(2) + ' B';
}
if (num>1024) {
num=num/1024;
} else {
return num.toFixed(2) + ' KB';
}
if (num>1024) {
num=num/1024;
} else {
return num.toFixed(2) + ' MB';
}
return num.toFixed(2) + ' GB';
}
function uploadbuttonhide() { function uploadbuttonhide() {
document.getElementById('upload_btns').style.display='none'; document.getElementById('upload_btns').style.display='none';
/*document.getElementById('upload_submit').disabled='disabled'; /*document.getElementById('upload_submit').disabled='disabled';
@ -924,6 +927,8 @@
document.getElementById('upload_submit').style.display=''; document.getElementById('upload_submit').style.display='';
document.getElementById('upload_file').style.display='';*/ document.getElementById('upload_file').style.display='';*/
} }
<!--UploadJsEnd-->
<!--OnedriveUploadJsStart-->
function preup() { function preup() {
uploadbuttonhide(); uploadbuttonhide();
var files=document.getElementById('upload_file').files; var files=document.getElementById('upload_file').files;
@ -963,6 +968,7 @@
return; return;
} }
upbigfilename = encodeURIComponent((file.webkitRelativePath||file.name)); upbigfilename = encodeURIComponent((file.webkitRelativePath||file.name));
var filemd5='';
<!--GuestStart--> <!--GuestStart-->
function getext(str) { function getext(str) {
strarry=str.split('.'); strarry=str.split('.');
@ -994,13 +1000,13 @@
if (asize < file.size) { if (asize < file.size) {
readblob(asize); readblob(asize);
} else { } else {
var filemd5 = spark.end(); filemd5 = spark.end();
td2.innerHTML='md5: '+filemd5; td2.innerHTML='md5: '+filemd5;
upbigfilename = filemd5+ext; upbigfilename = filemd5+ext;
<!--GuestEnd--> <!--GuestEnd-->
td2.innerHTML='<!--constStr@GetUploadLink--> ...'; td2.innerHTML='<!--constStr@GetUploadLink--> ...';
var xhr1 = new XMLHttpRequest(); var xhr1 = new XMLHttpRequest();
xhr1.open("GET", '?action=upbigfile&upbigfilename='+ upbigfilename +'&filesize='+ file.size +'&lastModified='+ file.lastModified); xhr1.open("POST", '?action=upbigfile');
xhr1.setRequestHeader('x-requested-with','XMLHttpRequest'); xhr1.setRequestHeader('x-requested-with','XMLHttpRequest');
xhr1.onprogress = function(e){ xhr1.onprogress = function(e){
td2.innerHTML+='.'; td2.innerHTML+='.';
@ -1035,7 +1041,7 @@
getuplink(i); getuplink(i);
} }
} }
xhr1.send(null); xhr1.send('upbigfilename='+ upbigfilename +'&filesize='+ file.size +'&filelastModified='+ file.lastModified +'&filemd5='+ filemd5);
<!--GuestStart--> <!--GuestStart-->
} }
} }
@ -1043,24 +1049,7 @@
} }
uploadbuttonshow(); uploadbuttonshow();
} }
function size_format(num) {
if (num>1024) {
num=num/1024;
} else {
return num.toFixed(2) + ' B';
}
if (num>1024) {
num=num/1024;
} else {
return num.toFixed(2) + ' KB';
}
if (num>1024) {
num=num/1024;
} else {
return num.toFixed(2) + ' MB';
}
return num.toFixed(2) + ' GB';
}
function binupfile(file,url,tdnum,filename){ function binupfile(file,url,tdnum,filename){
var label=document.getElementById('upfile_td2_'+tdnum); var label=document.getElementById('upfile_td2_'+tdnum);
var reader = new FileReader(); var reader = new FileReader();
@ -1167,6 +1156,192 @@
} }
} }
<!--UploadJsEnd--> <!--UploadJsEnd-->
<!--AliyundriveUploadJsStart-->
function preup() {
uploadbuttonhide();
var files=document.getElementById('upload_file').files;
if (files.length<1) {
uploadbuttonshow();
return;
};
var table1=document.createElement('table');
document.getElementById('upload_div').appendChild(table1);
table1.setAttribute('class','list-table');
var timea=new Date().getTime();
var i=0;
getuplink(i);
function getuplink(i, r=0) {
var file=files[i];
var td1;
var td2;
if (r==0) {
var tr1=document.createElement('tr');
table1.appendChild(tr1);
tr1.setAttribute('data-to',1);
td1=document.createElement('td');
tr1.appendChild(td1);
td1.setAttribute('style','width:30%;word-break:break-word;');
td1.setAttribute('id','upfile_td1_'+timea+'_'+i);
td1.innerHTML=(file.webkitRelativePath||file.name)+'<br>'+size_format(file.size);
td2=document.createElement('td');
tr1.appendChild(td2);
td2.setAttribute('id','upfile_td2_'+timea+'_'+i);
}
var tdnum = timea+'_'+i;
td1=document.getElementById('upfile_td1_'+tdnum);
td2=document.getElementById('upfile_td2_'+tdnum);
if (file.size>100*1024*1024*1024) {
td2.innerHTML='<font color="red"><!--constStr@UpFileTooLarge--></font>';
uploadbuttonshow();
return;
}
upbigfilename = encodeURIComponent((file.webkitRelativePath||file.name));
td2.innerHTML='计算SHA1 ...';
var reader = new FileReader();
reader.readAsArrayBuffer(file);
reader.onload = function(e){
var filesha1 = sha1(this.result);
td2.innerHTML='<!--constStr@GetUploadLink--> ...';
var xhr1 = new XMLHttpRequest();
xhr1.open("POST", '?action=upbigfile');
xhr1.setRequestHeader('x-requested-with','XMLHttpRequest');
xhr1.onload = function(e){
//console.log(xhr1.status+xhr1.responseText);
td2.innerHTML='<font color="red">'+xhr1.responseText+'</font>';
if (xhr1.status==201) {
if (xhr1.responseText=='') {
getuplink(i,1);
return;
}
var html=JSON.parse(xhr1.responseText);
//console.log(html);
if (!html['part_info_list']) {
if (html.name!='') {
if (html.exist==true) td2.innerHTML=html.name+' 文件名已有';
else if (html.rapid_upload==true) td2.innerHTML=html.name+' 秒传';
else td2.innerHTML='<font color="red">'+xhr1.responseText+'</font><br>';
td1.innerHTML='<div style="color:green"><a href="<!--base_disk_path--><!--Path-->'+html.name+'?preview" id="upfile_a_'+tdnum+'" target="_blank">'+td1.innerHTML+'</a><br><a href="<!--base_disk_path--><!--Path-->'+html.name+'" id="upfile_a1_'+tdnum+'"></a><!--constStr@UploadComplete--><button onclick="CopyAllDownloadUrl(\'#upfile_a1_'+tdnum+'\');" id="upfile_cpbt_'+tdnum+'" <!--AdminStart--> style="display:none"<!--AdminEnd--> ><!--constStr@CopyUrl--></button></div>';
} else {
td2.innerHTML='<font color="red">'+xhr1.responseText+'</font><br>';
}
} else {
td2.innerHTML='<!--constStr@UploadStart--> ...';
console.log(html['part_info_list'][0]['upload_url']);
binupfile(file,html['part_info_list'][0]['upload_url'],timea+'_'+i, upbigfilename, filesha1,html['file_id'],html['upload_id']);
}
}
if (i<files.length-1) {
i++;
getuplink(i);
}
}
xhr1.send('upbigfilename='+ upbigfilename +'&filesize='+ file.size +'&filelastModified='+ file.lastModified + '&filesha1=' + filesha1);
}
}
uploadbuttonshow();
}
function binupfile(file,url,tdnum,filename,filesha1,fileid,uploadid){
// xhr.getResponseHeader
var label=document.getElementById('upfile_td2_'+tdnum);
var reader = new FileReader();
var StartStr='';
var MiddleStr='';
var StartTime;
var EndTime;
var newstartsize = 0;
if(!!file){
var asize=0;
var totalsize=file.size;
var newstartsize=0;
StartTime = new Date();
asize = newstartsize;
if (newstartsize==0) {
StartStr='<!--constStr@UploadStartAt-->:' +StartTime.toLocaleString()+'<br>' ;
} else {
StartStr='<!--constStr@LastUpload-->'+size_format(newstartsize)+ '<br><!--constStr@ThisTime--><!--constStr@UploadStartAt-->:' +StartTime.toLocaleString()+'<br>' ;
}
//var chunksize=5*1024*1024; // chunk size, max 60M. 每小块上传大小
//if (totalsize>200*1024*1024) chunksize=10*1024*1024;
function readblob(start) {
//var end=start+chunksize;
//var blob = file.slice(start,end);
//reader.readAsArrayBuffer(blob);
reader.readAsArrayBuffer(file);
}
readblob(asize);
reader.onload = function(e){
var binary = this.result;
var xhr = new XMLHttpRequest();
xhr.open("PUT", url, true);
//xhr.setRequestHeader('x-requested-with','XMLHttpRequest');
bsize=asize+e.loaded-1;
xhr.setRequestHeader('Content-Range', 'bytes ' + asize + '-' + bsize +'/'+ totalsize);
xhr.upload.onprogress = function(e){
if (e.lengthComputable) {
var tmptime = new Date();
var tmpspeed = e.loaded*1000/(tmptime.getTime()-C_starttime.getTime());
var remaintime = (totalsize-asize-e.loaded)/tmpspeed;
label.innerHTML=StartStr+'<!--constStr@Upload--> ' +size_format(asize+e.loaded)+ ' / '+size_format(totalsize) + ' = ' + ((asize+e.loaded)*100/totalsize).toFixed(2) + '% <!--constStr@AverageSpeed-->:'+size_format((asize+e.loaded-newstartsize)*1000/(tmptime.getTime()-StartTime.getTime()))+'/s<br><!--constStr@CurrentSpeed--> '+size_format(tmpspeed)+'/s <!--constStr@Expect--> '+remaintime.toFixed(1)+'s';
}
}
var C_starttime = new Date();
xhr.onload = function(e){
if (xhr.status<500) {
//console.log(xhr.responseText);
//console.log(xhr.getResponseHeader('ETag'));
//var response=JSON.parse(xhr.responseText);
if (xhr.responseText==''&&xhr.getResponseHeader('ETag')!='') {
// 有ETag说明上传成功
var xhr1 = new XMLHttpRequest();
xhr1.open("POST", '?action=upbigfile');
//xhr1.open("GET", '?action=del_upload_cache&filelastModified='+file.lastModified+'&filesize='+file.size+'&filename='+filename);
xhr1.setRequestHeader('x-requested-with','XMLHttpRequest');
xhr1.send('uploadid='+ uploadid +'&fileid='+ fileid +'&etag='+ xhr.getResponseHeader('ETag'));
xhr1.onload = function(e){
console.log(xhr1.responseText+','+xhr1.status);
<!--AdminStart-->
var html=JSON.parse(xhr1.responseText);
//response.name=file.webkitRelativePath||response.name;
addelement(html);
<!--AdminEnd-->
}
if (totalsize>10*1024*1024) {
var xhr3 = new XMLHttpRequest();
xhr3.open("GET", '?action=del_upload_cache&filelastModified='+file.lastModified+'&filesize='+file.size+'&filename='+filename);
xhr3.setRequestHeader('x-requested-with','XMLHttpRequest');
xhr3.send(null);
xhr3.onload = function(e){
console.log(xhr3.responseText+','+xhr3.status);
}
}
EndTime=new Date();
MiddleStr = '<!--constStr@EndAt-->:'+EndTime.toLocaleString()+'<br>';
if (newstartsize==0) {
MiddleStr += '<!--constStr@AverageSpeed-->:'+size_format(totalsize*1000/(EndTime.getTime()-StartTime.getTime()))+'/s<br>';
} else {
MiddleStr += '<!--constStr@ThisTime--><!--constStr@AverageSpeed-->:'+size_format((totalsize-newstartsize)*1000/(EndTime.getTime()-StartTime.getTime()))+'/s<br>';
}
while (filename.indexOf('%2F')>0) filename = filename.replace('%2F', '/');
document.getElementById('upfile_td1_'+tdnum).innerHTML='<div style="color:green"><a href="<!--base_disk_path--><!--Path-->'+filename+'?preview" id="upfile_a_'+tdnum+'" target="_blank">'+document.getElementById('upfile_td1_'+tdnum).innerHTML+'</a><br><a href="<!--base_disk_path--><!--Path-->'+filename+'" id="upfile_a1_'+tdnum+'"></a><!--constStr@UploadComplete--><button onclick="CopyAllDownloadUrl(\'#upfile_a1_'+tdnum+'\');" id="upfile_cpbt_'+tdnum+'" <!--AdminStart--> style="display:none"<!--AdminEnd--> ><!--constStr@CopyUrl--></button></div>';
label.innerHTML=StartStr+MiddleStr;
label.style.color='green';
// uploadbuttonshow();
} else {
if (!response['nextExpectedRanges']) {
label.innerHTML='<font color="red">'+xhr.responseText+'</font><br>';
} else {
var a=response['nextExpectedRanges'][0];
asize=Number( a.slice(0,a.indexOf("-")) );
readblob(asize);
}
} } else readblob(asize);
}
xhr.send(binary);
}
}
}
<!--AliyundriveUploadJsEnd-->
<!--ListEnd--> <!--ListEnd-->
function operatediv_close(operate) { function operatediv_close(operate) {
document.getElementById(operate+'_div').style.display='none'; document.getElementById(operate+'_div').style.display='none';
@ -1174,7 +1349,10 @@
} }
<!--AdminStart--> <!--AdminStart-->
function logout() { function logout() {
document.cookie = "admin=; path=/"; var expd = new Date();
expd.setTime(expd.getTime()+1000);
var expires = "expires="+expd.toGMTString();
document.cookie = "admin=; path=/; "+expires;
location.href = location.href; location.href = location.href;
} }
<!--IsFolderStart--> <!--IsFolderStart-->
@ -1188,16 +1366,19 @@
document.getElementById('mask').style.height=document.documentElement.scrollHeight<window.innerHeight?window.innerHeight:document.documentElement.scrollHeight+'px'; document.getElementById('mask').style.height=document.documentElement.scrollHeight<window.innerHeight?window.innerHeight:document.documentElement.scrollHeight+'px';
if (num=='') { if (num=='') {
var str=''; var str='';
var fileid='';
} else { } else {
var str=decodeURIComponent(document.getElementById('file_a'+num).href); var str=decodeURIComponent(document.getElementById('file_a'+num).href);
if (str.substr(-1)==' ') str=str.substr(0, str.length-1); if (str.substr(-1)==' ') str=str.substr(0, str.length-1);
if (str.substr(-1)=='/') str=str.substr(0, str.length-1); if (str.substr(-1)=='/') str=str.substr(0, str.length-1);
if (str.substr(-8)=='?preview') str=str.substr(0, str.length-8); if (str.substr(-8)=='?preview') str=str.substr(0, str.length-8);
if (str.lastIndexOf('/')>-1) str=str.substr(str.lastIndexOf('/')+1); if (str.lastIndexOf('/')>-1) str=str.substr(str.lastIndexOf('/')+1);
var fileid=document.getElementById('file_a'+num).attributes['fileid'].nodeValue;
} }
document.getElementById(action + '_div').style.display=''; document.getElementById(action + '_div').style.display='';
document.getElementById(action + '_label').innerText=str;//.replace(/&/,'&amp;'); document.getElementById(action + '_label').innerText=str;//.replace(/&/,'&amp;');
document.getElementById(action + '_sid').value=num; document.getElementById(action + '_sid').value=num;
document.getElementById(action + '_fileid').value=fileid;
document.getElementById(action + '_hidden').value=str; document.getElementById(action + '_hidden').value=str;
if (action=='rename') document.getElementById(action + '_input').value=str; if (action=='rename') document.getElementById(action + '_input').value=str;
var $e = event || window.event; var $e = event || window.event;
@ -1243,6 +1424,7 @@
html=JSON.parse(xhr.responseText); html=JSON.parse(xhr.responseText);
addelement(html); addelement(html);
} }
//swal('success');
} else swal(xhr.status+'\n'+xhr.responseText); } else swal(xhr.status+'\n'+xhr.responseText);
document.getElementById(str+'_div').style.display='none'; document.getElementById(str+'_div').style.display='none';
document.getElementById('mask').style.display='none'; document.getElementById('mask').style.display='none';
@ -1261,15 +1443,16 @@
a1.target='_blank'; a1.target='_blank';
var td2=document.createElement('td'); var td2=document.createElement('td');
td2.setAttribute('class','updated_at'); td2.setAttribute('class','updated_at');
td2.innerText=html.lastModifiedDateTime.replace(/T/,' ').replace(/Z/,''); if (!!html.time) td2.innerText=html.time.replace(/T/,' ').replace(/Z/,'');
var td3=document.createElement('td'); var td3=document.createElement('td');
td3.setAttribute('class','size'); td3.setAttribute('class','size');
td3.innerText=size_format(html.size); if (!!html.size) td3.innerText=size_format(html.size);
if (!!html.folder) { else td3.innerText='0 B';
if (html.type=='folder') {
a1.href+='/'; a1.href+='/';
document.getElementById('tr0').parentNode.insertBefore(tr1,document.getElementById('tr0').nextSibling); document.getElementById('tr0').parentNode.insertBefore(tr1,document.getElementById('tr0').nextSibling);
} }
if (!!html.file) { if (html.type=='file') {
a1.href+='?preview'; a1.href+='?preview';
a1.name='filelist'; a1.name='filelist';
document.getElementById('tr0').parentNode.appendChild(tr1); document.getElementById('tr0').parentNode.appendChild(tr1);