SmartCane/laravel_app/resources/views/livewire/projects/tabs/report.blade.php

60 lines
3.1 KiB
PHP

<div class="m-2">
<div class="">
<div class="sm:flex sm:flex-col sm:items-center">
<div class="w-full flex justify-between my-4">
<h1 class="text-base font-semibold leading-6 text-gray-900">Reports</h1>
@if($project->hasPendingReport())
<p class="text-base text-gray-700 animate-pulse"> Pending reports for this project: {{ $project->reports()->statusPending()->count() }}</p>
@endif
</div>
<div class="mt-4 md:mt-0 flex flex-col md:flex md:justify-between md:flex-row w-full gap-2">
<x-search></x-search>
<x-button wire:click="openCreateReportModal"
class="flex justify-center rounded-md bg-indigo-600 px-3 py-2 text-center text-sm font-semibold text-white shadow-sm hover:bg-indigo-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-indigo-600">
Create Report
</x-button>
</div>
</div>
<div class="mt-8 flow-root">
<div class="">
<div class="relative">
<div class="inline-block min-w-full py-2 align-middle mb-10">
<table class="min-w-full divide-y divide-gray-300">
<thead>
<tr>
<th scope="col" class="px-3 py-3.5 text-left text-sm font-semibold text-gray-900">
Created At
</th>
<th scope="col"
class="py-3.5 pl-4 pr-3 text-left text-sm font-semibold text-gray-900 sm:pl-6 lg:pl-8">
Name
</th>
<th scope="col" class="px-3 py-3.5 text-left text-sm font-semibold text-gray-900">
Status
</th>
<th scope="col" class="relative py-3.5 pl-3 pr-4 sm:pr-6 lg:pr-8">
<span class="sr-only">Edit</span>
</th>
</tr>
</thead>
<tbody class="divide-y divide-gray-200 bg-white">
@foreach($reports as $report)
<livewire:projects.report-row :$report :key="$report->id"/>
@endforeach
</tbody>
</table>
</div>
<div class="pt-4 flex justify-between items-center">
<div class="text-gray-700 text-sm">
Results: {{ \Illuminate\Support\Number::format($reports->total()) }}
</div>
{{ $reports->links('livewire.pagination') }}
</div>
</div>
</div>
</div>
</div>
<x-report-manager-properties-modal :reportManager="$this"/>
</div>