Revert "port some listing pages #228, add missed translation strings"

This reverts commit e81f711c2d.
This commit is contained in:
GitHub
2025-12-27 19:05:59 +08:00
parent ae9b93115f
commit f3f5cc6bcb
5 changed files with 115 additions and 169 deletions

View File

@@ -81,37 +81,25 @@
</div>
</div>
<div class="box">
<div class="list has-visible-pointer-controls has-overflow-ellipsis box">
{% for post in posts %}
<div class="media">
<div class="media-left">
<div class="list-item">
<div class="list-item-image">
<figure class="image is-48x48">
<a href="/user/{{post.uid}}" title="author: {{post.username}}"><img src="/static/avatars/{{post.uid}}.png"></a>
<p><a href="/user/{{post.uid}}" title="author: {{post.username}}"><img src="/static/avatars/{{post.uid}}.png"></a></p>
</figure>
</div>
<div class="media-content">
<div class="content">
<div class="list-item-content">
<div class="list-item-title"><strong>
<a href="/post/{{post.iid}}/{{post.pid}}">
{% if post.is_pinned %}
<i class="fa-solid fa-thumbtack"></i>
{% endif %}{{post.title}}
</a>
{% if post.is_pinned %} 📌 {% endif %}{{post.title}}</a></strong>
</div>
<div class="level is-mobile">
<div class="level-left">
<a class="tag" href="/inn/{{post.iid}}">
{{post.inn_name}}
</a>
<span class="tag">
{{post.created_at}}
</span>
{% match post.last_reply %}{% when Some(user) %}
<a class="tag" href="/user/{{user.0}}">
<i class="fa-solid fa-reply mr-1"></i>
{{user.1}}
</a>
{% else %}{% endmatch %}
</div>
<div class="list-item-description">
<span class="tag"><a href="/inn/{{post.iid}}">{{post.inn_name}}</a></span>
<span class="tag">{{post.created_at}}</span>
{% match post.last_reply %}{% when Some(user) %}
<span class="tag" title="last reply"><a href="/user/{{user.0}}">{{user.1}}</a></span>
{% else %}{% endmatch %}
</div>
</div>
<div class="list-item-controls">

View File

@@ -46,45 +46,31 @@
</div>
</div>
<div class="box">
<div class="list has-visible-pointer-controls has-overflow-ellipsis box">
{% for inn in inns %}
<div class="media">
<div class="media-left">
<div class="list-item">
<div class="list-item-image">
<figure class="image is-64x64">
<a href="/inn/{{inn.iid}}"><img class="is-rounded" src="/static/inn_icons/{{inn.iid}}.png"></a>
</figure>
</div>
<div class="media-content">
<div class="content">
<a href="/inn/{{inn.iid}}">{{inn.inn_name}}</a>
{% if !inn.about.is_empty() %}
<div>{{inn.about}}</div>
{% endif %}
</div>
<div class="list-item-content">
<div class="list-item-title"><a href="/inn/{{inn.iid}}">{{inn.inn_name}}</a></div>
{% if !inn.about.is_empty() %}
<div class="list-item-description">{{inn.about}}</div>
{% endif %}
</div>
<div class="level is-mobile">
<div class="level-left">
{% for topic in inn.topics %}
<a class="level-item" href="/inn/list?topic={{topic}}">
<span class="button is-info is-small is-rounded">
{{topic}}
</span>
</a>
{% endfor %}
{% match filter.as_deref() %} {% when Some with ("mod") %}
<a class="level-item" href="/mod/{{inn.iid}}">
<span class="button is-success is-small is-rounded">
{{ "edit"|l10n(page_data.lang) }}
</span>
</a>
{% when Some with ("joined") %}
<a class="level-item" href="/inn/{{inn.iid}}/join">
<span class="button is-danger is-small is-rounded">
{{ "exit"|l10n(page_data.lang) }}
</span>
</a>
{% else %}{% endmatch %}
</div>
<div class="list-item-controls">
{% for topic in inn.topics %}
<a href="/inn/list?topic={{topic}}"><span class="tag is-info">{{topic}}</span></a>
{% endfor %}
{% match filter.as_deref() %} {% when Some with ("mod") %}
<a href="/mod/{{inn.iid}}"><span class="tag is-success">Edit</span></a>
{% when Some with ("joined") %}
<a href="/inn/{{inn.iid}}/join"><span class="tag is-danger">{{ "exit"|l10n(page_data.lang) }}</span></a>
{% else %}{% endmatch %}
</div>
</div>
{% endfor %}

View File

