order memberships better

pull/134/head
Aevann 2023-02-24 21:53:40 +02:00
parent a3dec0033c
commit fac4da6769
2 changed files with 11 additions and 3 deletions

View File

@ -92,7 +92,13 @@ def leave_group(v:User, group_name):
def memberships(v:User, group_name):
group = g.db.get(Group, group_name)
if not group: abort(404)
return render_template('group_memberships.html', v=v, group=group)
memberships = g.db.query(GroupMembership).filter_by(group_name=group_name).order_by(
GroupMembership.approved_utc.desc(),
GroupMembership.created_utc.desc(),
).all()
return render_template('group_memberships.html', v=v, group=group, memberships=memberships)
@app.post("/!<group_name>/<user_id>/approve")
@limiter.limit(DEFAULT_RATELIMIT_SLOWER, key_func=get_ID)

View File

@ -6,14 +6,14 @@
<thead class="bg-primary text-white">
<tr>
<th>Name</th>
<th>Approevd on</th>
<th>Approved on</th>
{% if v.id == group.owner.id %}
<th></th>
{% endif %}
</tr>
</thead>
<tbody>
{% for membership in group.memberships|reverse %}
{% for membership in memberships %}
<tr>
<td>
{% with user=membership.user %}
@ -28,6 +28,8 @@
<button type="button" class="btn btn-primary" data-nonce="{{g.nonce}}" data-onclick="approve_membership(this,'/!{{group}}/{{membership.user_id}}/approve')">Approve</button>
<button type="button" class="btn btn-primary" data-nonce="{{g.nonce}}" data-onclick="reject_membership(this,'/!{{group}}/{{membership.user_id}}/reject')">Reject</button>
</td>
{% else %}
<td></td>
{% endif %}
{% if v.id == group.owner.id %}