var $ = mdui.$;
var api = 'https://api.noki.icu/pan/cloud189/shareToDown';
$("#downBtn").on('click', function (e) {
getFolder("", false, "");
});
function initFiles(d, flag, pId){
var initHtml = '
'+
' 文件 expand_more
'+
' 修改时间 expand_more
'+
' 大小 expand_more
'+
'';
if(flag){
initHtml+=''+
' '+
' '+
' arrow_upward'+
' ..'+
'
'+
' '+
' '+
' '+
' ';
}
//文件夹
$.each(d.fileListAO.folderList, function(i, item){
initHtml += ''+
' '+
' '+
' folder_open'+
' '+item.name+
'
'+
' '+item.lastOpTime+'
'+
' '+formatFileSize(0)+'
'+
' '+
' ';
});
//文件
$.each(d.fileListAO.fileList, function(i, item){
initHtml += ''+
' '+
' '+
' insert_drive_file'+
' '+item.name+
'
'+
' '+item.lastOpTime+'
'+
' '+formatFileSize(item.size)+'
'+
' '+
' ';
});
$("ul").html(initHtml);
}
function getFolder(fileId, flag, pId){
var url = $("input[name=url]").val();
if(url == ""){
mdui.snackbar({
message: '您还没有输入分享链接!'
});
}
$.ajax({
method: 'GET',
url: api,
data: $.param({ url: $("input[name=url]").val(), passCode: $("input[name=passCode]").val(),fileId:fileId}),
success: function (data) {
if(isJSON(data)){
var d = JSON.parse(data);
initFiles(d, flag, pId);
}else{
if(data == "https://cloud.189.cn/"){
mdui.snackbar({
message: '请输入正确的分享链接和密码!'
});
}else{
if (data == "400"){
//文件内容违规,下载失败
mdui.snackbar({
message: '文件内容违规,下载失败'
});
}else{
location.href = data;
}
}
}
}
});
}
function redirectDown(fileId, shareId){
$.ajax({
method: 'GET',
url: api,
data: $.param({url: $("input[name=url]").val(), fileId: fileId, shareId: shareId, passCode: $("input[name=passCode]").val()}),
success: function (data) {
if (data == "400"){
//文件内容违规,下载失败
mdui.snackbar({
message: '文件内容违规,下载失败'
});
}else{
location.href = data;
}
}
});
}
function isJSON(str) {
if (typeof str == 'string') {
try {
JSON.parse(str);
return true;
} catch(e) {
return false;
}
}
}
function formatFileSize(fileSize) {
if(fileSize == 0){
return "-";
}
if (fileSize < 1024) {
return fileSize + 'B';
} else if (fileSize < (1024*1024)) {
var temp = fileSize / 1024;
temp = temp.toFixed(2);
return temp + 'KB';
} else if (fileSize < (1024*1024*1024)) {
var temp = fileSize / (1024*1024);
temp = temp.toFixed(2);
return temp + 'MB';
} else {
var temp = fileSize / (1024*1024*1024);
temp = temp.toFixed(2);
return temp + 'GB';
}
}