Compare commits
27 Commits
07065803fc
...
2a3fc6ad4d
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a3fc6ad4d | ||
|
|
4a4590abd1 | ||
|
|
386e2e03bf | ||
| 9d401ae4b1 | |||
| 9b31fe6a27 | |||
| 5b5213f871 | |||
| be717d8f60 | |||
| 79822d1931 | |||
| e057f1409c | |||
| 5d0aa45dad | |||
| 2bff3ed452 | |||
| f06a74891d | |||
| 9aefe892cf | |||
| 36014ca954 | |||
| 13bc135e09 | |||
| ace90b9e10 | |||
| a65d03ccdd | |||
| a8ff1d377a | |||
| cf3828da0d | |||
| f5e32e050b | |||
| 96ec7f8c2e | |||
| e72c7e105a | |||
| 51ca53af88 | |||
| 412bae77fb | |||
| 4058c1512c | |||
| 598b62018d | |||
| c045760116 |
@ -625,31 +625,6 @@ export default function AppointmentDetailPage() {
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{appointment.scheduled_datetime && (
|
|
||||||
<div className={`px-4 py-3 rounded-lg border ${isDark ? "bg-blue-500/10 border-blue-500/30" : "bg-blue-50 border-blue-200"}`}>
|
|
||||||
<p className={`text-sm font-semibold mb-2 ${isDark ? "text-blue-300" : "text-blue-700"}`}>
|
|
||||||
Meeting Information
|
|
||||||
</p>
|
|
||||||
<div className="space-y-2">
|
|
||||||
<div>
|
|
||||||
<p className={`text-xs font-medium mb-1 ${isDark ? "text-blue-200" : "text-blue-600"}`}>
|
|
||||||
Meeting Start Time:
|
|
||||||
</p>
|
|
||||||
<p className={`text-sm ${isDark ? "text-blue-100" : "text-blue-800"}`}>
|
|
||||||
{formatDate(appointment.scheduled_datetime)} at {formatTime(appointment.scheduled_datetime)}
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<p className={`text-xs font-medium mb-1 ${isDark ? "text-blue-200" : "text-blue-600"}`}>
|
|
||||||
How to Access:
|
|
||||||
</p>
|
|
||||||
<p className={`text-sm ${isDark ? "text-blue-100" : "text-blue-800"}`}>
|
|
||||||
Click the "Start Meeting" button below to begin the session. Once started, participants can join using the meeting link. You can also use the moderator link above to join directly.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
)}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
@ -689,6 +664,31 @@ export default function AppointmentDetailPage() {
|
|||||||
{formatStatus(appointment.status)}
|
{formatStatus(appointment.status)}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
{appointment.scheduled_datetime && (
|
||||||
|
<div className="pt-4 border-t border-gray-200 dark:border-gray-700">
|
||||||
|
<p className={`text-xs font-medium mb-2 uppercase tracking-wider ${isDark ? "text-gray-400" : "text-gray-500"}`}>
|
||||||
|
Meeting Information
|
||||||
|
</p>
|
||||||
|
<div className="space-y-3">
|
||||||
|
<div>
|
||||||
|
<p className={`text-xs font-medium mb-1 ${isDark ? "text-gray-400" : "text-gray-500"}`}>
|
||||||
|
Meeting Start Time:
|
||||||
|
</p>
|
||||||
|
<p className={`text-sm font-medium ${isDark ? "text-white" : "text-gray-900"}`}>
|
||||||
|
{formatDate(appointment.scheduled_datetime)} at {formatTime(appointment.scheduled_datetime)}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<p className={`text-xs font-medium mb-1 ${isDark ? "text-gray-400" : "text-gray-500"}`}>
|
||||||
|
How to Access:
|
||||||
|
</p>
|
||||||
|
<p className={`text-sm ${isDark ? "text-gray-300" : "text-gray-700"}`}>
|
||||||
|
Click the "Start Meeting" button below to begin the session. Once started, participants can join using the meeting link. You can also use the moderator link above to join directly.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -472,31 +472,6 @@ export default function UserAppointmentDetailPage() {
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{appointment.scheduled_datetime && (
|
|
||||||
<div className={`px-4 py-3 rounded-lg border ${isDark ? "bg-blue-500/10 border-blue-500/30" : "bg-blue-50 border-blue-200"}`}>
|
|
||||||
<p className={`text-sm font-semibold mb-2 ${isDark ? "text-blue-300" : "text-blue-700"}`}>
|
|
||||||
Meeting Information
|
|
||||||
</p>
|
|
||||||
<div className="space-y-2">
|
|
||||||
<div>
|
|
||||||
<p className={`text-xs font-medium mb-1 ${isDark ? "text-blue-200" : "text-blue-600"}`}>
|
|
||||||
Meeting Start Time:
|
|
||||||
</p>
|
|
||||||
<p className={`text-sm ${isDark ? "text-blue-100" : "text-blue-800"}`}>
|
|
||||||
{formatDate(appointment.scheduled_datetime)} at {formatTime(appointment.scheduled_datetime)}
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<p className={`text-xs font-medium mb-1 ${isDark ? "text-blue-200" : "text-blue-600"}`}>
|
|
||||||
How to Access:
|
|
||||||
</p>
|
|
||||||
<p className={`text-sm ${isDark ? "text-blue-100" : "text-blue-800"}`}>
|
|
||||||
Click the "Join Now" button below when the meeting becomes available. The meeting will be accessible shortly before the scheduled start time.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
)}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
@ -536,6 +511,31 @@ export default function UserAppointmentDetailPage() {
|
|||||||
{formatStatus(appointment.status)}
|
{formatStatus(appointment.status)}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
{appointment.scheduled_datetime && (
|
||||||
|
<div className="pt-4 border-t border-gray-200 dark:border-gray-700">
|
||||||
|
<p className={`text-xs font-medium mb-2 uppercase tracking-wider ${isDark ? "text-gray-400" : "text-gray-500"}`}>
|
||||||
|
Meeting Information
|
||||||
|
</p>
|
||||||
|
<div className="space-y-3">
|
||||||
|
<div>
|
||||||
|
<p className={`text-xs font-medium mb-1 ${isDark ? "text-gray-400" : "text-gray-500"}`}>
|
||||||
|
Meeting Start Time:
|
||||||
|
</p>
|
||||||
|
<p className={`text-sm font-medium ${isDark ? "text-white" : "text-gray-900"}`}>
|
||||||
|
{formatDate(appointment.scheduled_datetime)} at {formatTime(appointment.scheduled_datetime)}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<p className={`text-xs font-medium mb-1 ${isDark ? "text-gray-400" : "text-gray-500"}`}>
|
||||||
|
How to Access:
|
||||||
|
</p>
|
||||||
|
<p className={`text-sm ${isDark ? "text-gray-300" : "text-gray-700"}`}>
|
||||||
|
Click the "Join Now" button below when the meeting becomes available. The meeting will be accessible shortly before the scheduled start time.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -234,10 +234,9 @@ export default function UserDashboard() {
|
|||||||
<h3 className={`text-xs font-medium mb-1 sm:mb-2 uppercase tracking-wider ${isDark ? 'text-rose-400' : 'text-rose-600'}`}>
|
<h3 className={`text-xs font-medium mb-1 sm:mb-2 uppercase tracking-wider ${isDark ? 'text-rose-400' : 'text-rose-600'}`}>
|
||||||
Upcoming Appointments
|
Upcoming Appointments
|
||||||
</h3>
|
</h3>
|
||||||
<p className={`text-xl sm:text-2xl font-bold mb-1 ${isDark ? 'text-white' : 'text-gray-900'}`}>
|
<p className={`text-xl sm:text-2xl font-bold ${isDark ? 'text-white' : 'text-gray-900'}`}>
|
||||||
{displayStats.scheduled}
|
{displayStats.scheduled}
|
||||||
</p>
|
</p>
|
||||||
<p className={`text-xs font-medium ${isDark ? 'text-gray-400' : 'text-gray-600'}`}>vs last month</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -259,10 +258,9 @@ export default function UserDashboard() {
|
|||||||
<h3 className={`text-xs font-medium mb-1 sm:mb-2 uppercase tracking-wider ${isDark ? 'text-rose-400' : 'text-rose-600'}`}>
|
<h3 className={`text-xs font-medium mb-1 sm:mb-2 uppercase tracking-wider ${isDark ? 'text-rose-400' : 'text-rose-600'}`}>
|
||||||
Completed Sessions
|
Completed Sessions
|
||||||
</h3>
|
</h3>
|
||||||
<p className={`text-xl sm:text-2xl font-bold mb-1 ${isDark ? 'text-white' : 'text-gray-900'}`}>
|
<p className={`text-xl sm:text-2xl font-bold ${isDark ? 'text-white' : 'text-gray-900'}`}>
|
||||||
{displayStats.completed}
|
{displayStats.completed}
|
||||||
</p>
|
</p>
|
||||||
<p className={`text-xs font-medium ${isDark ? 'text-gray-400' : 'text-gray-600'}`}>vs last month</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -284,10 +282,9 @@ export default function UserDashboard() {
|
|||||||
<h3 className={`text-xs font-medium mb-1 sm:mb-2 uppercase tracking-wider ${isDark ? 'text-rose-400' : 'text-rose-600'}`}>
|
<h3 className={`text-xs font-medium mb-1 sm:mb-2 uppercase tracking-wider ${isDark ? 'text-rose-400' : 'text-rose-600'}`}>
|
||||||
Total Appointments
|
Total Appointments
|
||||||
</h3>
|
</h3>
|
||||||
<p className={`text-xl sm:text-2xl font-bold mb-1 ${isDark ? 'text-white' : 'text-gray-900'}`}>
|
<p className={`text-xl sm:text-2xl font-bold ${isDark ? 'text-white' : 'text-gray-900'}`}>
|
||||||
{displayStats.total_requests}
|
{displayStats.total_requests}
|
||||||
</p>
|
</p>
|
||||||
<p className={`text-xs font-medium ${isDark ? 'text-gray-400' : 'text-gray-600'}`}>vs last month</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -309,10 +306,9 @@ export default function UserDashboard() {
|
|||||||
<h3 className={`text-xs font-medium mb-1 sm:mb-2 uppercase tracking-wider ${isDark ? 'text-rose-400' : 'text-rose-600'}`}>
|
<h3 className={`text-xs font-medium mb-1 sm:mb-2 uppercase tracking-wider ${isDark ? 'text-rose-400' : 'text-rose-600'}`}>
|
||||||
Pending Review
|
Pending Review
|
||||||
</h3>
|
</h3>
|
||||||
<p className={`text-xl sm:text-2xl font-bold mb-1 ${isDark ? 'text-white' : 'text-gray-900'}`}>
|
<p className={`text-xl sm:text-2xl font-bold ${isDark ? 'text-white' : 'text-gray-900'}`}>
|
||||||
{displayStats.pending_review}
|
{displayStats.pending_review}
|
||||||
</p>
|
</p>
|
||||||
<p className={`text-xs font-medium ${isDark ? 'text-gray-400' : 'text-gray-600'}`}>vs last month</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user