HEX
Server: Apache/2.4.46 (Ubuntu)
System: Linux localhost 5.11.0-49-generic #55-Ubuntu SMP Wed Jan 12 17:36:34 UTC 2022 x86_64
User: root (0)
PHP: 7.4.16
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/fieldsblaze-heroku/app/Http/Controllers/TerritoryController.php
<?php

namespace App\Http\Controllers;

use App\Http\Controllers\Controller;
use App\Models\Territory;
use Illuminate\Http\Request;
use App\Library\UserLib;

class TerritoryController extends Controller
{
    protected $userLib;
    public function __construct(UserLib $userLib)
	{
		$this->userLib = $userLib;	          
	}

    public function allTerritory()
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $territory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $activeTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->where('tbl_sales_territory.Status', '1')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $inactiveTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->where('tbl_sales_territory.Status', '0')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $trashTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','1')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        return view('admin.all-territory', ['Territory' => $territory, 'activeTerritory' => $activeTerritory, 'inactiveTerritory' => $inactiveTerritory, 'TrashTerritory' => $trashTerritory]);
    }

    // Active 
    public function activeTerritory()
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $territory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $activeTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->where('tbl_sales_territory.Status', '1')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $inactiveTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->where('tbl_sales_territory.Status', '0')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $trashTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','1')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        return view('admin.active-territory', ['Territory' => $territory, 'activeTerritory' => $activeTerritory, 'inactiveTerritory' => $inactiveTerritory, 'TrashTerritory' => $trashTerritory]);
    }

    public function inactiveTerritory()
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $territory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $activeTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->where('tbl_sales_territory.Status', '1')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $inactiveTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->where('tbl_sales_territory.Status', '0')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $trashTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','1')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        return view('admin.inactive-territory', ['Territory' => $territory, 'activeTerritory' => $activeTerritory, 'inactiveTerritory' => $inactiveTerritory, 'TrashTerritory' => $trashTerritory]);
    }

    public function trashTerritory()
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $territory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $activeTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->where('tbl_sales_territory.Status', '1')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $inactiveTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','0')
        ->where('tbl_sales_territory.Status', '0')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        $trashTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->where('IsDeleted','=','1')
        ->orderBy('tbl_sales_territory.id', 'desc')
        ->get();
        return view('admin.trash-territory', ['Territory' => $territory, 'activeTerritory' => $activeTerritory, 'inactiveTerritory' => $inactiveTerritory, 'TrashTerritory' => $trashTerritory]);
    }
    
    public function viewTerritory($TerritoryId)
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $viewTerritory = Territory::select('tbl_sales_territory.*', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')->where('TerritoryId', '=', $TerritoryId)
        ->leftJoin('tbl_admin', 'tbl_sales_territory.Updated_by', '=', 'tbl_admin.UserId')
        ->get()->first();

        return view('admin.view-territory', ['Territory' => $viewTerritory]);
        //return  $viewTerritory;
    }

    ### Store Records
    public function storeTerritory(Request $request)
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $newTerritory = new Territory;
        $newTerritory->TerritoryId = $this->userLib->useridGenrator();
        $newTerritory->Name = $request->input('name');
        $newTerritory->Created_by = session('UserId');
        $newTerritory->Updated_by = session('UserId');
        $newTerritory->IsDeleted = '0';
        $newTerritory->DeviceName = '';
        $newTerritory->Status = '1';
        $newTerritory->save();
        //return redirect()->back()->with('status_success');
        return response()->json('successfully');
    }

    #### Change Status
    public function statusUpdateTerritory($id)
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $data = Territory::find($id);
        if ($data->Status == '1') {
            $Status = '0';
        } else {
            $Status = '1';
        }

        $values = array('Status' => $Status);
        Territory::find($id)->update($values);
        return redirect()->back();
    }

    #### Delete Temporary
    public function deleteTerritory($id)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }

        $checkData = Territory::find($id);
        if ($checkData->IsDeleted == '0') {
            $CreatedDate = date('Y-m-d H:i:s', time());

            $data = array();
            $data['Updated_at'] = $CreatedDate;
            $data['IsDeleted'] = '1';
            $data['Status'] = '0';

            $territory_update = Territory::where('id', $id)->update($data);
            if ($territory_update) {
                echo '1';
            } else {
                echo '0';
            }
        } else {
            $destroyData = Territory::find($id);
            $destroyData->delete();
        }

        // $CreatedDate = date('Y-m-d H:i:s', time());
        // $data = array();
        // $data['Updated_at'] = $CreatedDate;
        // $data['IsDeleted'] = '1';
        // $territory_update = Territory::where('id', $id)->update($data);
        // if ($territory_update) {
        //     echo '1';
        // } else {
        //     echo '0';
        // }
        
        // $value = array('IsDeleted' => '1');
        // Territory::find($id)->update($value);
    }

    #### Delete Selected Territory
    public function deleteSelectedTerritory(Request $request)
    {
        if (empty(session('UserId'))) {
            return redirect('/admin/logout');
        }

        $id = $request->input('SelectedTerritory');
        if ($id) {
            foreach ($id as $territory) {
                $checkData = Territory::find($territory);
                if ($checkData->IsDeleted == '0') {
                    $CreatedDate = date(
                        'Y-m-d H:i:s',
                        time()
                    );
                    $data = array();
                    $data['Updated_at'] = $CreatedDate;
                    $data['IsDeleted'] = '1';
    
                    $sales_territory = Territory::where('id', $territory)->update($data);
                    if ($sales_territory) {
                        echo '1';
                    } else {
                        echo '0';
                    }
                } else {
                    $sales_territory = Territory::find($territory);
                    $sales_territory->delete();
                }
            }
        }

        return redirect()->back()->with('status_success');
    }

    #### Restore
    public function restoreTerritory($id)
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $value = array('IsDeleted' => '0');
        Territory::find($id)->update($value);
    }

    #### Delete Permanent
    public function destroyTerritory($id)
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $destroyData = Territory::find($id);
        $destroyData->delete();
    }

    ### Edit Records
    public function editTerritory($id)
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        $Territory = Territory::find($id);
        return response()->json([
            'status' => 200,
            'Territory' => $Territory,
        ]);
    }

    ### Update Records
    public function updateTerritory(Request $request)
    {
		if(empty(session('UserId')))
        {
            return redirect('/admin/logout'); 
        }
        //$user_id = Auth::id();
        $territory_id =  $request->input('id');
        $Territory = Territory::find($territory_id);
        $Territory->Name = $request->input('name');
        $Territory->Updated_by = session('UserId');
        $Territory->DeviceName = '';

        if ($request->has('editStatus')) {
            $Territory->Status = '0';
        } else {
            $Territory->Status = '1';
        }

        $Territory->update();
        return redirect()->back()->with('status_success');
    }

    
}