zlibproxy/app/view/index.html
2023-01-02 19:56:44 +08:00

165 lines
6.4 KiB
HTML

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<base href="/" />
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href='zlibproxy/normalize.css' rel='stylesheet' type='text/css'>
<link href="https://fonts.laysense.com/css/5000/zh-cn/douyufont/douyufont.css" rel="preload" as="style" onload="this.rel='stylesheet'">
<link href="https://fonts.laysense.com/css/5000/zh-cn/harmonyossans/harmonyossans.css" rel="preload" as="style" onload="this.rel='stylesheet'">
<link id="theme_css" rel="stylesheet" href="zlibproxy/sakura.css">
<style>
.pmnet { font-family: DOUYUFont;}
html {font-family: HarmonyOSSans;}
.animbox {
margin: 50px auto;
width: 200px;
text-align: center;
}
/*设置各竖条的共有样式*/
.animbox > div {
background-color: #279fcf;
width: 4px;
height: 35px;
border-radius: 2px;
margin: 2px;
animation-fill-mode: both;
display: inline-block;
animation: anim 0.9s 0s infinite cubic-bezier(.11, .49, .38, .78);
}
/*设置动画延迟*/
.animbox > :nth-child(2), .animbox > :nth-child(4) {
animation-delay: 0.25s !important;
}
.animbox > :nth-child(1), .animbox > :nth-child(5) {
animation-delay: 0.5s !important;
}
/*定义动画*/
@keyframes anim {
0% { transform: scaley(1); }
80% { transform: scaley(0.3); }
90% { transform: scaley(1); }
}
</style>
<title>(ProxyDownload)Z-Library</title>
</head>
<body>
<script>
//切换深色模式
if(window.matchMedia('(prefers-color-scheme: dark)').matches){
document.getElementById('theme_css').href = 'zlibproxy/sakura-dark.css';
}
</script>
<main>
<center>
<div style="background-color: bisque;color: black;">
Zlibrary Proxy(v<?php echo(getenv('version'));?>) UserID:<?php echo($id);?> <a style="color: coral;" href="/login/logout">[退出账号]</a>
</div>
</center>
<div id="container">
<a href="/" target="_blank_home">[返回ZlibraryProxy]</a>
<h1>下载图书</h1>
<div id="load" class="animbox" style="display: none;">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<br />
</div>
<p id="notice"></p>
<hr />
<div id="down" style="display: none;">
<a id="downloadurl" target="_blank_downbook">
<h3 style="margin-top:15%;margin-bottom:15%">📥点此下载图书</h3><br /><p id="bookname"></p><br /><p id="booksize"></p>
</a>
<hr />
<button onclick="download()">下载内容打不开?点此重新生成文件</button>(重新生成将消耗Zlib每日次数)
</div>
<div id="start" style="display: none;">
<button onclick="download()">点此开始下载图书</button>
</div>
</div>
</main>
<script src="zlibproxy/jquery-3.6.3.min.js"></script>
<script>
var path='<?php echo($path) ?>';
$.ajax({
type: "POST",
url: '/zlibproxy/check',
data: {'path':path},
async: true,
dataType: 'json',
cache: false,
beforeSend: function () {
$('#notice').html('正在查询缓存,请稍等……');
$('#load').show();
},
success: function (data) {
if (data.code == 200) {
$('#notice').html('图书已被缓存,本次下载无需消耗Zlib每日次数');
$("#downloadurl").attr("href","/zlibproxy/get?path="+path);
$('#bookname').html(data.name);
$('#booksize').html(data.size+'MB');
$('#down').show();
}
if (data.code == 202) {
$('#notice').html('图书仍在下载中,请稍等 (5秒后刷新)');
setTimeout(function(){location.reload();},5000);
}
if (data.code == 201) {
$('#notice').html('图书暂未被缓存,本次下载需要消耗Zlib次数(请确保小于30Mb否则会浪费一次次数)');
$('#start').show();
}
if (data.code == 509) {
$('#notice').html('缺少参数或未登录');
setTimeout(function(){$(location).attr('href','/login')},1500);
}
$('#load').hide();
},
});
function download(){
$.ajax({
type: "POST",
url: '/zlibproxy/download',
data: {'path':path},
async: true,
dataType: 'json',
cache: false,
beforeSend: function () {
$('#notice').html('服务器正在通过Tor从Zlib下载图书……请耐心等待');
$('#load').show();
$('#start').hide();
},
success: function (data) {
if (data.code == 200) {
$('#notice').html('图书已获取成功,请点击下方链接下载图书');
$("#downloadurl").attr("href","/zlibproxy/get?path="+path);
$('#bookname').html(data.name);
$('#booksize').html(data.size+'MB');
$('#down').show();
$('#start').hide();
}
if (data.code == 500) {
$('#notice').html('文件过大(大于30Mb),暂时无法通过ZlibProxy下载');
$('#start').hide();
}
if (data.code == 400) {
$('#notice').html('图书不存在……请尝试别的图书');
$('#start').hide();
}
if (data.code == 509) {
$('#notice').html('缺少参数或未登录');
setTimeout(function(){$(location).attr('href','/login')},1500);
}
$('#load').hide();
},
});
}
</script>
</body>
</html>