mirror of
https://0xacab.org/johnxina/rat.git
synced 2024-12-23 13:09:08 +00:00
add user homepage
This commit is contained in:
parent
0c1e2cef02
commit
4dd1ea09e2
20
app.py
20
app.py
@ -147,7 +147,23 @@ async def forum_view():
|
|||||||
|
|
||||||
@app.route('/home/main')
|
@app.route('/home/main')
|
||||||
async def user_view():
|
async def user_view():
|
||||||
return 'UNDER CONSTRUCTION'
|
pn = int(request.args.get('pn') or 1)
|
||||||
|
i = request.args.get('id')
|
||||||
|
try: # try converting it to user_id, otherwise using the string.
|
||||||
|
i = int(i)
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
async with aiotieba.Client() as tieba:
|
||||||
|
try:
|
||||||
|
hp = await tieba.get_homepage(i, pn)
|
||||||
|
except ValueError:
|
||||||
|
return await render_template('error.html', msg='您已超过最后页')
|
||||||
|
|
||||||
|
if len(hp[1]) == 0 and pn > 1:
|
||||||
|
return await render_template('error.html', msg='您已超过最后页')
|
||||||
|
|
||||||
|
return await render_template('user.html', hp=hp, pn=pn)
|
||||||
|
|
||||||
@app.route('/')
|
@app.route('/')
|
||||||
async def main_view():
|
async def main_view():
|
||||||
@ -157,7 +173,7 @@ async def main_view():
|
|||||||
|
|
||||||
@app.errorhandler(RuntimeError)
|
@app.errorhandler(RuntimeError)
|
||||||
async def runtime_error_view(e):
|
async def runtime_error_view(e):
|
||||||
if e.msg:
|
if hasattr(e, 'msg'):
|
||||||
return await render_template('error.html', msg=e.msg)
|
return await render_template('error.html', msg=e.msg)
|
||||||
return await render_template('error.html', msg='错误信息不可用')
|
return await render_template('error.html', msg='错误信息不可用')
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<footer>
|
<footer>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat">RAT Ain't Tieba</a></div>
|
<div><a href="/">RAT Ain't Tieba</a></div>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat/-/blob/no-masters/LICENSE">自豪地以 AGPLv3 释出</a></div>
|
<div><a href="https://0xacab.org/johnxina/rat/-/blob/no-masters/LICENSE">自豪地以 AGPLv3 释出</a></div>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat">源代码</a></div>
|
<div><a href="https://0xacab.org/johnxina/rat">源代码</a></div>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
<h1>{{ msg }}</h1>
|
<h1>{{ msg }}</h1>
|
||||||
</div>
|
</div>
|
||||||
<footer>
|
<footer>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat">RAT Ain't Tieba</a></div>
|
<div><a href="/">RAT Ain't Tieba</a></div>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat/-/blob/no-masters/LICENSE">自豪地以 AGPLv3 释出</a></div>
|
<div><a href="https://0xacab.org/johnxina/rat/-/blob/no-masters/LICENSE">自豪地以 AGPLv3 释出</a></div>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat">源代码</a></div>
|
<div><a href="https://0xacab.org/johnxina/rat">源代码</a></div>
|
||||||
</footer>
|
</footer>
|
||||||
|
@ -50,7 +50,7 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<footer>
|
<footer>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat">RAT Ain't Tieba</a></div>
|
<div><a href="/">RAT Ain't Tieba</a></div>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat/-/blob/no-masters/LICENSE">自豪地以 AGPLv3 释出</a></div>
|
<div><a href="https://0xacab.org/johnxina/rat/-/blob/no-masters/LICENSE">自豪地以 AGPLv3 释出</a></div>
|
||||||
<div><a href="https://0xacab.org/johnxina/rat">源代码</a></div>
|
<div><a href="https://0xacab.org/johnxina/rat">源代码</a></div>
|
||||||
</footer>
|
</footer>
|
||||||
|
64
templates/user.html
Normal file
64
templates/user.html
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<head>
|
||||||
|
<title>{{ hp[0].show_name }}的个人资料 - RAT</title>
|
||||||
|
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
||||||
|
<link href="/static/css/main.css" rel="stylesheet">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.thread {
|
||||||
|
border: solid;
|
||||||
|
border-color: var(--bg-color);
|
||||||
|
border-width: 0;
|
||||||
|
border-top-width: 5px;
|
||||||
|
border-bottom-width: 5px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<header class="bar-nav">
|
||||||
|
<img src="/proxy/avatar/{{ hp[0].portrait }}"></nav>
|
||||||
|
<div>
|
||||||
|
<div class="title">{{ hp[0].show_name }} <small>{{ hp[0].user_name }}</small></div>
|
||||||
|
<div class="description">{{ hp[0].sign }}</div>
|
||||||
|
<div class="stats">
|
||||||
|
<small>关注数: {{ hp[0].follow_num|intsep }}</small>
|
||||||
|
<small>粉丝数: {{ hp[0].fan_num|intsep }}</small>
|
||||||
|
<small>发帖数: {{ hp[0].post_num|intsep }}</small>
|
||||||
|
<small>关注贴吧数: {{ hp[0].forum_num|intsep }}</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
<div class="list">
|
||||||
|
{% for t in hp[1] %}
|
||||||
|
<div class="thread">
|
||||||
|
<div class="summary">
|
||||||
|
<a href="/p/{{ t.tid }}">{{ t.text }} </a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
<div class="paginator">
|
||||||
|
{% if pn > 1 %}
|
||||||
|
<a href="/home/main?id={{ hp[0].user_id }}&pn={{ 1 }}">首页</a>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% for i in range(5) %}
|
||||||
|
{% set np = pn - 5 + i %}
|
||||||
|
{% if np > 0 %}
|
||||||
|
<a href="/home/main?id={{ hp[0].user_id }}&pn={{ np }}">{{ np }}</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
|
||||||
|
<a>{{ pn }}</a>
|
||||||
|
<a href="/home/main?id={{ hp[0].user_id }}&pn={{ pn+1 }}">下一页</a>
|
||||||
|
</div>
|
||||||
|
<footer>
|
||||||
|
<div><a href="/">RAT Ain't Tieba</a></div>
|
||||||
|
<div><a href="https://0xacab.org/johnxina/rat/-/blob/no-masters/LICENSE">自豪地以 AGPLv3 释出</a></div>
|
||||||
|
<div><a href="https://0xacab.org/johnxina/rat">源代码</a></div>
|
||||||
|
</footer>
|
||||||
|
</body>
|
Loading…
Reference in New Issue
Block a user