@if (!empty($functions) && !empty($compliance))
SERVICE | @foreach ($functions as $function){{ $function->name }} | @endforeach @unset($function)
---|---|
{{ $item['service']['name'] }} | @php foreach ($functions as $function) { echo '';
$isUsedThisFunctionByService = false;
foreach ($item['functions'] as $serviceFunction) {
if ($function->id === $serviceFunction['id']) {
$isUsedThisFunctionByService = true;
break;
}
}
if ($isUsedThisFunctionByService) {
foreach ($item['controlFamily'] as $controlFamily) {
$isUsedThisControlFamily = false;
$controlRowByCorrelation = [];
foreach ($item['correlations'] as $correlation) {
if (
$correlation['function_id'] === $function->id
&&
$correlation['control_family_id'] === $controlFamily['id']
) {
$isUsedThisControlFamily = true;
$controlNamesByControlFamily = [];
foreach ($item['controls'] as $control) {
if (
$control['correlation_id'] === $correlation['id']
&&
in_array($correlation['control_family_id'], $control['control_family_id'])
) {
array_push($controlNamesByControlFamily, $control['name']);
}
}
array_push($controlRowByCorrelation, implode('', [
$correlation['description'],
' ', '' . $correlation['short_name'] . ': ', implode(', ', $controlNamesByControlFamily) ])); } } if ($isUsedThisControlFamily && !empty($controlRowByCorrelation)) { echo implode('', [ '' . $controlFamily['name'] . '', ' ', implode(' ', $controlRowByCorrelation), ' ', ' ' ]); } } } echo ' | ';
}
@endphp