'Index', // 'show' => 'Show', // 'edit' => 'Edit', // 'create' => 'Create', ]; /** * Set translation path. * * @var string */ protected $translation; /** * Get content title. * * @return string */ protected function title() { return $this->title ?: admin_trans_label(); } /** * Get description for following 4 action pages. * * @return array */ protected function description() { return $this->description; } /** * Get translation path. * * @return string */ protected function translation() { return $this->translation; } /** * Index interface. * * @param Content $content * @return Content */ public function index(Content $content) { return $content ->translation($this->translation()) ->title($this->title()) ->description($this->description()['index'] ?? trans('admin.list')) ->body($this->grid()); } /** * Show interface. * * @param mixed $id * @param Content $content * @return Content */ public function show($id, Content $content) { return $content ->translation($this->translation()) ->title($this->title()) ->description($this->description()['show'] ?? trans('admin.show')) ->body($this->detail($id)); } /** * Edit interface. * * @param mixed $id * @param Content $content * @return Content */ public function edit($id, Content $content) { return $content ->translation($this->translation()) ->title($this->title()) ->description($this->description()['edit'] ?? trans('admin.edit')) ->body($this->form()->edit($id)); } /** * Create interface. * * @param Content $content * @return Content */ public function create(Content $content) { return $content ->translation($this->translation()) ->title($this->title()) ->description($this->description()['create'] ?? trans('admin.create')) ->body($this->form()); } /** * Update the specified resource in storage. * * @param int $id * @return \Illuminate\Http\Response */ public function update($id) { return $this->form()->update($id); } /** * Store a newly created resource in storage. * * @return mixed */ public function store() { return $this->form()->store(); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { return $this->form()->destroy($id); } }