From 752d1005051130fe021dd3fd185639427c65b211 Mon Sep 17 00:00:00 2001
From: skidoodle <contact@albert.lol>
Date: Mon, 18 Sep 2023 20:15:20 +0200
Subject: [PATCH] Improve subject validation

---
 src/pages/api/erettsegi.ts | 17 +++++------------
 1 file changed, 5 insertions(+), 12 deletions(-)

diff --git a/src/pages/api/erettsegi.ts b/src/pages/api/erettsegi.ts
index ef0c67a..0959492 100644
--- a/src/pages/api/erettsegi.ts
+++ b/src/pages/api/erettsegi.ts
@@ -1,4 +1,5 @@
 import { NextApiRequest, NextApiResponse } from 'next'
+import { subjects } from '@/utils/subjects'
 
 export default function handler(req: NextApiRequest, res: NextApiResponse) {
   const { ev, szint, vizsgatargy, idoszak } = req.query
@@ -16,21 +17,13 @@ export default function handler(req: NextApiRequest, res: NextApiResponse) {
       .json({ error: `Hiányzó paraméterek: ${missingParams.join(', ')}` })
   }
 
-  if (ev! <= '2005') {
+  if (ev! <= '2012') {
     return res.status(400).json({ error: 'Érvénytelen év' })
   }
 
-  switch (vizsgatargy) {
-    case 'magyir':
-    case 'mat':
-    case 'tort':
-    case 'angol':
-    case 'nemet':
-    case 'inf':
-    case 'infoism':
-      break
-    default:
-      return res.status(400).json({ error: 'Érvénytelen vizsgatárgy' })
+  const validSubjects = subjects.map((subject) => subject.value)
+  if (!vizsgatargy || !validSubjects.includes(vizsgatargy as string)) {
+    return res.status(400).json({ error: 'Érvénytelen vizsgatárgy' })
   }
 
   let honap