/home/techb158/immovalet.com/platform/plugins/ecommerce/src/Tables
NameSizeModeActions
Reports/-0755rm
BrandTable.php53540644editdlrm
CustomerTable.php46940644editdlrm
DiscountTable.php42770644editdlrm
FlashSaleTable.php43380644editdlrm
OrderIncompleteTable.php32180644editdlrm
OrderTable.php66480644editdlrm
ProductAttributeSetsTable.php53410644editdlrm
ProductCategoryTable.php56840644editdlrm
ProductCollectionTable.php56820644editdlrm
ProductLabelTable.php44180644editdlrm
ProductTable.php82690644editdlrm
ProductTagTable.php43360644editdlrm
ReviewTable.php53900644editdlrm
TaxTable.php46640644editdlrm
Edit: /home/techb158/immovalet.com/platform/plugins/ecommerce/src/Tables/ProductCategoryTable.php (5684B)
repository = $productCategoryRepository; if (!Auth::user()->hasAnyPermission([ 'product-categories.edit', 'product-categories.destroy', ])) { $this->hasOperations = false; $this->hasActions = false; } } /** * {@inheritDoc} */ public function ajax() { $data = $this->table ->of($this->query()) ->editColumn('name', function ($item) { if (!Auth::user()->hasPermission('product-categories.edit')) { return $item->name; } return str_repeat(' ', $item->depth) . Html::link(route('product-categories.edit', $item->id), $item->indent_text . ' ' . $item->name); }) ->editColumn('image', function ($item) { return Html::image(RvMedia::getImageUrl($item->image, 'thumb', false, RvMedia::getDefaultImage()), $item->name, ['width' => 50]); }) ->editColumn('checkbox', function ($item) { return $this->getCheckbox($item->id); }) ->editColumn('created_at', function ($item) { return BaseHelper::formatDate($item->created_at); }) ->editColumn('status', function ($item) { return $item->status->toHtml(); }) ->addColumn('operations', function ($item) { return view('plugins/ecommerce::product-categories.partials.actions', compact('item'))->render(); }); return $this->toJson($data); } /** * {@inheritDoc} */ public function query() { $categories = get_product_categories(); $indent = '↳'; foreach ($categories as $category) { $indentText = ''; $depth = (int)$category->depth; for ($index = 0; $index < $depth; $index++) { $indentText .= $indent; } $category->indent_text = $indentText; } return collect($categories); } /** * {@inheritDoc} */ public function columns() { return [ 'id' => [ 'title' => trans('core/base::tables.id'), 'width' => '20px', 'class' => 'text-left', ], 'image' => [ 'title' => trans('core/base::tables.image'), 'width' => '70px', 'class' => 'text-left', ], 'name' => [ 'title' => trans('core/base::tables.name'), 'class' => 'text-left', ], 'created_at' => [ 'title' => trans('core/base::tables.created_at'), 'width' => '100px', 'class' => 'text-left', ], 'status' => [ 'title' => trans('core/base::tables.status'), 'width' => '100px', 'class' => 'text-left', ], ]; } /** * {@inheritDoc} */ public function buttons() { return $this->addCreateButton(route('product-categories.create'), 'product-categories.create'); } /** * {@inheritDoc} */ public function bulkActions(): array { return $this->addDeleteAction(route('product-categories.deletes'), 'product-categories.destroy', parent::bulkActions()); } /** * {@inheritDoc} */ public function getBulkChanges(): array { return [ 'name' => [ 'title' => trans('core/base::tables.name'), 'type' => 'text', 'validate' => 'required|max:120', ], 'status' => [ 'title' => trans('core/base::tables.status'), 'type' => 'select', 'choices' => BaseStatusEnum::labels(), 'validate' => 'required|in:' . implode(',', BaseStatusEnum::values()), ], 'created_at' => [ 'title' => trans('core/base::tables.created_at'), 'type' => 'date', ], ]; } /** * {@inheritDoc} */ public function renderTable($data = [], $mergeData = []) { if ($this->query()->count() === 0 && !$this->request()->wantsJson() && $this->request()->input('filter_table_id') !== $this->getOption('id') ) { return view('plugins/ecommerce::product-categories.intro'); } return parent::renderTable($data, $mergeData); } }