@php $row_key = 0; $step = 0; @endphp @foreach ($field['criterias'] as $repeatable_row_key => $criteria)

{{$criteria->title}}

@if ($hidden ?? false)
@endif
@if (isset($field['subfields']) && is_array($field['subfields']) && count($field['subfields'])) @php $indicator = Null; $indicator_case = NULL; $indicatorCasecriterias = App\Models\IndicatorCasecriteria::where('indicator_criteria_id', $criteria->id)->get(); @endphp @if(!empty($indicatorCasecriterias) && count($indicatorCasecriterias) > 0) @foreach($indicatorCasecriterias as $indicatorCasecriteria) @php $indicatorSubCriterias = $criteria->indicatorSubCriterias() ->where('indicator_casecriteria_id', $indicatorCasecriteria->id) ->where('indicator_criteria_id', $criteria->id)->get(); if(!empty($entry)) { $indicator_case = $entry->indicatorReferenceItems() ->where('indicator_criteria_id', $criteria->id) ->where('indicator_casecriteria_id', $indicatorCasecriteria->id) ->first(); } @endphp @if($step == 0) @include($crud->getFirstFieldView('inc.case_criteria'), ['row_key' => $row_key]) @endif
indicator_casecriteria_id)) class="d-none" @endif id="case-id-{{$indicatorCasecriteria->id}}"> @foreach($indicatorSubCriterias as $indicatorSubCriteria)

{{$indicatorSubCriteria->title}}

