diff --git a/app/Http/Controllers/Shop/HomeController.php b/app/Http/Controllers/Shop/HomeController.php index 92304e51..8836a637 100644 --- a/app/Http/Controllers/Shop/HomeController.php +++ b/app/Http/Controllers/Shop/HomeController.php @@ -28,9 +28,9 @@ class HomeController extends Controller public function index() { $data['categories'] = Categories::getTree(); + $data['category'] = Categories::get(15)->toArray(); $data['articles'] = Articles::getByCategory(0)->toArray(); - dump($data); - exit; + // dump($data); return view('Shop.home', $data); } } diff --git a/app/Models/Core/Media.php b/app/Models/Core/Media.php new file mode 100644 index 00000000..466e47a8 --- /dev/null +++ b/app/Models/Core/Media.php @@ -0,0 +1,12 @@ +hasMany('App\Models\Shop\ArticleAttribute'); } - public function prices() + public function images() { - return $this->hasManyThrough('App\Models\Shop\ArticlePrice','App\Models\Shop\ArticleAttribute'); + return $this->hasMany('App\Models\Core\Media','model_id')->where('model_type','App\Models\Shop\Article'); + } + + public function image() + { + return $this->hasOne('App\Models\Core\Media','model_id')->where('model_type','App\Models\Shop\Article'); } public function inventories() @@ -41,6 +46,11 @@ class Article extends Model implements HasMedia return $this->hasMany('App\Models\Shop\InvoiceItem'); } + public function prices() + { + return $this->hasManyThrough('App\Models\Shop\ArticlePrice','App\Models\Shop\ArticleAttribute'); + } + public function product() { return $this->morphTo(); diff --git a/app/Repositories/Shop/Articles.php b/app/Repositories/Shop/Articles.php index 4a5e4c95..b7ce2ce9 100644 --- a/app/Repositories/Shop/Articles.php +++ b/app/Repositories/Shop/Articles.php @@ -49,7 +49,7 @@ class Articles public static function getByCategory($category_id) { - return Article::with(['prices.article_attribute.attribute_value'])->get(); + return Article::with(['prices.article_attribute.attribute_value','product','image'])->get(); } public static function getCategoriesByArticle($article) @@ -92,7 +92,7 @@ class Articles self::storeCategories($article, $categories); self::storeTags($article, $tags); self::storePrices($article, $prices); - return $article_id; + return $article->id; } public static function store($data) @@ -175,6 +175,17 @@ class Articles } } + public static function getThumbSrc($image) + { + $id = $image['id']; + $images = json_decode($image['responsive_images'], true); + $urls = $images['medialibrary_original']['urls']; + + $img = $urls[count($urls)-1]; + $src = "storage/$id/responsive-images/$img"; + return $src; + } + public static function deleteImage($id, $index) { diff --git a/resources/views/Shop/Admin/Articles/partials/characteristics.blade.php b/resources/views/Shop/Admin/Articles/partials/characteristics.blade.php index 4df79738..abaf056e 100644 --- a/resources/views/Shop/Admin/Articles/partials/characteristics.blade.php +++ b/resources/views/Shop/Admin/Articles/partials/characteristics.blade.php @@ -8,11 +8,11 @@
{{ Form::label('model', 'Familles de produit') }}
- @include('components.select', ['name' => 'model', 'id_name' => 'model', 'list' => $models_options, 'value' => isset($model) ? $model : null, 'class' => 'select2 form-control']) + @include('components.select', ['name' => 'product_type', 'id_name' => 'product_type', 'list' => $models_options, 'value' => isset($product_type) ? $product_type : null, 'class' => 'select2 form-control'])
{{ Form::label('model_id', 'Produit') }}
- @include('components.select2', ['name' => 'model_id', 'id_name' => 'model_id', 'value' => isset($model_id) ? $model_id : null, 'class' => 'select2 form-control']) + @include('components.select2', ['name' => 'product_id', 'id_name' => 'product_id', 'value' => isset($product_id) ? $product_id : null, 'class' => 'select2 form-control'])
@@ -57,13 +57,13 @@ @push('js')