@@ -66,29 +66,24 @@
<div class="divider"></div>
<div class="box">
<div class="list has-visible-pointer-controls has-overflow-ellipsis box">
{% for out in outs %}
<div class="media">
<div class="list-item">
{% match out.uid %} {% when Some(uid) %}
<div class="media-left">
<div class="list-item-image">
<figure class="image is-48x48">
<a href="/user/{{uid}}">
<img src="/static/avatars/{{uid}}.png">
</a>
<p><a href="/user/{{uid}}"><img src="/static/avatars/{{uid}}.png"></a></p>
</figure>
</div>
{% else %}{% endmatch %}
<div class="media-content">
<div class="content">
<p>
<a href="{{ out.url }}">
{{out.title}}
</a>
</p>
<p>
<span class="tag">{{out.date}}</span>
<span class="tag">{{out.ctype}}</span>
</p>
<div class="list-item-content">
<div class="list-item-title"><strong>
<a href="{{ out.url }}">
{{out.title}}</a></strong>
</div>
<div class="list-item-description">
<span class="tag">{{out.date}}</span>
<span class="tag">{{out.ctype}}</span>
</div>
</div>
</div>

View File

@@ -15,53 +15,32 @@
<li><a href="/inn/0?filter=joined">{{ "joined"|l10n(page_data.lang) }}</a></li>
<li><a href="/inn/0?filter=following">{{ "following"|l10n(page_data.lang) }}</a></li>
{% endif %}
<li class="is-active">
<a href="/inn/tag/{{tag}}">
<i class="fa-solid fa-tag mr-1"></i>
{{tag}}
</a>
</li>
<li class="is-active"><a href="/inn/tag/{{tag}}">🏷️ {{tag}}</a></li>
</ul>
</div>
</div>
</div>
<div class="box">
<div class="list has-visible-pointer-controls has-overflow-ellipsis box">
{% for post in posts %}
<div class="media">
<div class="media-left">
<div class="list-item">
<div class="list-item-image">
<figure class="image is-48x48">
<a href="/user/{{post.uid}}" title="{{post.username}}">
<img src="/static/avatars/{{post.uid}}.png">
</a>
<p><a href="/user/{{post.uid}}" title="{{post.username}}"><img src="/static/avatars/{{post.uid}}.png"></a></p>
</figure>
</div>
<div class="media-content">
<div class="content">
<p>
<a href="/post/{{post.iid}}/{{post.pid}}">
{{post.title}}
</a>
</p>
<p>
<span class="tag">
<a href="/inn/{{post.iid}}">
{{post.inn_name}}
</a>
</span>
<span class="tag">
{{post.created_at}}
</span>
</p>
</div>
<div class="level is-mobile">
<div class="level-left">
{% if post.comment_count >0 %}
<a href="/post/{{post.iid}}/{{post.pid}}#{{post.comment_count}}"><span class="tag is-info">{{post.comment_count}}</span></a>
{% endif %}
</div>
<div class="list-item-content">
<div class="list-item-title"><strong><a href="/post/{{post.iid}}/{{post.pid}}">{{post.title}}</a></strong></div>
<div class="list-item-description">
<span class="tag"><a href="/inn/{{post.iid}}">{{post.inn_name}}</a></span>
<span class="tag">{{post.created_at}}</span>
</div>
</div>
<div class="list-item-controls">
{% if post.comment_count >0 %}
<a href="/post/{{post.iid}}/{{post.pid}}#{{post.comment_count}}"><span class="tag is-info">{{post.comment_count}}</span></a>
{% endif %}
</div>
</div>
{% endfor %}
</div>

View File

@@ -87,73 +87,71 @@
</div>
</div>
<div class="box">
<div class="list has-visible-pointer-controls has-overflow-ellipsis box">
{% for user in users %}
<div class="media">
<div class="media-left">
<div class="list-item">
<div class="list-item-image">
<figure class="image is-64x64">
<a href="/user/{{user.uid}}"><img src="/static/avatars/{{user.uid}}.png"></a>
</figure>
</div>
<div class="media-content">
<div class="content">
<p><a href="/user/{{user.uid}}">{{user.username}}</a></p>
<p> {{user.about}}</p>
</div>
<div class="level is-mobile">
{% if is_admin %}
{% match filter.as_deref() %} {% when Some with ("inn") %}
<form id="role" action="/role/{{info.0}}/{{user.uid}}" method="post">
<fieldset>
<div class="field has-addons">
<p class="control">
<span class="select is-small">
<select name="role" required autocomplete="off">
{% if info.2 %}
<option value="Pending" {% if user.role == 1 %} selected {% endif %}>{{ "pending"|l10n(page_data.lang) }}</option>
<option value="Rejected" {% if user.role == 2 %} selected {% endif %}>{{ "rejected"|l10n(page_data.lang) }}</option>
{% endif %}
<option value="Limited" {% if user.role == 3 %} selected {% endif %}>{{ "limited"|l10n(page_data.lang) }}</option>
<option value="Intern" {% if user.role == 4 %} selected {% endif %}>{{ "intern"|l10n(page_data.lang) }}</option>
<option value="Fellow" {% if user.role == 5 %} selected {% endif %}>{{ "fellow"|l10n(page_data.lang) }}</option>
<option value="Mod" {% if user.role == 7 %} selected {% endif %}>{{ "mod"|l10n(page_data.lang) }}</option>
<option value="Super" {% if user.role == 10 %} selected {% endif %}>{{ "super"|l10n(page_data.lang) }}</option>
</select>
</span>
</p>
<div class="control">
<button type="submit" class="button is-success is-small">{{ "save"|l10n(page_data.lang) }}</button>
</div>
<div class="list-item-content">
<div class="list-item-title"><a href="/user/{{user.uid}}">{{user.username}}</a></div>
<div class="list-item-description">{{user.about}}</div>
</div>
<div class="list-item-controls">
{% if is_admin %}
{% match filter.as_deref() %} {% when Some with ("inn") %}
<form id="role" action="/role/{{info.0}}/{{user.uid}}" method="post">
<fieldset>
<div class="field has-addons">
<p class="control">
<span class="select is-small">
<select name="role" required autocomplete="off">
{% if info.2 %}
<option value="Pending" {% if user.role == 1 %} selected {% endif %}>{{ "pending"|l10n(page_data.lang) }}</option>
<option value="Rejected" {% if user.role == 2 %} selected {% endif %}>{{ "rejected"|l10n(page_data.lang) }}</option>
{% endif %}
<option value="Limited" {% if user.role == 3 %} selected {% endif %}>{{ "limited"|l10n(page_data.lang) }}</option>
<option value="Intern" {% if user.role == 4 %} selected {% endif %}>{{ "intern"|l10n(page_data.lang) }}</option>
<option value="Fellow" {% if user.role == 5 %} selected {% endif %}>{{ "fellow"|l10n(page_data.lang) }}</option>
<option value="Mod" {% if user.role == 7 %} selected {% endif %}>{{ "mod"|l10n(page_data.lang) }}</option>
<option value="Super" {% if user.role == 10 %} selected {% endif %}>{{ "super"|l10n(page_data.lang) }}</option>
</select>
</span>
</p>
<div class="control">
<button type="submit" class="button is-success is-small">{{ "save"|l10n(page_data.lang) }}</button>
</div>
</fieldset>
</form>
{% when None %}
<form id="role" action="/role/{{info.0}}/{{user.uid}}" method="post">
<fieldset>
<div class="field has-addons">
<p class="control">
<span class="select is-small">
<select name="role" required autocomplete="off">
<option value="Admin" {% if user.role == 255 %} selected {% endif %}>{{ "admin"|l10n(page_data.lang) }}</option>
<option value="Senior" {% if user.role == 100 %} selected {% endif %}>{{ "senior"|l10n(page_data.lang) }}</option>
<option value="Standard" {% if user.role == 10 %} selected {% endif %}>{{ "standard"|l10n(page_data.lang) }}</option>
<option value="Banned" {% if user.role == 0 %} selected {% endif %}>{{ "banned"|l10n(page_data.lang) }}</option>
</select>
</span>
</p>
<div class="control">
<button type="submit" class="button is-success is-small">{{ "save"|l10n(page_data.lang) }}</button>
</div>
</div>
</fieldset>
</form>
{% when None %}
<form id="role" action="/role/{{info.0}}/{{user.uid}}" method="post">
<fieldset>
<div class="field has-addons">
<p class="control">
<span class="select is-small">
<select name="role" required autocomplete="off">
<option value="Admin" {% if user.role == 255 %} selected {% endif %}>{{ "admin"|l10n(page_data.lang) }}</option>
<option value="Senior" {% if user.role == 100 %} selected {% endif %}>{{ "senior"|l10n(page_data.lang) }}</option>
<option value="Standard" {% if user.role == 10 %} selected {% endif %}>{{ "standard"|l10n(page_data.lang) }}</option>
<option value="Banned" {% if user.role == 0 %} selected {% endif %}>{{ "banned"|l10n(page_data.lang) }}</option>
</select>
</span>
</p>
<div class="control">
<button type="submit" class="button is-success is-small">{{ "save"|l10n(page_data.lang) }}</button>
</div>
</fieldset>
</form>
{% else %}
<span class="tag is-info">{{user.role_desc}}</span>
{% endmatch %}
</div>
</fieldset>
</form>
{% else %}
<span class="tag is-info">{{user.role_desc}}</span>
{% endif %}
</div>
{% endmatch %}
{% else %}
<span class="tag is-info">{{user.role_desc}}</span>
{% endif %}
</div>
</div>
{% endfor %}