Add admin study user enrollment list
This commit is contained in:
@@ -74,6 +74,12 @@ export interface AdminStats {
|
||||
enrolledUsers: number
|
||||
totalEnrollments: number
|
||||
enrollmentsByStudy: Array<{ slug: string; title: string; count: number }>
|
||||
users: Array<{
|
||||
id: string
|
||||
username: string
|
||||
displayName: string
|
||||
enrolledStudies: Array<{ slug: string; title: string }>
|
||||
}>
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2332,6 +2338,32 @@ export default function AdminPage({ content, onSave, onLogout }: Props) {
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className="admin-dashboard-activity" style={{ marginTop: '1rem' }}>
|
||||
<div className="admin-dashboard-activity-col" style={{ gridColumn: '1 / -1' }}>
|
||||
<h3 className="admin-dashboard-activity-heading">Study Users & Enrollments</h3>
|
||||
{stats?.studyEnrollment?.users?.length
|
||||
? (
|
||||
<div className="admin-dashboard-feed">
|
||||
{stats.studyEnrollment.users.map(user => (
|
||||
<div key={user.id} className="admin-dashboard-feed-item">
|
||||
<div className="admin-dashboard-feed-meta">
|
||||
<strong>{user.displayName || user.username}</strong>
|
||||
{user.displayName && <span className="admin-dashboard-feed-email">{user.username}</span>}
|
||||
</div>
|
||||
<div className="admin-dashboard-feed-preview">
|
||||
{user.enrolledStudies.length
|
||||
? `Enrolled in: ${user.enrolledStudies.map(study => study.title).join(', ')}`
|
||||
: 'Not enrolled in any studies yet.'}
|
||||
</div>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
)
|
||||
: <p className="admin-stats-note">No study users yet.</p>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
)
|
||||
})()}
|
||||
|
||||
Reference in New Issue
Block a user