Commit 17432700 by Francisco Salazar

validate slug, validate images

parent 7785f769
...@@ -14,6 +14,7 @@ use Onestartup\Product\Model\Variable as Variable; ...@@ -14,6 +14,7 @@ use Onestartup\Product\Model\Variable as Variable;
use Onestartup\Product\Requests\RequestProduct; use Onestartup\Product\Requests\RequestProduct;
use Onestartup\Product\Requests\RequestVariables; use Onestartup\Product\Requests\RequestVariables;
use Onestartup\Product\Requests\RequestGallery;
class AdminProductController extends Controller class AdminProductController extends Controller
{ {
...@@ -167,7 +168,7 @@ class AdminProductController extends Controller ...@@ -167,7 +168,7 @@ class AdminProductController extends Controller
} }
public function storeGallery(Request $request, $product_id) public function storeGallery(RequestGallery $request, $product_id)
{ {
$product = Product::find($product_id); $product = Product::find($product_id);
......
...@@ -23,11 +23,17 @@ class RequestCategory extends FormRequest ...@@ -23,11 +23,17 @@ class RequestCategory extends FormRequest
*/ */
public function rules() public function rules()
{ {
if ($this->get("_method") == "PUT" || $this->get("_method") == "PATCH"){
$slug = 'required|max:455|unique:product_categories,slug,'.$this->route("category");
}else{
$slug = 'required|max:455|unique:product_categories,slug';
}
return [ return [
'name' => 'required|max:355', 'name' => 'required|max:355',
'slug' => 'required|max:255', 'slug' => $slug,
'description'=> 'max:455', 'description'=> 'max:455',
'active' => 'required|boolean' 'active' => 'required|boolean',
'portada' => 'image'
]; ];
} }
} }
\ No newline at end of file
<?php
namespace Onestartup\Product\Requests;
use Illuminate\Foundation\Http\FormRequest;
class RequestGallery extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'file.*' => 'image'
];
}
}
\ No newline at end of file
...@@ -23,9 +23,14 @@ class RequestProduct extends FormRequest ...@@ -23,9 +23,14 @@ class RequestProduct extends FormRequest
*/ */
public function rules() public function rules()
{ {
if ($this->get("_method") == "PUT" || $this->get("_method") == "PATCH"){
$slug = 'required|max:455|unique:products,slug,'.$this->route("product");
}else{
$slug = 'required|max:455|unique:products,slug';
}
return [ return [
'name' => 'required|max:355', 'name' => 'required|max:355',
'slug' => 'required|max:455', 'slug' => $slug,
'description'=> 'required', 'description'=> 'required',
'active' => 'required|boolean', 'active' => 'required|boolean',
'publication_date' => 'required', 'publication_date' => 'required',
...@@ -39,7 +44,8 @@ class RequestProduct extends FormRequest ...@@ -39,7 +44,8 @@ class RequestProduct extends FormRequest
'extra8' => 'max:455', 'extra8' => 'max:455',
'extra9' => 'max:455', 'extra9' => 'max:455',
'extra10' => 'max:455', 'extra10' => 'max:455',
'category_id' => 'required|numeric' 'category_id' => 'required|numeric',
'cover' => 'image'
]; ];
} }
} }
\ No newline at end of file
...@@ -23,11 +23,17 @@ class RequestSubCategory extends FormRequest ...@@ -23,11 +23,17 @@ class RequestSubCategory extends FormRequest
*/ */
public function rules() public function rules()
{ {
if ($this->get("_method") == "PUT" || $this->get("_method") == "PATCH"){
$slug = 'required|max:255|unique:product_subcategories,slug,'.$this->route("subcategory");
}else{
$slug = 'required|max:255|unique:product_subcategories,slug';
}
return [ return [
'name' => 'required|max:355', 'name' => 'required|max:355',
'slug' => 'required|max:255', 'slug' => $slug,
'description'=> 'max:455', 'description'=> 'max:455',
'active' => 'required|boolean', 'active' => 'required|boolean',
'portada' => 'image'
]; ];
} }
} }
\ No newline at end of file
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
<div class="form-group"> <div class="form-group">
{!! Form::label('portada', 'Imagén de portada') !!} {!! Form::label('portada', 'Imagén de portada') !!}
@if (isset($category)) @if (isset($subcategory))
<span> <span>
<a class="btn btn-xs accent" data-target="#ver" data-toggle="modal" href="#" ui-toggle-class="fade-up-big"> <a class="btn btn-xs accent" data-target="#ver" data-toggle="modal" href="#" ui-toggle-class="fade-up-big">
Ver actual Ver actual
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment