turkmentv/app/Http/Controllers/Admin/WebpageCrudController.php

78 lines
3.0 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use Backpack\CRUD\app\Http\Controllers\CrudController;
// VALIDATION: change the requests to match your own file names if you need form validation
use App\Http\Requests\WebpageRequest as StoreRequest;
use App\Http\Requests\WebpageRequest as UpdateRequest;
use Backpack\CRUD\CrudPanel;
/**
* Class WebpageCrudController
* @package App\Http\Controllers\Admin
* @property-read CrudPanel $crud
*/
class WebpageCrudController extends CrudController
{
public function setup()
{
/*
|--------------------------------------------------------------------------
| CrudPanel Basic Information
|--------------------------------------------------------------------------
*/
$this->crud->setModel('App\Models\Webpage');
$this->crud->setRoute(config('backpack.base.route_prefix') . '/webpage');
$this->crud->setEntityNameStrings('webpage', 'webpages');
/*
|--------------------------------------------------------------------------
| CrudPanel Configuration
|--------------------------------------------------------------------------
*/
$this->crud->addColumns([
['name' => 'title', 'type' => 'text', 'label' => 'Title'],
]);
// TODO: remove setFromDb() and manually define Fields and Columns
$this->crud->addFields([
['name' => 'image', 'type' => 'browse', 'label' => 'Image'],
['name' => 'title', 'type' => 'text', 'label' => 'Title'],
['name' => 'text', 'label' => 'Text', 'type' => 'summernote'],
['name' => 'link','type' => 'text', 'lable' => 'Bottom link'],
['name' => 'link_image','type' => 'browse', 'lable' => 'Bottom image'],
['name' => 'upper_link','type' => 'text', 'lable' => 'Upper link'],
['name' => 'upper_link_image','type' => 'browse', 'lable' => 'Upper image'],
['name' => 'web_banner', 'type' => 'browse', 'label' => 'Web banner'],
['name' => 'mob_banner', 'type' => 'browse', 'label' => 'Mobile banner'],
]);
$this->crud->addButtonFromModelFunction('line', 'show_page', 'showPage', 'beginning');
// add asterisk for fields that are required in WebpageRequest
$this->crud->setRequiredFields(StoreRequest::class, 'create');
$this->crud->setRequiredFields(UpdateRequest::class, 'edit');
}
public function store(StoreRequest $request)
{
// your additional operations before save here
$redirect_location = parent::storeCrud($request);
// your additional operations after save here
// use $this->data['entry'] or $this->crud->entry
return $redirect_location;
}
public function update(UpdateRequest $request)
{
// your additional operations before save here
$redirect_location = parent::updateCrud($request);
// your additional operations after save here
// use $this->data['entry'] or $this->crud->entry
return $redirect_location;
}
}