shell bypass 403

UnknownSec Shell

: /home/bouloter/infix/app/Http/Livewire/ [ drwxr-xr-x ]

name : ShowMaterial.php
<?php

namespace App\Http\Livewire;

use Illuminate\Support\Facades\Auth;
use Livewire\WithPagination;
use Modules\CourseSetting\Entities\Category;
use Modules\Org\Entities\OrgBranch;
use Modules\Org\Entities\OrgMaterial;
use Modules\OrgInstructorPolicy\Entities\OrgPolicyCategory;
use Rappasoft\LaravelLivewireTables\DataTableComponent;
use Rappasoft\LaravelLivewireTables\Views\Column;

class  ShowMaterial extends DataTableComponent
{
    use WithPagination;

    public bool $columnSelect = true;
    public bool $rememberColumnSelection = true;
    protected $listeners = ['addCategoryFilter', 'selectTypeFilter', 'checkCategory'];

    public $showAddBtn = false, $categories = [];


    public $page = 1;

    protected $materials = [];
    public $categoriesIds = [];
    public $type = null;
    public $serial = 0;

    public function selectType()
    {
        $this->emit('selectTypeFilter', $this->type);
    }

    public function checkCategory($codes)
    {
        if (count($codes) != 0) {
            $this->categories = $codes;
            $this->showAddBtn = true;

        } else {
            $this->showAddBtn = false;

        }
    }

    public function addCategoryFilter($branchCode)
    {
//        if (($key = array_search($branchCode, $this->categoriesIds)) !== false) {
//            unset($this->categoriesIds[$key]);
//        } else {
//            array_push($this->categoriesIds, $branchCode);
//        }


        if (($key = array_search($branchCode, $this->categoriesIds)) !== false) {
            unset($this->categoriesIds[$key]);
            $branch = Category::where('id', $branchCode)->first();
            $childs = $branch->getAllChildIds($branch);
            foreach ($childs as $child) {
                if (($key2 = array_search($child, $this->categoriesIds)) !== false) {
                    unset($this->categoriesIds[$key2]);
                }
            }
        } else {
            array_push($this->categoriesIds, $branchCode);
        }

        $this->emit('checkCategory', $this->categoriesIds);

    }

    public function selectTypeFilter($type)
    {
        $this->type = $type;

    }

    public function columns(): array
    {
        return [
            Column::make(__('common.SL'), 'sl'),
            Column::make(__('common.Title'), 'title')
                ->sortable()
                ->searchable(),
            Column::make(__('common.Category'), 'category')
                ->sortable()
                ->searchable(),
            Column::make(__('common.Type'), 'type')
                ->sortable()
                ->searchable(),
            Column::make(__('org.Create By'), 'user_id')
                ->sortable()
                ->searchable(),
            Column::make(__('common.Status'), 'status'),
            Column::make(__('org.Create Date'), 'created_at')
                ->sortable()
                ->searchable(),
            Column::make(__('common.Action'), 'action'),
        ];
    }

    public function query()
    {
        $this->serial = ($this->page - 1) * 10;

        $query = OrgMaterial::with('user', 'cat');
        if (Auth::user()->role_id != 1) {
//            $query->where('user_id', Auth::user()->id);
        }
        if (count($this->categoriesIds) != 0) {
            foreach ($this->categoriesIds as $key => $code) {
                $category = Category::find($code);
                if ($category) {
                    $ids = $category->getAllChildIds($category, [$code]);
                    if ($key == 0) {
                        $query->whereIn('category', $ids);
                    } else {
                        $query->orWhereIn('category', $ids);
                    }
                }

            }
        } else {
            if (Auth::user()->role_id != 1) {
                $ids = OrgPolicyCategory::where('policy_id', \auth()->user()->policy_id)->pluck('category_id')->toArray();
                $query->whereIn('category', $ids);
            }
        }

        if (!empty($this->type)) {
            $query->where('type', $this->type);
        }
        return $query;
    }

    public function rowView(): string
    {
        $this->emptyMessage = trans("common.No data available in the table");
        return 'livewire.show-material';
    }

    public function paginationView()
    {
        return 'backend.partials._pagination';
    }

    public function render()
    {
        return view('livewire.material.datatable')
            ->with([
                'columns' => $this->columns(),
                'rowView' => $this->rowView(),
                'filtersView' => $this->filtersView(),
                'customFilters' => $this->filters(),
                'rows' => $this->rows,
                'modalsView' => $this->modalsView(),
                'bulkActions' => $this->bulkActions,
            ]);
    }
}

© 2025 UnknownSec
afwwrfwafr45458465
Password