Fix issue where scores could not be recorded with advancement only subscores
This commit is contained in:
parent
c9fbb71eb9
commit
0b5a5ba722
|
|
@ -83,11 +83,10 @@ class JudgingController extends Controller
|
||||||
|
|
||||||
// Validate form data
|
// Validate form data
|
||||||
try {
|
try {
|
||||||
$subscores = $this->auditionService->getSubscores($entry->audition);
|
$subscores = $this->auditionService->getSubscores($entry->audition, 'all');
|
||||||
} catch (AuditionServiceException $e) {
|
} catch (AuditionServiceException $e) {
|
||||||
return redirect()->back()->with('error', 'Unable to get subscores - '.$e->getMessage());
|
return redirect()->back()->with('error', 'Unable to get subscores - '.$e->getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
$validationChecks = [];
|
$validationChecks = [];
|
||||||
foreach ($subscores as $subscore) {
|
foreach ($subscores as $subscore) {
|
||||||
$validationChecks['score'.'.'.$subscore->id] = 'required|integer|max:'.$subscore->max_score;
|
$validationChecks['score'.'.'.$subscore->id] = 'required|integer|max:'.$subscore->max_score;
|
||||||
|
|
@ -122,7 +121,7 @@ class JudgingController extends Controller
|
||||||
|
|
||||||
// Validate form data
|
// Validate form data
|
||||||
try {
|
try {
|
||||||
$subscores = $this->auditionService->getSubscores($entry->audition);
|
$subscores = $this->auditionService->getSubscores($entry->audition, 'all');
|
||||||
} catch (AuditionServiceException $e) {
|
} catch (AuditionServiceException $e) {
|
||||||
return redirect()->back()->with('error', 'Error getting subscores - '.$e->getMessage());
|
return redirect()->back()->with('error', 'Error getting subscores - '.$e->getMessage());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -43,9 +43,14 @@ class AuditionService
|
||||||
$modeColumn = match ($mode) {
|
$modeColumn = match ($mode) {
|
||||||
'seating' => 'for_seating',
|
'seating' => 'for_seating',
|
||||||
'advancement' => 'for_advance',
|
'advancement' => 'for_advance',
|
||||||
|
'all' => null,
|
||||||
};
|
};
|
||||||
$audition->load('scoringGuide.subscores');
|
$audition->load('scoringGuide.subscores');
|
||||||
|
|
||||||
|
if ($mode == 'all') {
|
||||||
|
return $audition->scoringGuide->subscores->sortBy($sortColumn);
|
||||||
|
}
|
||||||
|
|
||||||
return $audition->scoringGuide->subscores->where($modeColumn, true)->sortBy($sortColumn);
|
return $audition->scoringGuide->subscores->where($modeColumn, true)->sortBy($sortColumn);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -103,6 +108,7 @@ class AuditionService
|
||||||
'limit' => $limit->maximum_accepted,
|
'limit' => $limit->maximum_accepted,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
return $lims;
|
return $lims;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -118,7 +124,7 @@ class AuditionService
|
||||||
|
|
||||||
protected function validateMode($mode)
|
protected function validateMode($mode)
|
||||||
{
|
{
|
||||||
if ($mode !== 'seating' && $mode !== 'advancement') {
|
if ($mode !== 'seating' && $mode !== 'advancement' && $mode !== 'all') {
|
||||||
throw new AuditionServiceException('Invalid mode requested. Mode must be seating or advancement');
|
throw new AuditionServiceException('Invalid mode requested. Mode must be seating or advancement');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue