Skip to content

Commit 44107b1

Browse files
committed
chore: bump
1 parent c4489fd commit 44107b1

File tree

4 files changed

+30
-15
lines changed

4 files changed

+30
-15
lines changed

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,6 @@
4545
"eslint-config-next": "15.5.4",
4646
"ignore-loader": "^0.1.2",
4747
"tailwindcss": "^4",
48-
"typescript": "^5"
48+
"typescript": "5.9.3"
4949
}
5050
}

src/app/api/env/csv/route.ts

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,34 @@
11
import { NextResponse } from 'next/server';
2-
import { getToken } from 'next-auth/jwt';
2+
import { auth } from '@/lib/auth';
33

4-
export async function GET(req: Request) {
4+
export async function GET() {
55
try {
6-
const token = await getToken({ req, secret: process.env.NEXTAUTH_SECRET });
7-
const role = token?.role as string | undefined;
8-
if (!role || !(role === 'admin' || role === 'organizer')) {
9-
return new NextResponse(JSON.stringify({ error: 'Forbidden' }), { status: 403 });
6+
const session = await auth();
7+
8+
// User must be logged in
9+
if (!session?.user) {
10+
return NextResponse.json(
11+
{ error: 'Authentication required' },
12+
{ status: 401 }
13+
);
14+
}
15+
16+
// User must be admin or organizer
17+
if (session.user.role !== 'admin' && session.user.role !== 'organizer') {
18+
return NextResponse.json(
19+
{ error: 'Admin or organizer access required' },
20+
{ status: 403 }
21+
);
1022
}
1123

12-
const csvMailerLink = process.env.CSV_MAILER_LINK ?? process.env.NEXT_PUBLIC_CSV_MAILER_LINK ?? '';
13-
const csvMailerPrimary = process.env.CSV_MAILER_PRIMARY ?? process.env.NEXT_PUBLIC_CSV_MAILER_PRIMARY ?? '';
14-
return NextResponse.json({ csvMailerLink, csvMailerPrimary });
15-
} catch {
16-
return new NextResponse(JSON.stringify({ error: 'Server error' }), { status: 500 });
24+
const csvMailerLink = process.env.CSV_MAILER_LINK ?? '';
25+
const csvMailerPrimary = process.env.CSV_MAILER_PRIMARY ?? '';
26+
return NextResponse.json({ csvMailerLink, csvMailerPrimary });
27+
} catch (error) {
28+
console.error('Error in /api/env/csv:', error);
29+
return NextResponse.json(
30+
{ error: 'Server error' },
31+
{ status: 500 }
32+
);
1733
}
1834
}

src/app/dashboard/events/[id]/registrations/page.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,7 @@ export default function PendingRegistrationsPage({ params }: PageParams) {
5555
const [statusFilter, setStatusFilter] = useState<'all' | 'pending' | 'approved' | 'rejected' | 'checked-in'>('all');
5656
const [searchQuery, setSearchQuery] = useState<string>('');
5757
const [draftMessage, setDraftMessage] = useState<string>(`Hello!\nYou are invited to {EVENT_NAME}.\nPlease confirm your attendance by completing the payment and uploading the payment receipt using the payment confirmation form below.\n\nPayment confirmation form: https://forms.gle/\n\nPlease complete payment by the deadline.\n\nThanks,\nTeam`);
58-
const defaultCsvUrl = process.env.NEXT_PUBLIC_CSV_MAILER_LINK ?? process.env.CSV_MAILER_LINK ?? '';
59-
const [csvUrl, setCsvUrl] = useState<string>(defaultCsvUrl);
58+
const [csvUrl, setCsvUrl] = useState<string>('');
6059
const [csvRows, setCsvRows] = useState<Array<Record<string, string>>>([]);
6160
const [csvIndex, setCsvIndex] = useState<Record<string, Record<string, string>>>({});
6261
const [csvKeyField, setCsvKeyField] = useState<string>('SRN');

0 commit comments

Comments
 (0)