����JFIF��x�x����'
Server IP : 66.29.137.217 / Your IP : 3.20.239.211 Web Server : LiteSpeed System : Linux premium294.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : gltevjme ( 1095) PHP Version : 7.0.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/gltevjme/./cbt.gltechlimited.com/app/Transformers/Admin/ |
Upload File : |
<?php namespace App\Transformers\Admin; use App\Models\Exam; use App\Models\ExamSession; use App\Settings\LocalizationSettings; use Carbon\Carbon; use Jenssegers\Agent\Agent; use League\Fractal\TransformerAbstract; class UserExamSessionTransformer extends TransformerAbstract { /** * @var Exam */ private Exam $quiz; public function __construct(Exam $quiz) { $this->quiz = $quiz; } /** * A Fractal transformer. * * @param ExamSession $session * @return array */ public function transform(ExamSession $session) { $agent = new Agent(); $agent->setUserAgent($session->results->user_agent); $browser = $agent->browser(); $browser_version = $agent->version($browser); $localization = app(LocalizationSettings::class); $platform = $agent->platform(); $platform_version = $agent->version($platform); return [ 'id' => $session->code, 'slug' => $this->quiz->slug, 'name' => "{$session->user->first_name} {$session->user->last_name}", 'email' => $session->user->email, 'user_photo' => $session->user->profile_photo_url, 'accuracy' => round($session->results->accuracy, 1).'%', 'percentage' => round($session->results->percentage, 1).'%', 'score' => round($session->results->score, 1).'/'.$session->results->total_marks, 'status' => $session->results->pass_or_fail, 'ip' => $session->results->ip_address, 'results' => $session->results, 'device' => ucwords($agent->deviceType()), 'os' => "{$platform} {$platform_version}", 'browser' => "{$browser} {$browser_version}", 'completed' => Carbon::parse($session->completed_at)->timezone($localization->default_timezone)->toDayDateTimeString() ]; } }