plugin-jm-server 0.1.14__tar.gz → 0.1.15__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/PKG-INFO +1 -1
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/setup.py +6 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/__init__.py +3 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/download_error.html +28 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/index.html +98 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/jm_view.html +110 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/login.html +40 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/m_download_error.html +29 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/m_index.html +93 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/m_jm_view.html +113 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/m_login.html +44 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/m_upload.html +47 -0
- plugin_jm_server-0.1.15/src/plugin_jm_server/templates/upload.html +47 -0
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server.egg-info/PKG-INFO +1 -1
- plugin_jm_server-0.1.15/src/plugin_jm_server.egg-info/SOURCES.txt +21 -0
- plugin_jm_server-0.1.14/src/plugin_jm_server/__init__.py +0 -3
- plugin_jm_server-0.1.14/src/plugin_jm_server.egg-info/SOURCES.txt +0 -11
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/README.md +0 -0
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/setup.cfg +0 -0
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server/app.py +0 -0
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server/driver.py +0 -0
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server/files.py +0 -0
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server.egg-info/dependency_links.txt +0 -0
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server.egg-info/requires.txt +0 -0
- {plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="zh-CN">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
8
|
+
<meta http-equiv="Cache-Control" content="no-cache" />
|
|
9
|
+
<meta http-equiv="Pragma" content="no-cache" />
|
|
10
|
+
<meta http-equiv="Expires" content="0" />
|
|
11
|
+
<title>文件下载错误</title>
|
|
12
|
+
<link rel="stylesheet" href="../static/css/download_error.css?t={{randomArg}}">
|
|
13
|
+
</head>
|
|
14
|
+
|
|
15
|
+
<body>
|
|
16
|
+
<section class="error-msg">
|
|
17
|
+
<h1>所访问的"<span> {{filename}} </span>"文件并不存在!请点击<a href="/">链接</a>回到主页!</h1>
|
|
18
|
+
<h3>或执行操作:</h3>
|
|
19
|
+
<button>
|
|
20
|
+
<h4><a href="/logout">注 销</a></h4>
|
|
21
|
+
</button>
|
|
22
|
+
<button id="upload">
|
|
23
|
+
<h4><a href="/upload">上 传 文 件</a></h4>
|
|
24
|
+
</button>
|
|
25
|
+
</section>
|
|
26
|
+
</body>
|
|
27
|
+
|
|
28
|
+
</html>
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
<!--suppress HtmlWrongAttributeValue, HtmlUnknownAttribute, HtmlUnknownTarget, HtmlUnknownTag -->
|
|
2
|
+
<!DOCTYPE html>
|
|
3
|
+
<html lang="zh-CN">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<meta charset="UTF-8"/>
|
|
7
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
|
9
|
+
<meta http-equiv="Cache-Control" content="no-cache"/>
|
|
10
|
+
<meta http-equiv="Pragma" content="no-cache"/>
|
|
11
|
+
<meta http-equiv="Expires" content="0"/>
|
|
12
|
+
<title>文件浏览器 | 离线看本</title>
|
|
13
|
+
<link rel="stylesheet" href="../static/css/index.css?t={{ randomArg }}">
|
|
14
|
+
<script src="../static/js/index.js?t={{ randomArg }}"></script>
|
|
15
|
+
</head>
|
|
16
|
+
|
|
17
|
+
<body>
|
|
18
|
+
<div class="all-container">
|
|
19
|
+
<div class="drivers-container">
|
|
20
|
+
根目录:
|
|
21
|
+
{% for driver in data.drivers %}
|
|
22
|
+
<a href="javascript:" location="{{ driver }}" style="color:#66ccff">{{ driver }}</a>
|
|
23
|
+
{% endfor %}
|
|
24
|
+
<h3 class="currentPath">当前路径:<span>{{ data.currentPath }}</span></h3>
|
|
25
|
+
</div>
|
|
26
|
+
<button class="to-lastPath" onclick="goBack()"> ← 上级目录</button>
|
|
27
|
+
<table class="files-table">
|
|
28
|
+
<tr>
|
|
29
|
+
<!-- 表头 -->
|
|
30
|
+
<td class="td-name">文件或文件夹</td>
|
|
31
|
+
<td class="td-size">大小</td>
|
|
32
|
+
<td class="td-ctime">创建日期</td>
|
|
33
|
+
<td class="td-jm_view">文件夹看本</td>
|
|
34
|
+
</tr>
|
|
35
|
+
<!-- 将传上来的files进行遍历 输出HTML标签 -->
|
|
36
|
+
{% for file in data.files %}
|
|
37
|
+
<tr type="{{ file.jm_view }}">
|
|
38
|
+
<td class="td-name {{ file.type }}">
|
|
39
|
+
<a href="/download_file/{{ file.name }}" dirname="{{ file.name }}">
|
|
40
|
+
{{ file.name }}
|
|
41
|
+
</a>
|
|
42
|
+
</td>
|
|
43
|
+
<td class="td-size">{{ file.size }}</td>
|
|
44
|
+
<td class="td-ctime">{{ file.ctime }}</td>
|
|
45
|
+
|
|
46
|
+
<td class="td-jm_view">
|
|
47
|
+
<!-- 判断 file.jm_view 是否是true -->
|
|
48
|
+
{% if file.jm_view %}
|
|
49
|
+
<!-- 使用onclick -->
|
|
50
|
+
<a href="javascript:" onclick="openJmView('{{ file.name }}', '{{ file.type }}')">
|
|
51
|
+
看本
|
|
52
|
+
</a>
|
|
53
|
+
{% endif %}
|
|
54
|
+
</td>
|
|
55
|
+
|
|
56
|
+
</tr>
|
|
57
|
+
{% endfor %}
|
|
58
|
+
</table>
|
|
59
|
+
<form action="/" method="GET" style="display: none;" id="pathForm">
|
|
60
|
+
<label>
|
|
61
|
+
<input type="text" name="path" value>
|
|
62
|
+
</label>
|
|
63
|
+
<input type="submit">
|
|
64
|
+
</form>
|
|
65
|
+
|
|
66
|
+
<form action="/jm_view" method="GET" style="display: none;" id="jmViewForm">
|
|
67
|
+
<label>
|
|
68
|
+
<input name="path" value>
|
|
69
|
+
<input name="openFromDir" value>
|
|
70
|
+
</label>
|
|
71
|
+
<input type="submit">
|
|
72
|
+
</form>
|
|
73
|
+
|
|
74
|
+
<section class="float-tablet">
|
|
75
|
+
<button>
|
|
76
|
+
<h4><a href="/upload_file">上 传 文 件</a></h4>
|
|
77
|
+
</button>
|
|
78
|
+
<button>
|
|
79
|
+
<h4><a href="/logout">注 销</a></h4>
|
|
80
|
+
</button>
|
|
81
|
+
</section>
|
|
82
|
+
<section class="flash-tablet" style="">
|
|
83
|
+
<div class="inner-container">
|
|
84
|
+
<div class="drivers-container">
|
|
85
|
+
根目录:
|
|
86
|
+
{% for driver in data.drivers %}
|
|
87
|
+
<a href="javascript:" location="{{ driver }}" style="color:black">{{ driver }}</a>
|
|
88
|
+
{% endfor %}
|
|
89
|
+
<h3 class="currentPath">当前路径:<span>{{ data.currentPath }}</span></h3>
|
|
90
|
+
</div>
|
|
91
|
+
<button class="to-lastPath" onclick="goBack()"> ← 上级目录</button>
|
|
92
|
+
<button id="to-top">返回顶部</button>
|
|
93
|
+
</div>
|
|
94
|
+
</section>
|
|
95
|
+
</div>
|
|
96
|
+
</body>
|
|
97
|
+
|
|
98
|
+
</html>
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<!--suppress HtmlRequiredAltAttribute -->
|
|
3
|
+
<html lang="zh-CN">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<meta charset="UTF-8"/>
|
|
7
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
|
9
|
+
<link href="../static/css/bootstrap.css" rel="stylesheet">
|
|
10
|
+
<script src="../static/js/jquery-3.7.1.min.js"></script>
|
|
11
|
+
<script src="../static/js/jquery.album-0.2.js"></script>
|
|
12
|
+
<link rel="stylesheet" href="../static/css/index.css">
|
|
13
|
+
<link rel="stylesheet" href="../static/css/all.min.css">
|
|
14
|
+
<link rel="stylesheet" href="../static/css/style_photo.css">
|
|
15
|
+
<script src="../static/js/common.js"></script>
|
|
16
|
+
<style>
|
|
17
|
+
img {
|
|
18
|
+
width: 100%;
|
|
19
|
+
height: 100%;
|
|
20
|
+
}
|
|
21
|
+
</style>
|
|
22
|
+
<title>文件浏览器 | 离线看本</title>
|
|
23
|
+
</head>
|
|
24
|
+
|
|
25
|
+
<body>
|
|
26
|
+
|
|
27
|
+
<div class="container">
|
|
28
|
+
<div class="row">
|
|
29
|
+
<div style="padding:0">
|
|
30
|
+
<div class="panel panel-default">
|
|
31
|
+
<div class="panel-heading">
|
|
32
|
+
<div class="pull-left">{{ data.title }}</div>
|
|
33
|
+
<div class="clearfix"></div>
|
|
34
|
+
</div>
|
|
35
|
+
<div class="panel-body" style="clear: both;">
|
|
36
|
+
<div class="row thumb-overlay-albums">
|
|
37
|
+
{#
|
|
38
|
+
<div class="center scramble-page" id="00019.webp" style="min-height: 1378.02px;">
|
|
39
|
+
|
|
40
|
+
<img src="https://cdn-msp.18comic.org/media/photos/179442/00019.webp"
|
|
41
|
+
data-original="https://cdn-msp.18comic.org/media/photos/179442/00019.webp"
|
|
42
|
+
id="album_photo_00019.webp" class="lazy_img img-responsive-mw lazy-loaded" style=""
|
|
43
|
+
data-page="18">
|
|
44
|
+
</div>
|
|
45
|
+
#}
|
|
46
|
+
{% for image in data.images %}
|
|
47
|
+
<div class="center scramble-page" id="{{ image.filename }}" >
|
|
48
|
+
<img src="{{ image.data_original }}"
|
|
49
|
+
data-original="{{ image.data_original }}"
|
|
50
|
+
class="lazy_img img-responsive-mw lazy-loaded"
|
|
51
|
+
>
|
|
52
|
+
</div>
|
|
53
|
+
{% endfor %}
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
<div class="menu-bolock">
|
|
63
|
+
<ul style="list-style:none;">
|
|
64
|
+
<li>
|
|
65
|
+
<a href="javascript:void(0)"><i class="fas fa-sort-down"></i><span>双击隐藏</span></a>
|
|
66
|
+
</li>
|
|
67
|
+
</ul>
|
|
68
|
+
<ul class="menu-bolock-ul" style="list-style:none;">
|
|
69
|
+
{# <li>#}
|
|
70
|
+
{# <a class="forum-open" href="javascript:;">#}
|
|
71
|
+
{# <span>666</span>#}
|
|
72
|
+
{# <span>評論</span></a>#}
|
|
73
|
+
{# </li>#}
|
|
74
|
+
{# <li>#}
|
|
75
|
+
{# <a href="javascript:void(0)" id="love_heart_407527"><i class="far fa-thumbs-up"></i><span>喜歡</span></a>#}
|
|
76
|
+
{# </li>#}
|
|
77
|
+
{# <li>#}
|
|
78
|
+
{# <a href="/album_download/407527">#}
|
|
79
|
+
{# <i class="fas fa-download"></i>#}
|
|
80
|
+
{# <span>下載</span>#}
|
|
81
|
+
{# </a>#}
|
|
82
|
+
{# </li>#}
|
|
83
|
+
{# <li>#}
|
|
84
|
+
{# <a id="favorite_album_407527"><i class="fa fa-bookmark"></i><span>收藏</span></a>#}
|
|
85
|
+
{# </li>#}
|
|
86
|
+
{# <li style="margin-top: 15px;">#}
|
|
87
|
+
{# <a href="?read_mode=read-by-page"><i class="fas fa-book"></i><span>分頁閱讀</span></a>#}
|
|
88
|
+
{# </li>#}
|
|
89
|
+
<li style="margin-top: 15px;">
|
|
90
|
+
<a href="/?path={{ data.openFromDir }}"><i class="fas fa-book"></i><span>原路返回</span></a>
|
|
91
|
+
</li>
|
|
92
|
+
<li>
|
|
93
|
+
<a href="https://18comic.vip/search/photos?main_tag=0&search_query={{ data.title }}">
|
|
94
|
+
<i class="far fa-list-alt"></i><span>搜原本</span></a>
|
|
95
|
+
</li>
|
|
96
|
+
{# <li style="margin-bottom: 15px;">#}
|
|
97
|
+
{# <a id="gotoRelated" href="javascript:void(0)"><img#}
|
|
98
|
+
{# src="/templates/frontend/airav/img/phicon/u1444.png?v=2024011102"#}
|
|
99
|
+
{# style="margin: auto;width: 24px;display: block;"><span>相關漫畫</span></a>#}
|
|
100
|
+
{# </li>#}
|
|
101
|
+
<li>
|
|
102
|
+
<a id="gotop" href="javascript:void(0)"><i class="far fa-caret-square-up"></i><span>回到頂端</span></a>
|
|
103
|
+
</li>
|
|
104
|
+
<li>
|
|
105
|
+
<a id="gobottom" href="javascript:void(0)"><i class="far fa-caret-square-up"></i><span>跳到最后</span></a>
|
|
106
|
+
</li>
|
|
107
|
+
</ul>
|
|
108
|
+
</div>
|
|
109
|
+
|
|
110
|
+
</body>
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="zh-CN">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
8
|
+
<meta http-equiv="Cache-Control" content="no-cache"/>
|
|
9
|
+
<meta http-equiv="Pragma" content="no-cache"/>
|
|
10
|
+
<meta http-equiv="Expires" content="0"/>
|
|
11
|
+
<title>登录页面</title>
|
|
12
|
+
<link rel="stylesheet" href="../static/css/login.css?t={{ randomArg }}">
|
|
13
|
+
</head>
|
|
14
|
+
|
|
15
|
+
<body>
|
|
16
|
+
<h1>登录服务器</h1>
|
|
17
|
+
<section class="login-box">
|
|
18
|
+
<form action="/login" method="POST">
|
|
19
|
+
<div class="account">
|
|
20
|
+
<label for="password">网站密码</label>
|
|
21
|
+
<input type="text" placeholder="请输入密码" name="password" id="password" autofocus="autofocus">
|
|
22
|
+
</div>
|
|
23
|
+
<input type="submit" value="进 入">
|
|
24
|
+
</form>
|
|
25
|
+
<div class="msg-con">
|
|
26
|
+
{% block content %}
|
|
27
|
+
<div class="alert-container">
|
|
28
|
+
{% for message in get_flashed_messages() %}
|
|
29
|
+
<div class="alert alert-warning">
|
|
30
|
+
<p>{{ message }}</p>
|
|
31
|
+
</div>
|
|
32
|
+
{% endfor %}
|
|
33
|
+
{% block page_content %}{% endblock %}
|
|
34
|
+
</div>
|
|
35
|
+
{% endblock %}
|
|
36
|
+
</div>
|
|
37
|
+
</section>
|
|
38
|
+
</body>
|
|
39
|
+
|
|
40
|
+
</html>
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="zh-CN">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0,
|
|
8
|
+
user-scalable=no, maximum-scale=1.0, minimum-scale=1.0">
|
|
9
|
+
<title>文件下载错误</title>
|
|
10
|
+
<link rel="stylesheet" href="../static/css/h5/normalize.css">
|
|
11
|
+
<link rel="stylesheet" href="../static/css/h5/m_download_error.css">
|
|
12
|
+
</head>
|
|
13
|
+
|
|
14
|
+
<body>
|
|
15
|
+
<section class="error-msg">
|
|
16
|
+
<h2>所访问的"<span> {{filename}} </span>"文件并不存在!请点击<a href="/">链接</a>回到主页!</h2>
|
|
17
|
+
<h3>或执行操作:</h3>
|
|
18
|
+
<div class="btn-box">
|
|
19
|
+
<button>
|
|
20
|
+
<h4><a href="/logout">注 销</a></h4>
|
|
21
|
+
</button>
|
|
22
|
+
<button id="upload">
|
|
23
|
+
<h4><a href="/upload">上 传 文 件</a></h4>
|
|
24
|
+
</button>
|
|
25
|
+
</div>
|
|
26
|
+
</section>
|
|
27
|
+
</body>
|
|
28
|
+
|
|
29
|
+
</html>
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
<!--suppress HtmlWrongAttributeValue, HtmlUnknownAttribute, HtmlUnknownTarget, HtmlUnknownTag -->
|
|
2
|
+
<!DOCTYPE html>
|
|
3
|
+
<html lang="zh-CN">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<meta charset="UTF-8">
|
|
7
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0,
|
|
9
|
+
user-scalable=no, maximum-scale=1.0, minimum-scale=1.0">
|
|
10
|
+
<meta http-equiv="Cache-Control" content="no-cache"/>
|
|
11
|
+
<meta http-equiv="Pragma" content="no-cache"/>
|
|
12
|
+
<meta http-equiv="Expires" content="0"/>
|
|
13
|
+
<title>flask 文件共享</title>
|
|
14
|
+
<link rel="stylesheet" href="../static/css/h5/normalize.css?t={{ randomArg }}">
|
|
15
|
+
<link rel="stylesheet" href="../static/css/h5/m_index.css?t={{ randomArg }}">
|
|
16
|
+
<script src="../static/js/index.js?t={{ randomArg }}"></script>
|
|
17
|
+
</head>
|
|
18
|
+
|
|
19
|
+
<body>
|
|
20
|
+
<div class="all-container">
|
|
21
|
+
<div class="drivers-container">
|
|
22
|
+
根目录:
|
|
23
|
+
{% for driver in data.drivers %}
|
|
24
|
+
<a href="javascript:" location="{{ driver }}" style="color:#66ccff">{{ driver }}</a>
|
|
25
|
+
{% endfor %}
|
|
26
|
+
<h3 class="currentPath">当前路径:
|
|
27
|
+
<span style="word-wrap: break-word;overflow-wrap: break-word;">{{ data.currentPath }}</span>
|
|
28
|
+
</h3>
|
|
29
|
+
</div>
|
|
30
|
+
<button class="to-lastPath" onclick="goBack()" style="background-color: orange"> ← 上级目录</button>
|
|
31
|
+
<table class="files-table">
|
|
32
|
+
<tr>
|
|
33
|
+
<!-- 表头 -->
|
|
34
|
+
<td class="td-name">文件或文件夹</td>
|
|
35
|
+
<td class="td-size">大小</td>
|
|
36
|
+
<td class="td-ctime">创建日期</td>
|
|
37
|
+
<td class="td-jm_view">文件夹看本</td>
|
|
38
|
+
</tr>
|
|
39
|
+
<!-- 将传上来的files进行遍历 输出HTML标签 -->
|
|
40
|
+
{% for file in data.files %}
|
|
41
|
+
<tr type="{{ file.jm_view }}">
|
|
42
|
+
<td class="td-name {{ file.type }}"><a href="/download_file/{{ file.name }}"
|
|
43
|
+
dirname="{{ file.name }}">{{ file.name }}</a></td>
|
|
44
|
+
<td class="td-size">{{ file.size }}</td>
|
|
45
|
+
<td class="td-ctime">{{ file.ctime }}</td>
|
|
46
|
+
|
|
47
|
+
<td class="td-jm_view">
|
|
48
|
+
<!-- 判断 file.jm_view 是否是true -->
|
|
49
|
+
{% if file.jm_view %}
|
|
50
|
+
<!-- 使用onclick -->
|
|
51
|
+
<a href="javascript:" onclick="openJmView('{{ file.name }}', '{{ file.type }}')">
|
|
52
|
+
看本
|
|
53
|
+
</a>
|
|
54
|
+
{% endif %}
|
|
55
|
+
</td>
|
|
56
|
+
|
|
57
|
+
</tr>
|
|
58
|
+
{% endfor %}
|
|
59
|
+
</table>
|
|
60
|
+
<form action="/" method="GET" style="display: none;" id="pathForm">
|
|
61
|
+
<label>
|
|
62
|
+
<input type="text" name="path" value>
|
|
63
|
+
</label>
|
|
64
|
+
<input type="submit">
|
|
65
|
+
</form>
|
|
66
|
+
|
|
67
|
+
<form action="/jm_view" method="GET" style="display: none;" id="jmViewForm">
|
|
68
|
+
<label>
|
|
69
|
+
<input name="path" value>
|
|
70
|
+
<input name="openFromDir" value>
|
|
71
|
+
</label>
|
|
72
|
+
<input type="submit">
|
|
73
|
+
</form>
|
|
74
|
+
|
|
75
|
+
<section class="flash-tablet">
|
|
76
|
+
<div class="inner-container" style="margin-top: 10px">
|
|
77
|
+
<button class="to-lastPath" onclick="goBack()"> ← 上级目录</button>
|
|
78
|
+
<button id="to-top">返回顶部</button>
|
|
79
|
+
</div>
|
|
80
|
+
<div class="inner-container" style="margin-top: 10px">
|
|
81
|
+
<button>
|
|
82
|
+
<h4><a href="/upload_file">上 传 文 件</a></h4>
|
|
83
|
+
</button>
|
|
84
|
+
<button>
|
|
85
|
+
<h4><a href="/logout">注 销</a></h4>
|
|
86
|
+
</button>
|
|
87
|
+
</div>
|
|
88
|
+
|
|
89
|
+
</section>
|
|
90
|
+
</div>
|
|
91
|
+
</body>
|
|
92
|
+
|
|
93
|
+
</html>
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<!--suppress HtmlRequiredAltAttribute -->
|
|
3
|
+
<html lang="zh-CN">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<meta charset="UTF-8"/>
|
|
7
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0,
|
|
9
|
+
user-scalable=yes, maximum-scale=1.0, minimum-scale=1.0">
|
|
10
|
+
<link rel="stylesheet" href="../static/css/h5/normalize.css?t={{ randomArg }}">
|
|
11
|
+
<link rel="stylesheet" href="../static/css/h5/m_index.css?t={{ randomArg }}">
|
|
12
|
+
<link href="../static/css/bootstrap.css" rel="stylesheet">
|
|
13
|
+
<script src="../static/js/jquery-3.7.1.min.js"></script>
|
|
14
|
+
<script src="../static/js/jquery.album-0.2.js"></script>
|
|
15
|
+
<link rel="stylesheet" href="../static/css/index.css">
|
|
16
|
+
<link rel="stylesheet" href="../static/css/all.min.css">
|
|
17
|
+
<link rel="stylesheet" href="../static/css/style_photo.css">
|
|
18
|
+
<script src="../static/js/common.js"></script>
|
|
19
|
+
<style>
|
|
20
|
+
img {
|
|
21
|
+
width: 100%;
|
|
22
|
+
height: 100%;
|
|
23
|
+
}
|
|
24
|
+
</style>
|
|
25
|
+
<title>文件浏览器 | 离线看本</title>
|
|
26
|
+
</head>
|
|
27
|
+
|
|
28
|
+
<body>
|
|
29
|
+
|
|
30
|
+
<div class="container">
|
|
31
|
+
<div class="row">
|
|
32
|
+
<div style="padding:0">
|
|
33
|
+
<div class="panel panel-default">
|
|
34
|
+
<div class="panel-heading">
|
|
35
|
+
<div class="pull-left">{{ data.title }}</div>
|
|
36
|
+
<div class="clearfix"></div>
|
|
37
|
+
</div>
|
|
38
|
+
<div class="panel-body" style="clear: both;">
|
|
39
|
+
<div class="row thumb-overlay-albums">
|
|
40
|
+
{#
|
|
41
|
+
<div class="center scramble-page" id="00019.webp" style="min-height: 1378.02px;">
|
|
42
|
+
|
|
43
|
+
<img src="https://cdn-msp.18comic.org/media/photos/179442/00019.webp"
|
|
44
|
+
data-original="https://cdn-msp.18comic.org/media/photos/179442/00019.webp"
|
|
45
|
+
id="album_photo_00019.webp" class="lazy_img img-responsive-mw lazy-loaded" style=""
|
|
46
|
+
data-page="18">
|
|
47
|
+
</div>
|
|
48
|
+
#}
|
|
49
|
+
{% for image in data.images %}
|
|
50
|
+
<div class="center scramble-page" id="{{ image.filename }}">
|
|
51
|
+
<img src="{{ image.data_original }}"
|
|
52
|
+
data-original="{{ image.data_original }}"
|
|
53
|
+
class="lazy_img img-responsive-mw lazy-loaded"
|
|
54
|
+
>
|
|
55
|
+
</div>
|
|
56
|
+
{% endfor %}
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
</div>
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
<div class="menu-bolock">
|
|
66
|
+
<ul style="list-style:none;">
|
|
67
|
+
<li>
|
|
68
|
+
<a href="javascript:void(0)"><i class="fas fa-sort-down"></i><span>双击隐藏</span></a>
|
|
69
|
+
</li>
|
|
70
|
+
</ul>
|
|
71
|
+
<ul class="menu-bolock-ul" style="list-style:none;">
|
|
72
|
+
{# <li>#}
|
|
73
|
+
{# <a class="forum-open" href="javascript:;">#}
|
|
74
|
+
{# <span>666</span>#}
|
|
75
|
+
{# <span>評論</span></a>#}
|
|
76
|
+
{# </li>#}
|
|
77
|
+
{# <li>#}
|
|
78
|
+
{# <a href="javascript:void(0)" id="love_heart_407527"><i class="far fa-thumbs-up"></i><span>喜歡</span></a>#}
|
|
79
|
+
{# </li>#}
|
|
80
|
+
{# <li>#}
|
|
81
|
+
{# <a href="/album_download/407527">#}
|
|
82
|
+
{# <i class="fas fa-download"></i>#}
|
|
83
|
+
{# <span>下載</span>#}
|
|
84
|
+
{# </a>#}
|
|
85
|
+
{# </li>#}
|
|
86
|
+
{# <li>#}
|
|
87
|
+
{# <a id="favorite_album_407527"><i class="fa fa-bookmark"></i><span>收藏</span></a>#}
|
|
88
|
+
{# </li>#}
|
|
89
|
+
{# <li style="margin-top: 15px;">#}
|
|
90
|
+
{# <a href="?read_mode=read-by-page"><i class="fas fa-book"></i><span>分頁閱讀</span></a>#}
|
|
91
|
+
{# </li>#}
|
|
92
|
+
<li style="margin-top: 15px;">
|
|
93
|
+
<a href="/?path={{ data.openFromDir }}"><i class="fas fa-book"></i><span>原路返回</span></a>
|
|
94
|
+
</li>
|
|
95
|
+
<li>
|
|
96
|
+
<a href="https://18comic.vip/search/photos?main_tag=0&search_query={{ data.title }}">
|
|
97
|
+
<i class="far fa-list-alt"></i><span>搜原本</span></a>
|
|
98
|
+
</li>
|
|
99
|
+
{# <li style="margin-bottom: 15px;">#}
|
|
100
|
+
{# <a id="gotoRelated" href="javascript:void(0)"><img#}
|
|
101
|
+
{# src="/templates/frontend/airav/img/phicon/u1444.png?v=2024011102"#}
|
|
102
|
+
{# style="margin: auto;width: 24px;display: block;"><span>相關漫畫</span></a>#}
|
|
103
|
+
{# </li>#}
|
|
104
|
+
<li>
|
|
105
|
+
<a id="gotop" href="javascript:void(0)"><i class="far fa-caret-square-up"></i><span>回到頂端</span></a>
|
|
106
|
+
</li>
|
|
107
|
+
<li>
|
|
108
|
+
<a id="gobottom" href="javascript:void(0)"><i class="far fa-caret-square-up"></i><span>跳到最后</span></a>
|
|
109
|
+
</li>
|
|
110
|
+
</ul>
|
|
111
|
+
</div>
|
|
112
|
+
|
|
113
|
+
</body>
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="zh-CN">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0,
|
|
8
|
+
user-scalable=no, maximum-scale=1.0, minimum-scale=1.0">
|
|
9
|
+
<meta http-equiv="Cache-Control" content="no-cache"/>
|
|
10
|
+
<meta http-equiv="Pragma" content="no-cache"/>
|
|
11
|
+
<meta http-equiv="Expires" content="0"/>
|
|
12
|
+
<title>登录页面</title>
|
|
13
|
+
<link rel="stylesheet" href="../static/css/h5/normalize.css?t={{ randomArg }}">
|
|
14
|
+
<link rel="stylesheet" href="../static/css/h5/m_login.css?t={{ randomArg }}">
|
|
15
|
+
</head>
|
|
16
|
+
|
|
17
|
+
<body>
|
|
18
|
+
<div class="mask">
|
|
19
|
+
<section class="login-box">
|
|
20
|
+
<h1><span>登录服务器</span></h1>
|
|
21
|
+
<form action="/login" method="POST">
|
|
22
|
+
<div class="account">
|
|
23
|
+
<label for="password">网站密码</label>
|
|
24
|
+
<input type="text" placeholder="请输入密码" name="password" id="password" autofocus="autofocus">
|
|
25
|
+
</div>
|
|
26
|
+
<input type="submit" value="进 入">
|
|
27
|
+
</form>
|
|
28
|
+
<div class="msg-con">
|
|
29
|
+
{% block content %}
|
|
30
|
+
<div class="alert-container">
|
|
31
|
+
{% for message in get_flashed_messages() %}
|
|
32
|
+
<div class="alert alert-warning">
|
|
33
|
+
<p>{{ message }}</p>
|
|
34
|
+
</div>
|
|
35
|
+
{% endfor %}
|
|
36
|
+
{% block page_content %}{% endblock %}
|
|
37
|
+
</div>
|
|
38
|
+
{% endblock %}
|
|
39
|
+
</div>
|
|
40
|
+
</section>
|
|
41
|
+
</div>
|
|
42
|
+
</body>
|
|
43
|
+
|
|
44
|
+
</html>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="zh-CN">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0,
|
|
8
|
+
user-scalable=no, maximum-scale=1.0, minimum-scale=1.0">
|
|
9
|
+
<title>上传文件</title>
|
|
10
|
+
<link rel="stylesheet" href="../static/css/h5/normalize.css?t={{randomArg}}">
|
|
11
|
+
<link rel="stylesheet" href="../static/css/h5/m_upload.css?t={{randomArg}}">
|
|
12
|
+
<script src="../static/js/h5/m_upload.js?t={{randomArg}}"></script>
|
|
13
|
+
</head>
|
|
14
|
+
|
|
15
|
+
<body>
|
|
16
|
+
<section class="upload-tablet">
|
|
17
|
+
<!-- enctype="multipart/form-data" 设置表单的文件以二进制方式上传 就可以上传多种不同的文件 -->
|
|
18
|
+
<form action="/upload_file" name="upload_form" method="post" enctype="multipart/form-data">
|
|
19
|
+
<h3>请选择上传的文件</h3>
|
|
20
|
+
<a href="javascript:" class="file">选择文件
|
|
21
|
+
<input type="file" name="file1" id="file" />
|
|
22
|
+
</a>
|
|
23
|
+
<div id="info">
|
|
24
|
+
<span id="fileName"></span>
|
|
25
|
+
<div id="fileSize"></div>
|
|
26
|
+
<div id="fileType"></div>
|
|
27
|
+
</div>
|
|
28
|
+
<br>
|
|
29
|
+
<div class="progress-bar">
|
|
30
|
+
上传进度条:
|
|
31
|
+
<div class="container">
|
|
32
|
+
<span id="progress-value"></span>
|
|
33
|
+
<span id="mask"></span>
|
|
34
|
+
<span id="progress"></span>
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
</form>
|
|
38
|
+
<div class="btn-box">
|
|
39
|
+
<button id="displayInfo" onclick="fileSelected()">显示信息</button>
|
|
40
|
+
<button id="submit" onclick="uploadFile()">上 传</button>
|
|
41
|
+
</div>
|
|
42
|
+
<div id="result" style="display: none;"></div>
|
|
43
|
+
<a class="back" href="javascript:" onclick="history.back()">点击返回</a>
|
|
44
|
+
</section>
|
|
45
|
+
</body>
|
|
46
|
+
|
|
47
|
+
</html>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
8
|
+
<meta http-equiv="Cache-Control" content="no-cache" />
|
|
9
|
+
<meta http-equiv="Pragma" content="no-cache" />
|
|
10
|
+
<meta http-equiv="Expires" content="0" />
|
|
11
|
+
<title>上传文件</title>
|
|
12
|
+
<link rel="stylesheet" href="../static/css/upload.css?t={{randomArg}}">
|
|
13
|
+
<script src="../static/js/upload.js?t={{randomArg}}"></script>
|
|
14
|
+
</head>
|
|
15
|
+
|
|
16
|
+
<body>
|
|
17
|
+
<h1>上传文件</h1>
|
|
18
|
+
<section class="upload-tablet">
|
|
19
|
+
<!-- enctype="multipart/form-data" 设置表单的文件以二进制方式上传 就可以上传多种不同的文件 -->
|
|
20
|
+
<form action="/upload_file" name="upload_form" method="post" enctype="multipart/form-data">
|
|
21
|
+
<h3>请选择上传的文件:</h3>
|
|
22
|
+
<a href="javascript:;" class="file">选择文件
|
|
23
|
+
<input type="file" name="file1" id="file" />
|
|
24
|
+
</a>
|
|
25
|
+
<span id="fileName"></span>
|
|
26
|
+
<br>
|
|
27
|
+
<div class="progress-bar">
|
|
28
|
+
上传进度条:
|
|
29
|
+
<div class="container">
|
|
30
|
+
<span id="progress-value"></span>
|
|
31
|
+
<span id="mask"></span>
|
|
32
|
+
<span id="progress"></span>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
</form>
|
|
36
|
+
<button id="displayInfo" onclick="fileSelected()">显示信息</button>
|
|
37
|
+
<button id="submit" onclick="uploadFile()">上 传</button>
|
|
38
|
+
<div id="info">
|
|
39
|
+
<div id="fileSize"></div>
|
|
40
|
+
<div id="fileType"></div>
|
|
41
|
+
</div>
|
|
42
|
+
<div id="result" style="display: none;"></div>
|
|
43
|
+
<a class="back" href="javascript:;" onclick="history.back()">点击返回</a>
|
|
44
|
+
</section>
|
|
45
|
+
</body>
|
|
46
|
+
|
|
47
|
+
</html>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
README.md
|
|
2
|
+
setup.py
|
|
3
|
+
src/plugin_jm_server/__init__.py
|
|
4
|
+
src/plugin_jm_server/app.py
|
|
5
|
+
src/plugin_jm_server/driver.py
|
|
6
|
+
src/plugin_jm_server/files.py
|
|
7
|
+
src/plugin_jm_server.egg-info/PKG-INFO
|
|
8
|
+
src/plugin_jm_server.egg-info/SOURCES.txt
|
|
9
|
+
src/plugin_jm_server.egg-info/dependency_links.txt
|
|
10
|
+
src/plugin_jm_server.egg-info/requires.txt
|
|
11
|
+
src/plugin_jm_server.egg-info/top_level.txt
|
|
12
|
+
src/plugin_jm_server/templates/download_error.html
|
|
13
|
+
src/plugin_jm_server/templates/index.html
|
|
14
|
+
src/plugin_jm_server/templates/jm_view.html
|
|
15
|
+
src/plugin_jm_server/templates/login.html
|
|
16
|
+
src/plugin_jm_server/templates/m_download_error.html
|
|
17
|
+
src/plugin_jm_server/templates/m_index.html
|
|
18
|
+
src/plugin_jm_server/templates/m_jm_view.html
|
|
19
|
+
src/plugin_jm_server/templates/m_login.html
|
|
20
|
+
src/plugin_jm_server/templates/m_upload.html
|
|
21
|
+
src/plugin_jm_server/templates/upload.html
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
README.md
|
|
2
|
-
setup.py
|
|
3
|
-
src/plugin_jm_server/__init__.py
|
|
4
|
-
src/plugin_jm_server/app.py
|
|
5
|
-
src/plugin_jm_server/driver.py
|
|
6
|
-
src/plugin_jm_server/files.py
|
|
7
|
-
src/plugin_jm_server.egg-info/PKG-INFO
|
|
8
|
-
src/plugin_jm_server.egg-info/SOURCES.txt
|
|
9
|
-
src/plugin_jm_server.egg-info/dependency_links.txt
|
|
10
|
-
src/plugin_jm_server.egg-info/requires.txt
|
|
11
|
-
src/plugin_jm_server.egg-info/top_level.txt
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server.egg-info/requires.txt
RENAMED
|
File without changes
|
{plugin_jm_server-0.1.14 → plugin_jm_server-0.1.15}/src/plugin_jm_server.egg-info/top_level.txt
RENAMED
|
File without changes
|