feat: mejorar la gestión de niveles de inglés en la selección de cursos

This commit is contained in:
2026-04-16 15:37:32 -04:00
parent 59a4ca5d52
commit 65f62281bb
2 changed files with 95 additions and 15 deletions
+14 -15
View File
@@ -249,14 +249,15 @@ export default function AdminSharedMaterialsPage() {
setSelectedCourseId(value);
setSplitToRegular(false);
const selected = courses.find((c) => c.idCursos === value);
if (selected?.NivelCurso !== undefined && selected?.NivelCurso !== null) {
const n = selected.NivelCurso;
if (n <= 2) setEnglishLevel('beginner_1');
else if (n <= 4) setEnglishLevel('beginner_2');
else if (n <= 6) setEnglishLevel('intermediate_1');
else if (n <= 8) setEnglishLevel('intermediate_2');
else if (n <= 10) setEnglishLevel('advanced_1');
else setEnglishLevel('advanced_2');
if (selected?.NombreCurso) {
const normalized = selected.NombreCurso.toUpperCase().replace(/\s*INTENSIVE\s*/g, '').trim();
if (normalized.includes('ELEMENTARY')) setEnglishLevel('elementary');
else if (normalized.includes('BEGINNER')) setEnglishLevel('beginner');
else if (normalized.includes('PRE-INTERMEDIATE') || normalized.includes('PRE INTERMEDIATE')) setEnglishLevel('pre_intermediate');
else if (normalized.includes('LOW INTERMEDIATE')) setEnglishLevel('low_intermediate');
else if (normalized.includes('UPPER-INTERMEDIATE') || normalized.includes('UPPER INTERMEDIATE')) setEnglishLevel('upper_intermediate');
else if (normalized.includes('PRE ADVANCED') || normalized.includes('PRE-ADVANCED')) setEnglishLevel('pre_advanced');
else if (normalized.includes('ADVANCED')) setEnglishLevel('advanced');
}
}}
disabled={!selectedPlanId}
@@ -359,15 +360,13 @@ export default function AdminSharedMaterialsPage() {
className="w-full rounded-lg border border-slate-300 bg-white px-3 py-2 text-sm"
>
<option value="">Sin nivel (general)</option>
<option value="elementary">Elementary</option>
<option value="beginner">Beginner</option>
<option value="beginner_1">Beginner 1</option>
<option value="beginner_2">Beginner 2</option>
<option value="intermediate">Intermediate</option>
<option value="intermediate_1">Intermediate 1</option>
<option value="intermediate_2">Intermediate 2</option>
<option value="pre_intermediate">Pre Intermediate</option>
<option value="low_intermediate">Low Intermediate</option>
<option value="upper_intermediate">Upper Intermediate</option>
<option value="pre_advanced">Pre Advanced</option>
<option value="advanced">Advanced</option>
<option value="advanced_1">Advanced 1</option>
<option value="advanced_2">Advanced 2</option>
</select>
</div>