storage url o'zgartirildi

This commit is contained in:
2026-04-28 18:02:39 +05:00
parent b8a4efadc2
commit a11b9c9100
6 changed files with 45 additions and 15 deletions

View File

@@ -8,6 +8,13 @@ use Illuminate\Support\Str;
class Request extends FormRequest class Request extends FormRequest
{ {
protected function prepareForValidation()
{
if (in_array($this->get('parent_id'), [0, '0', '', 'null', 'NULL'], true)) {
$this->merge(['parent_id' => null]);
}
}
/** /**
* Get the validation rules that apply to the request. * Get the validation rules that apply to the request.
* *
@@ -22,7 +29,7 @@ class Request extends FormRequest
'name' => 'required|array', 'name' => 'required|array',
'name.*' => 'required|string', 'name.*' => 'required|string',
'image' => 'nullable|mimes:jpg,jpeg,png', 'image' => 'nullable|mimes:jpg,jpeg,png',
'parent_id' => 'nullable', 'parent_id' => 'nullable|integer|exists:categories,id',
'brands' => 'nullable|array', 'brands' => 'nullable|array',
'position' => 'nullable|numeric' 'position' => 'nullable|numeric'
]; ];
@@ -82,15 +89,16 @@ class Request extends FormRequest
public function getParentId() public function getParentId()
{ {
if ($this->get('parent_id') > 0) if ((int) $this->get('parent_id') > 0) {
return $this->get('parent_id'); return (int) $this->get('parent_id');
}
return null; return null;
} }
public function getPosition(): int public function getPosition(): int
{ {
return $this->get('position'); return (int) $this->get('position');
} }
public function getPopular(): bool public function getPopular(): bool

View File

@@ -10,6 +10,13 @@ use Illuminate\Support\Str;
class Update extends FormRequest class Update extends FormRequest
{ {
protected function prepareForValidation()
{
if (in_array($this->get('parent_id'), [0, '0', '', 'null', 'NULL'], true)) {
$this->merge(['parent_id' => null]);
}
}
/** /**
* Get the validation rules that apply to the request. * Get the validation rules that apply to the request.
* *
@@ -24,7 +31,7 @@ class Update extends FormRequest
'name' => 'required|array', 'name' => 'required|array',
'name.*' => 'required|string', 'name.*' => 'required|string',
'image' => 'nullable', 'image' => 'nullable',
'parent_id' => 'nullable', 'parent_id' => 'nullable|integer|exists:categories,id',
'popular' => 'nullable', 'popular' => 'nullable',
'brands' => 'nullable|array', 'brands' => 'nullable|array',
'position' => 'nullable|numeric' 'position' => 'nullable|numeric'
@@ -80,15 +87,16 @@ class Update extends FormRequest
public function getParentId() public function getParentId()
{ {
if ($this->get('parent_id') > 0) if ((int) $this->get('parent_id') > 0) {
return $this->get('parent_id'); return (int) $this->get('parent_id');
}
return null; return null;
} }
public function getPosition(): int public function getPosition(): int
{ {
return $this->get('position'); return (int) $this->get('position');
} }
public function getPopular(): bool public function getPopular(): bool

View File

@@ -43,7 +43,7 @@ class Store
$category->save(); $category->save();
$category->brands()->sync($request->brands, false); $category->brands()->sync($request->brands ?? [], false);
return $category; return $category;
} }

View File

@@ -356,6 +356,7 @@
id="remove_cat" id="remove_cat"
type="button" type="button"
class="btn btn-secondary w-100" class="btn btn-secondary w-100"
@click="category.parent_id = 0"
> >
{{ {{
$t( $t(

View File

@@ -359,6 +359,7 @@
id="remove_cat" id="remove_cat"
type="button" type="button"
class="btn btn-secondary w-100" class="btn btn-secondary w-100"
@click="category.parent_id = 0"
> >
{{ {{
$t( $t(

View File

@@ -1176,11 +1176,16 @@ export default {
this.category.three = {}; this.category.three = {};
this.category.three_view = false; this.category.three_view = false;
if (this.category.first.parents.length > 0) { if (!this.category.first || !this.category.first.id) {
this.products.category_id = null;
return;
}
this.products.category_id = this.category.first.id;
this.getCharacteristics(this.category.first.id);
if (this.category.first.parents && this.category.first.parents.length > 0) {
this.category.two_view = true; this.category.two_view = true;
} else {
this.getCharacteristics(this.category.first.id);
this.products.category_id = this.category.first.id;
} }
}, },
@@ -1188,14 +1193,21 @@ export default {
this.category.three = {}; this.category.three = {};
this.category.three_view = false; this.category.three_view = false;
if (this.category.two.parents.length > 0) { if (!this.category.two || !this.category.two.id) {
return;
}
this.products.category_id = this.category.two.id;
this.getCharacteristics(this.category.two.id);
if (this.category.two.parents && this.category.two.parents.length > 0) {
this.category.three_view = true; this.category.three_view = true;
} }
}, },
DetectCategoryThree() { DetectCategoryThree() {
this.getCharacteristics(this.category.three.id); this.getCharacteristics(this.category.three.id);
this.product.category_id = this.category.three.id; this.products.category_id = this.category.three.id;
}, },
async getCharacteristics(id) { async getCharacteristics(id) {