Skip to content
Snippets Groups Projects
Commit 4dd1ea09 authored by John Xina's avatar John Xina
Browse files

add user homepage

parent 0c1e2cef
No related branches found
No related tags found
No related merge requests found
...@@ -147,7 +147,23 @@ async def forum_view(): ...@@ -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(): ...@@ -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 @@ ...@@ -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 @@ ...@@ -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 @@ ...@@ -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>
......
<!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>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment