|
Server : Apache/2.4.41 (Ubuntu) System : Linux vmi1525618.contaboserver.net 5.4.0-105-generic #119-Ubuntu SMP Mon Mar 7 18:49:24 UTC 2022 x86_64 User : www-data ( 33) PHP Version : 8.2.12 Disable Function : NONE Directory : /var/www/lecturebazaar.com/app/Exports/ |
Upload File : |
<?php
namespace App\Exports;
use Illuminate\Support\Collection;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;
class CertificatesExport implements FromCollection, WithHeadings, WithMapping
{
protected $certificates;
public function __construct($certificates)
{
$this->certificates = $certificates;
}
/**
* @return Collection
*/
public function collection()
{
return $this->certificates;
}
/**
* @inheritDoc
*/
public function headings(): array
{
return [
trans('admin/main.id'),
trans('admin/pages/quiz.title'),
trans('admin/pages/webinars.webinar'),
trans('quiz.student'),
trans('admin/pages/quiz.instructor'),
trans('admin/pages/quiz.grades'),
trans('public.date_time'),
];
}
/**
* @inheritDoc
*/
public function map($certificate): array
{
return [
$certificate->id,
$certificate->quiz->title,
$certificate->quiz->webinar->title,
$certificate->student ? $certificate->student->full_name : trans('update.deleted_user'),
$certificate->quiz->teacher->full_name,
$certificate->quizzesResult ? $certificate->quizzesResult->user_grade : '-',
dateTimeFormat($certificate->created_at, 'j F Y'),
];
}
}