{% extends "base.html" %}
{% block title %}Admin Dashboard{% endblock %}
{% block content %}
Admin Dashboard
{{ org.name }} ยท {{ org.org_type }}
Members
{{ members|length }}
Pending approvals
{{ requests|length }}
Total approved savings
โฆ{{ members | sum(attribute='savings') | number_format }}
Awaiting verification
โฆ{{ members | sum(attribute='pending_amt') | number_format }}
๐จ Payment requests awaiting your approval
{% if requests %}
| Member | Amount | Pay date | Bank ref | Note | Decision |
{% for r in requests %}
| {{ r.full_name }} |
โฆ{{ r.amount | number_format }} |
{{ r.payment_date }} |
{{ r.reference or 'โ' }} |
{{ r.note or 'โ' }} |
|
{% endfor %}
{% else %}
No pending payment requests. ๐
{% endif %}
๐ Recent decisions
| Member | Amount | Status | Decided | Reason / note |
{% for d in decisions %}
| {{ d.full_name }} |
โฆ{{ d.amount | number_format }} |
{{ d.status }} |
{{ d.decided_at[:16].replace('T',' ') if d.decided_at else 'โ' }} |
{{ d.decided_note or 'โ' }} |
{% else %}
| No decisions yet. |
{% endfor %}
๐ฅ Members
| Name | Email | Approved | Pending |
{% for m in members %}
| {{ m.full_name }} | {{ m.email }} |
โฆ{{ m.savings | number_format }} |
{% if m.pending_amt %}โฆ{{ m.pending_amt | number_format }}{% else %}โ{% endif %} |
{% else %}
| No members yet โ add one below. |
{% endfor %}
โ Add member
๐ Update members' dues
Current dues
| Member | Title | Amount | Due date |
{% for d in dues %}
| {{ d.full_name }} | {{ d.title }} | โฆ{{ d.amount | number_format }} | {{ d.due_date or 'โ' }} |
{% else %}
| No dues assigned yet. |
{% endfor %}
๐ฆ Designated account & settings
{% if org.bank_name %}
Members should pay directly into:
{{ org.bank_name }} โ {{ org.account_number }} โ {{ org.account_name }}
{% endif %}
๐งพ Audit trail
| When | Actor | Action | Detail |
{% for l in logs %}
| {{ l.created_at[:16].replace('T',' ') }} | {{ l.actor }} | {{ l.action }} | {{ l.detail }} |
{% else %}
| No activity yet. |
{% endfor %}
{% endblock %}