'id', 'searchable' => false, 'sortable' => true, 'switchable' => true, 'title' => trans('general.id'), 'visible' => false, 'printIgnore' => true, ], [ 'field' => 'name', 'searchable' => true, 'sortable' => true, 'switchable' => false, 'title' => trans('general.name'), 'formatter' => 'accessoriesLinkFormatter', ], [ 'field' => 'image', 'searchable' => false, 'sortable' => true, 'switchable' => true, 'title' => trans('general.image'), 'visible' => true, 'formatter' => 'imageFormatter', ], [ 'field' => 'company', 'searchable' => true, 'sortable' => true, 'switchable' => true, 'title' => trans('admin/companies/table.title'), 'visible' => false, 'formatter' => 'companiesLinkObjFormatter', ], [ 'field' => 'category', 'searchable' => true, 'sortable' => true, 'title' => trans('general.category'), 'formatter' => 'categoriesLinkObjFormatter', ], [ 'field' => 'model_number', 'searchable' => true, 'sortable' => true, 'title' => trans('admin/models/table.modelnumber'), 'formatter' => 'accessoriesLinkFormatter', ], [ 'field' => 'manufacturer', 'searchable' => true, 'sortable' => true, 'switchable' => true, 'title' => trans('general.manufacturer'), 'visible' => false, 'formatter' => 'manufacturersLinkObjFormatter', ], [ 'field' => 'supplier', 'searchable' => true, 'sortable' => true, 'switchable' => true, 'title' => trans('general.supplier'), 'visible' => false, 'formatter' => 'suppliersLinkObjFormatter', ], [ 'field' => 'location', 'searchable' => true, 'sortable' => true, 'title' => trans('general.location'), 'formatter' => 'locationsLinkObjFormatter', ], [ 'field' => 'min_amt', 'searchable' => false, 'sortable' => true, 'title' => trans('general.min_amt'), 'formatter' => 'minAmtFormatter', 'class' => 'text-right text-padding-number-cell', ], [ 'field' => 'qty', 'searchable' => false, 'sortable' => true, 'title' => trans('admin/accessories/general.total'), 'footerFormatter' => 'qtySumFormatter', 'class' => 'text-right text-padding-number-cell', ], [ 'field' => 'remaining', 'searchable' => false, 'sortable' => false, 'visible' => false, 'title' => trans('admin/accessories/general.remaining'), 'footerFormatter' => 'qtySumFormatter', 'class' => 'text-right text-padding-number-cell', ], [ 'field' => 'checkouts_count', 'searchable' => false, 'sortable' => true, 'visible' => true, 'title' => trans('general.checked_out'), 'footerFormatter' => 'qtySumFormatter', 'class' => 'text-right text-padding-number-cell', ], [ 'field' => 'percent_remaining', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => '% '.trans('general.remaining'), 'visible' => true, 'formatter' => 'progressBarFormatter', ], [ 'field' => 'purchase_date', 'searchable' => true, 'sortable' => true, 'visible' => false, 'title' => trans('general.purchase_date'), 'formatter' => 'dateDisplayFormatter', ], [ 'field' => 'purchase_cost', 'searchable' => true, 'sortable' => true, 'title' => trans('general.unit_cost'), 'class' => 'text-right text-padding-number-cell', ], [ 'field' => 'total_cost', 'searchable' => true, 'sortable' => true, 'title' => trans('general.total_cost'), 'footerFormatter' => 'sumFormatterQuantity', 'class' => 'text-right text-padding-number-cell', ], [ 'field' => 'order_number', 'searchable' => true, 'sortable' => true, 'visible' => false, 'title' => trans('general.order_number'), ], [ 'field' => 'notes', 'searchable' => true, 'sortable' => true, 'visible' => false, 'title' => trans('general.notes'), 'formatter' => 'notesFormatter', ], [ 'field' => 'created_by', 'searchable' => false, 'sortable' => true, 'title' => trans('general.created_by'), 'visible' => false, 'formatter' => 'usersLinkObjFormatter', ], [ 'field' => 'created_at', 'searchable' => true, 'sortable' => true, 'switchable' => true, 'title' => trans('general.created_at'), 'visible' => false, 'formatter' => 'dateDisplayFormatter', ], [ 'field' => 'updated_at', 'searchable' => true, 'sortable' => true, 'switchable' => true, 'title' => trans('general.updated_at'), 'visible' => false, 'formatter' => 'dateDisplayFormatter', ], [ 'field' => 'change', 'searchable' => false, 'sortable' => false, 'visible' => true, 'title' => trans('general.change'), 'formatter' => 'accessoriesInOutFormatter', 'printIgnore' => true, ], [ 'field' => 'available_actions', 'searchable' => false, 'sortable' => false, 'switchable' => false, 'title' => trans('table.actions'), 'formatter' => 'accessoriesActionsFormatter', 'printIgnore' => true, 'class' => 'hidden-print', ], ]; return json_encode($layout); } public static function assignedDataTableLayout() { $layout = [ [ 'field' => 'id', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('general.id'), 'visible' => false, ], [ 'field' => 'assigned_to', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('general.checked_out_to'), 'visible' => true, 'formatter' => 'polymorphicItemFormatter', ], [ 'field' => 'assigned_to.companies', 'searchable' => true, 'sortable' => false, 'switchable' => true, 'title' => trans('general.companies'), 'visible' => true, 'formatter' => 'companiesArrayLinkFormatter', ], [ 'field' => 'note', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('general.notes'), 'visible' => true, ], [ 'field' => 'created_at', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('admin/hardware/table.checkout_date'), 'visible' => true, 'formatter' => 'dateDisplayFormatter', ], [ 'field' => 'created_by', 'searchable' => false, 'sortable' => false, 'title' => trans('general.created_by'), 'visible' => false, 'formatter' => 'usersLinkObjFormatter', ], [ 'field' => 'available_actions', 'searchable' => false, 'sortable' => false, 'switchable' => false, 'title' => trans('table.actions'), 'formatter' => 'accessoriesInOutFormatter', 'printIgnore' => true, 'class' => 'hidden-print', ], ]; return json_encode($layout); } public static function assignedDataTableLayoutForObject() { $layout = [ [ 'field' => 'id', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('general.id'), 'visible' => false, ], [ 'field' => 'accessory', 'searchable' => true, 'sortable' => false, 'switchable' => false, 'title' => trans('general.name'), 'visible' => true, 'formatter' => 'accessoriesLinkObjFormatter', ], [ 'field' => 'image', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('general.image'), 'visible' => true, 'formatter' => 'imageFormatter', ], [ 'field' => 'note', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('general.notes'), 'visible' => true, ], [ 'field' => 'created_at', 'searchable' => false, 'sortable' => false, 'switchable' => true, 'title' => trans('admin/hardware/table.checkout_date'), 'visible' => true, 'formatter' => 'dateDisplayFormatter', ], [ 'field' => 'created_by', 'searchable' => false, 'sortable' => false, 'title' => trans('general.created_by'), 'visible' => false, 'formatter' => 'usersLinkObjFormatter', ], [ 'field' => 'available_actions', 'searchable' => false, 'sortable' => false, 'switchable' => false, 'title' => trans('table.actions'), 'formatter' => 'accessoriesInOutFormatter', 'printIgnore' => true, 'class' => 'hidden-print', ], ]; return json_encode($layout); } /** * Pregenerated link to this accessories view page. * * @return string */ public function nameUrl() { if (auth()->user()->can('view', ['\App\Models\Accessory', $this])) { return ''.e($this->display_name).''; } else { return e($this->display_name); } } /** * Url to view this item. * * @return string */ public function viewUrl() { return route('accessories.show', $this->id); } public function name() { return $this->model->name; } }