Rapport-Laravel/resources/views/form/rapport-team3/1793767249-069bf040-1469-41...

267 lines
15 KiB
PHP

@php
$multiDoctorFormId = '1793767249-069bf040-1469-4117-b364-e4851e1f4bdf';
$isMultiDoctorForm = isset($form->form_id)
&& $form->form_id == $multiDoctorFormId;
$doctorFieldCodes = [
'contact_id',
'legacy_code',
'msl_code',
'speciality'
];
$doctorFieldLabels = [
'contact_id' => 'HCP Name',
'legacy_code' => 'MSL Code',
'msl_code' => 'Pcode',
'speciality' => 'Speciality'
];
@endphp
<!DOCTYPE html>
<html lang="en">
<head>
@include('layouts.shared/title-meta', ['title' => "History"])
@include('layouts.shared/head-css', ["mode" => $mode ?? '', "demo" => $demo ?? ''])
</head>
<body class="loading">
<div class="account-pages">
<div class="container">
<!-- start page title -->
<div class="row">
<div class="col-8 p-2">
<h4 class="page-title">{{$formname}}</h4>
</div>
<div class="col-4 p-2">
<a href="/form/show" class="float-end pt-1">New Submission</a>
</div>
</div>
<!-- end page title -->
@if(session()->has('message'))
<div class="alert alert-success">
{{ session()->get('message') }}
</div>
@endif
@if(session()->has('error'))
<div class="alert alert-danger">
{{ session()->get('error') }}
</div>
@endif
<div class="row">
<div class="col-12 p-0">
<div class="card">
<div class="card-body">
<div class="responsive-table-plugin">
<div class="table-rep-plugin">
<div class="table-responsive" data-pattern="priority-columns">
<table id="tech-companies-1" class="table table-striped">
<thead>
<tr>
<th data-priority="1">Submission Date</th>
@if($isMultiDoctorForm)
@for($i = 1; $i <= 5; $i++)
@foreach($doctorFieldLabels as $code => $label)
<th data-priority="1">
{{ $label }} {{ $i }}
</th>
@endforeach
@endfor
@else
@foreach($questions as $code => $question)
@if($question->type == 'hidden')
@continue
@endif
@if($question->type == 'multitextbox')
@foreach($question->options as $k => $v)
<th data-priority="1">
{{ is_object($v) ? ($v->display ?? $v->label ?? $k) : $v }}
({{ $question->label }})
</th>
@endforeach
@else
<th data-priority="1">{{ $question->label }}</th>
@endif
@endforeach
@endif
<th data-priority="1">Actions</th>
</tr>
</thead>
<tbody>
@foreach($submissions as $submission)
<tr>
<th>
{{ date("d M Y", strtotime($submission->updatedAt)) }}
</th>
@if($isMultiDoctorForm)
@php
$doctorData = [];
foreach ($doctorFieldCodes as $code) {
$rawValue = $submission->formdata->{$code} ?? [];
if (is_string($rawValue)) {
$values = explode(',', $rawValue);
} elseif (is_array($rawValue)) {
$values = $rawValue;
} elseif (is_object($rawValue)) {
$values = (array) $rawValue;
} else {
$values = [];
}
$doctorData[$code] = array_map(
fn($value) => trim((string) $value),
array_values($values)
);
}
@endphp
@for($i = 0; $i < 5; $i++)
@foreach($doctorFieldCodes as $code)
<td>
{{ $doctorData[$code][$i] ?? '-' }}
</td>
@endforeach
@endfor
@else
@foreach(($userAttrs ?? []) as $attr)
@php
$uaUser = $submission->user_info ?? null;
$uaVal = '-';
if ($uaUser) {
if (isset($uaUser->{$attr}) && $uaUser->{$attr} !== '') {
$uaVal = $uaUser->{$attr};
} elseif (isset($uaUser->{'attribute_'.$attr}) && $uaUser->{'attribute_'.$attr} !== '') {
$uaVal = $uaUser->{'attribute_'.$attr};
}
}
@endphp
<td>{{ $uaVal }}</td>
@endforeach
@foreach($questions as $code => $question)
@if($question->type == 'hidden')
@continue
@endif
@if($question->type == 'file')
<td>
<a target="_blank"
href="{{ isset($submission->formdata->{$code}) ? (is_array($submission->formdata->{$code}) ? implode(', ', $submission->formdata->{$code}) : (is_string($submission->formdata->{$code}) ? $submission->formdata->{$code} : '')) : $code }}"
download
class="btn btn-dark btn-xs">
<i class="mdi mdi-cloud-download me-1"></i> Download
</a>
</td>
@elseif($question->type == 'radiometrix' && isset($submission->formdata->{$code}) && is_object($submission->formdata->{$code}))
<td>
{{ collect((array)$submission->formdata->{$code})->map(function($val, $key) {
return "$key: $val";
})->implode(', ') }}
</td>
@elseif($question->type == 'multitextbox')
@foreach($question->options as $k => $v)
@php
$optKey = is_object($v) ? ($v->value ?? $k) : $k;
$optVal = '';
if (isset($submission->formdata->{$optKey})) {
$raw = $submission->formdata->{$optKey};
$optVal = is_array($raw) ? implode(', ', $raw) : (is_object($raw) ? json_encode($raw) : $raw);
} elseif (isset($submission->formdata->{$code}) && (is_object($submission->formdata->{$code}) || is_array($submission->formdata->{$code}))) {
$box = (array) $submission->formdata->{$code};
if (array_key_exists($optKey, $box)) {
$raw = $box[$optKey];
$optVal = is_array($raw) ? implode(', ', $raw) : (is_object($raw) ? json_encode($raw) : $raw);
}
}
@endphp
<td>{{ $optVal }}</td>
@endforeach
@else
<td>
{{ isset($submission->formdata->{$code})
? (is_array($submission->formdata->{$code})
? implode(', ', $submission->formdata->{$code})
: (is_object($submission->formdata->{$code})
? collect((array)$submission->formdata->{$code})->map(function($val, $key) {
return "$key: $val";
})->implode(', ')
: $submission->formdata->{$code}))
: '' }}
</td>
@endif
@endforeach
@endif
<th>
@php
$isApproved = ($submission->workflow ?? '') == 'yes'
&& ($submission->workflow_status ?? '') == 'approved';
$showFieldDelete = isset($form->allow_delete_by_user)
&& $form->allow_delete_by_user == 'yes'
&& !$isApproved;
@endphp
@if($showFieldDelete || !empty($can_delete_submission))
<a href="/form/delete?form_id={{$submission->formdata->form_id}}&id={{$submission->id}}"
onclick="return confirm('Are you sure you want to delete this submission? This is not recoverable!');"
class="btn btn-danger btn-xs mt-1">Delete</a>
@endif
</th>
</tr>
@endforeach
</tbody>
</table>
</div> <!-- end .table-responsive -->
</div> <!-- end .table-rep-plugin-->
</div> <!-- end .responsive-table-plugin-->
</div> <!-- end card body-->
</div> <!-- end card -->
</div><!-- end col-->
</div>
<!-- end row-->
</div> <!-- container -->
</div>
<!-- end page -->
@include('layouts.shared/footer-script')
</body>
</html>