File Manager Lite
Dir:
/home/u540325668/domains/englishandcomputer.com/public_html/app/DataTables
Upload
[..]
PostDataTable.php (4.15 KB)
Edit
Rename
Del
SchemeOneDataTable.php (3.39 KB)
Edit
Rename
Del
UsersDataTable.php (3.54 KB)
Edit
Rename
Del
Edit: PostDataTable.php
<?php namespace App\DataTables; use App\Post; use Yajra\DataTables\Html\Button; use Yajra\DataTables\Html\Column; use Yajra\DataTables\Html\Editor\Editor; use Yajra\DataTables\Html\Editor\Fields; use Yajra\DataTables\Services\DataTable; use Auth; class PostDataTable extends DataTable { /** * Build DataTable class. * * @param mixed $query Results from query() method. * @return \Yajra\DataTables\DataTableAbstract */ public function dataTable($query) { return datatables() ->eloquent($query) ->addColumn('Action', function ($post) { return '<a href="/admin/post/info/'.$post->id.'" class="btn btn-primary"><span class="fa fa-edit"></span></a>.<a href="/admin/post/delete/'.$post->id.'"class="btn btn-danger" onclick="return confirm(\'Are you sure to delete this Post\')" ><span class="fa fa-trash"></span></a>'; }) ->escapeColumns('Action') ->addColumn('Language', function ($post) { return $post->language->languageType; }) ->addColumn('Email', function ($post) { return $post->user->email; }) ->addColumn('Sub Category', function ($post) { return $post->subcategory->subcategoryType; }) ->addColumn('Review', function ($post) { return $post->publicationStatus == 1 ? '<i class="fa fa-thumbs-up btn btn-success"></i>' : '<i class="fa fa-thumbs-down btn btn-danger"></i>'; })->escapeColumns('Review') ->addColumn('Status', function ($post) { return $post->close == 0 ? '<i class="fa fa-check-circle btn btn-success"></i>' : '<i class="fa fa-times-circle btn btn-danger"></i>'; })->escapeColumns('Status'); } /** * Get query source of dataTable. * * @param \App\App\Post $model * @return \Illuminate\Database\Eloquent\Builder */ public function query(Post $model) { if(Auth::user()->role->id == 1){ return $model->newquery(); } else { return $model= Post::where('close', '=' , 0); } } /** * Optional method if you want to use html builder. * * @return \Yajra\DataTables\Html\Builder */ public function html() { return $this->builder() ->setTableId('post-table') ->columns($this->getColumns()) ->minifiedAjax() ->orderBy(0); /* ->DOM('Blfrtip') ->buttons( Button::make('create'), Button::make('export'), Button::make('print'), Button::make('reset'), Button::make('reload') );*/ } /** * Get columns. * * @return array */ protected function getColumns() { return [ Column::make('id'), Column::make('postName') ->title('Post Name'), Column::computed('Email') ->name('posts.user_id') ->orderable(true), Column::computed('Language') ->orderable(true) ->name('posts.language_id'), Column::computed('Sub Category') ->orderable(true) ->title('SCategory') ->name('posts.subCategory_id'), Column::make('updated_at') ->title('Time'), column::computed('Review') ->orderable(true) ->title('Rev') ->name('posts.publicationStatus'), column::computed('Status') ->title('Sta') ->orderable(true) ->name('posts.close'), Column::computed('Action') ->exportable(false) ->printable(false) ->width(120), ]; } /** * Get filename for export. * * @return string */ protected function filename() { return 'Post_' . date('YmdHis'); } }
Simpan