@php $indicatorEvicriterias = $indicatorSubCriteria->indicatorEviCriterias()->where('indicator_sub_criteria_id', $indicatorSubCriteria->id)->get(); @endphp
@foreach($indicatorEvicriterias as $indicatorEvicriteria) @php if(!empty($entry)) { $indicator = $entry->indicatorReferenceItems() ->where('indicator_criteria_id', $criteria->id) ->where('indicator_sub_criteria_id', $indicatorSubCriteria->id) ->where('indicator_evicriteria_id', $indicatorEvicriteria->id) ->first(); } @endphp @foreach($field['subfields'] as $subfield) @if($subfield['name'] == 'attachment') @php $subfieldView = $crud->getFirstFieldView($subfield['type'], $subfield['view_namespace'] ?? false); $subfield['label'] = $indicatorEvicriteria->title; if(isset($row)) { // Cast objects to array (could be a translation object, or a developer provided collection). if (is_object($row)) { $row = collect($row)->toArray(); } if(!is_array($subfield['name'])) { if(!Str::contains($subfield['name'], '.')) { // this is a fix for 4.1 repeatable names that when the field was multiple, saved the keys with `[]` in the end. Eg: `tags[]` instead of `tags` if(isset($row[$subfield['name']]) || isset($row[$subfield['name'].'[]'])) { $subfield['value'] = $row[$subfield['name']] ?? $row[$subfield['name'].'[]']; } $subfield['name'] = $field['name'].'['.$row_key.']['.$subfield['name'].']'; }else{ $subfield['value'] = \Arr::get($row, $subfield['name']); $subfield['name'] = $field['name'].'['.$row_key.']['.Str::replace('.', '][', $subfield['name']).']'; } }else{ foreach ($subfield['name'] as $k => $item) { $subfield['name'][$k] = $field['name'].'['.$row_key.']['.$item.']'; $subfield['value'][$subfield['name'][$k]] = \Arr::get($row, $item); } } } else { // use an un-matchable field name to avoid field initialization problems // this would prevent the field from EVER get value in old() and triggering errors. if(!is_array($subfield['name'])) { $subfield['name'] = $field['name'].'['.$row_key.']['.$subfield['name'].']'; }else{ foreach($subfield['name'] as $k => $subfieldName) { $subfield['name'][$k] = $field['name'].'['.$row_key.']['.$subfieldName.']'; } } } if(!empty($indicator) && !empty($indicator->attachment)) { $subfield['value'] = $indicator->attachment; } @endphp @include($subfieldView, ['field' => $subfield]) @endif @if(!empty($indicator)) @endif @if(!empty($indicatorEvicriteria->appendix) && $subfield['name'] == 'appendix') @php $subfieldViewAppendix = $crud->getFirstFieldView($subfield['type'], $subfield['view_namespace'] ?? false); if(isset($row)) { // Cast objects to array (could be a translation object, or a developer provided collection). if (is_object($row)) { $row = collect($row)->toArray(); } if(!is_array($subfield['name'])) { if(!Str::contains($subfield['name'], '.')) { // this is a fix for 4.1 repeatable names that when the field was multiple, saved the keys with `[]` in the end. Eg: `tags[]` instead of `tags` if(isset($row[$subfield['name']]) || isset($row[$subfield['name'].'[]'])) { $subfield['value'] = $row[$subfield['name']] ?? $row[$subfield['name'].'[]']; } $subfield['name'] = $field['name'].'['.$row_key.']['.$subfield['name'].']'; }else{ $subfield['value'] = \Arr::get($row, $subfield['name']); $subfield['name'] = $field['name'].'['.$row_key.']['.Str::replace('.', '][', $subfield['name']).']'; } }else{ foreach ($subfield['name'] as $k => $item) { $subfield['name'][$k] = $field['name'].'['.$row_key.']['.$item.']'; $subfield['value'][$subfield['name'][$k]] = \Arr::get($row, $item); } } } else { // use an un-matchable field name to avoid field initialization problems // this would prevent the field from EVER get value in old() and triggering errors. if(!is_array($subfield['name'])) { $subfield['name'] = $field['name'].'['.$row_key.']['.$subfield['name'].']'; }else{ foreach($subfield['name'] as $k => $subfieldName) { $subfield['name'][$k] = $field['name'].'['.$row_key.']['.$subfieldName.']'; } } } if(!empty($indicator) && !empty($indicator->appendix)) { $subfield['value'] = $indicator->appendix; } $subfield['appendix'] = $indicatorEvicriteria->appendix; @endphp @include($subfieldViewAppendix, ['field' => $subfield]) @endif @endforeach @php $row_key++; @endphp @endforeach
@endforeach
@php $step++; @endphp @endforeach @else @php $indicatorSubCriterias = $criteria->indicatorSubCriterias() ->where('indicator_criteria_id', $criteria->id)->get(); @endphp @foreach($indicatorSubCriterias as $indicatorSubCriteria)

{{$indicatorSubCriteria->title}}

@php $indicatorEvicriterias = $indicatorSubCriteria->indicatorEviCriterias()->where('indicator_sub_criteria_id', $indicatorSubCriteria->id)->get(); @endphp
@foreach($indicatorEvicriterias as $indicatorEvicriteria) @php if(!empty($entry)) { $indicator = $entry->indicatorReferenceItems() ->where('indicator_criteria_id', $criteria->id) ->where('indicator_sub_criteria_id', $indicatorSubCriteria->id) ->where('indicator_evicriteria_id', $indicatorEvicriteria->id) ->first(); } @endphp @foreach($field['subfields'] as $subfield) @if($subfield['name'] == 'attachment') @php $subfieldView = $crud->getFirstFieldView($subfield['type'], $subfield['view_namespace'] ?? false); $subfield['label'] = $indicatorEvicriteria->title; if(isset($row)) { // Cast objects to array (could be a translation object, or a developer provided collection). if (is_object($row)) { $row = collect($row)->toArray(); } if(!is_array($subfield['name'])) { if(!Str::contains($subfield['name'], '.')) { // this is a fix for 4.1 repeatable names that when the field was multiple, saved the keys with `[]` in the end. Eg: `tags[]` instead of `tags` if(isset($row[$subfield['name']]) || isset($row[$subfield['name'].'[]'])) { $subfield['value'] = $row[$subfield['name']] ?? $row[$subfield['name'].'[]']; } $subfield['name'] = $field['name'].'['.$row_key.']['.$subfield['name'].']'; }else{ $subfield['value'] = \Arr::get($row, $subfield['name']); $subfield['name'] = $field['name'].'['.$row_key.']['.Str::replace('.', '][', $subfield['name']).']'; } }else{ foreach ($subfield['name'] as $k => $item) { $subfield['name'][$k] = $field['name'].'['.$row_key.']['.$item.']'; $subfield['value'][$subfield['name'][$k]] = \Arr::get($row, $item); } } } else { // use an un-matchable field name to avoid field initialization problems // this would prevent the field from EVER get value in old() and triggering errors. if(!is_array($subfield['name'])) { $subfield['name'] = $field['name'].'['.$row_key.']['.$subfield['name'].']'; }else{ foreach($subfield['name'] as $k => $subfieldName) { $subfield['name'][$k] = $field['name'].'['.$row_key.']['.$subfieldName.']'; } } } if(!empty($indicator) && !empty($indicator->attachment)) { $subfield['value'] = $indicator->attachment; } @endphp @include($subfieldView, ['field' => $subfield]) @endif @if(!empty($indicator)) @endif @if(!empty($indicatorEvicriteria->appendix) && $subfield['name'] == 'appendix') @php $subfieldViewAppendix = $crud->getFirstFieldView($subfield['type'], $subfield['view_namespace'] ?? false); if(isset($row)) { // Cast objects to array (could be a translation object, or a developer provided collection). if (is_object($row)) { $row = collect($row)->toArray(); } if(!is_array($subfield['name'])) { if(!Str::contains($subfield['name'], '.')) { // this is a fix for 4.1 repeatable names that when the field was multiple, saved the keys with `[]` in the end. Eg: `tags[]` instead of `tags` if(isset($row[$subfield['name']]) || isset($row[$subfield['name'].'[]'])) { $subfield['value'] = $row[$subfield['name']] ?? $row[$subfield['name'].'[]']; } $subfield['name'] = $field['name'].'['.$row_key.']['.$subfield['name'].']'; }else{ $subfield['value'] = \Arr::get($row, $subfield['name']); $subfield['name'] = $field['name'].'['.$row_key.']['.Str::replace('.', '][', $subfield['name']).']'; } }else{ foreach ($subfield['name'] as $k => $item) { $subfield['name'][$k] = $field['name'].'['.$row_key.']['.$item.']'; $subfield['value'][$subfield['name'][$k]] = \Arr::get($row, $item); } } } else { // use an un-matchable field name to avoid field initialization problems // this would prevent the field from EVER get value in old() and triggering errors. if(!is_array($subfield['name'])) { $subfield['name'] = $field['name'].'['.$row_key.']['.$subfield['name'].']'; }else{ foreach($subfield['name'] as $k => $subfieldName) { $subfield['name'][$k] = $field['name'].'['.$row_key.']['.$subfieldName.']'; } } } if(!empty($indicator) && !empty($indicator->appendix)) { $subfield['value'] = $indicator->appendix; } $subfield['appendix'] = $indicatorEvicriteria->appendix; @endphp @include($subfieldViewAppendix, ['field' => $subfield]) @endif @endforeach @php $row_key++; @endphp @endforeach
@endforeach @endif @endif
@if ($hidden ?? false)
@endif @php $step = 0; @endphp @endforeach