restore composer.json, add mysqli extension
This commit is contained in:
68
app/Http/Requests/Dashboard/Post/Store.php
Executable file
68
app/Http/Requests/Dashboard/Post/Store.php
Executable file
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Dashboard\Post;
|
||||
|
||||
use App\Models\Post;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class Store extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
if ($this->isMethod('get')) {
|
||||
return [];
|
||||
}
|
||||
|
||||
return [
|
||||
'name' => 'required|string',
|
||||
'content' => 'required|string',
|
||||
'image' => 'required|image',
|
||||
'language' => 'required|string',
|
||||
'topped' => 'nullable|boolean',
|
||||
'type' => 'required|string|in:news,article,sales,media',
|
||||
'position' => 'nullable|integer'
|
||||
];
|
||||
}
|
||||
|
||||
public function getName():string
|
||||
{
|
||||
return (string) $this->get('name');
|
||||
}
|
||||
|
||||
public function getBody():string
|
||||
{
|
||||
return (string) $this->get('content');
|
||||
}
|
||||
|
||||
public function getLanguage():string
|
||||
{
|
||||
return (string) $this->get('language');
|
||||
}
|
||||
|
||||
public function getTopped(): bool
|
||||
{
|
||||
return (bool) $this->get('topped');
|
||||
}
|
||||
|
||||
public function getType(): string
|
||||
{
|
||||
return (string) $this->get('type');
|
||||
}
|
||||
|
||||
public function getPosition(): int|null
|
||||
{
|
||||
if ($this->position) {
|
||||
return $this->get('position');
|
||||
} else {
|
||||
if (Post::count() === 0) {
|
||||
return 0;
|
||||
}
|
||||
return Post::max('position') + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user