*/ class PageController extends Controller { /** * Create a new controller instance. * constructor to check * 1. authentication * 2. user roles * 3. roles must be agent. * * @return void */ public function __construct(Page $page) { // checking authentication $this->middleware('auth'); // checking roles $this->middleware('role.agent'); $this->page = $page; SettingsController::language(); } /** * Display the list of pages. * * @return type */ public function index() { $pages = $this->page->paginate(3); $pages->setPath('page'); try { return view('themes.default1.agent.kb.pages.index', compact('pages')); } catch (Exception $e) { return redirect()->back()->with('fails', $e->getMessage()); } } /** * fetching pages list in chumper datatables. * * @return type */ public function getData() { /* fetching chumper datatables */ return Datatable::collection(Page::All()) /* search column name */ ->searchColumns('name') /* order column name, description and created */ ->orderColumns('name', 'description', 'created') /* add column name */ ->addColumn('name', function ($model) { return $model->name; }) /* add column Created */ ->addColumn('Created', function ($model) { $t = $model->created_at; return TicketController::usertimezone($t); }) /* add column Actions */ /* there are action buttons and modal popup to delete a data column */ ->addColumn('Actions', function ($model) { return ' '.\Lang::get('lang.delete').' id.'/edit class="btn btn-warning btn-xs">'.\Lang::get('lang.edit').' slug.' class="btn btn-primary btn-xs">'.\Lang::get('lang.view').'