Add count function for images herited

This commit is contained in:
Ludovic CANDELLIER
2022-04-16 13:58:09 +02:00
parent 2d111605f2
commit 1dc815bf39
12 changed files with 105 additions and 47 deletions

View File

@@ -98,12 +98,15 @@ class Articles
case 'App\Models\Botanic\Variety':
$variety = $article->product;
$specie = $variety->specie;
$description = empty($specie->description) ? '' : $specie->description . '<br><br>';
$description .= empty($variety->description) ? '' : $variety->description . '<br><br>';
$description = $specie->description . $variety->description;
break;
case 'App\Models\Botanic\Specie':
$specie = $article->product;
$description = empty($specie->description) ? '' : $specie->description . '<br><br>';
$description = $specie->description;
break;
case 'App\Models\Shop\Merchandise':
$merchandise = $article->product;
$description = $merchandise->description;
break;
default:
$description = '';
@@ -210,7 +213,6 @@ class Articles
return $data;
}
public static function getFull($id)
{
$data['article'] = self::getArticleEdit($id);
@@ -385,6 +387,46 @@ class Articles
return Article::find($id);
}
public static function getFullImagesByArticleId($id)
{
$article = self::get($id);
return $article ? self::getFullImagesByArticle($article) : false;
}
public static function countFullImagesByArticleId($id)
{
$article = self::get($id);
return $article ? self::countFullImagesByArticle($article) : 0;
}
public static function countFullImagesByArticle($article)
{
return count(self::getFullImagesByArticle($article));
}
public static function getFullImagesByArticle($article)
{
switch ($article->product_type) {
case 'App\Models\Botanic\Variety':
$variety = $article->product;
$specie = $variety->specie;
$images = count($variety->images) ? $variety->images : [];
$images = count($specie->images) ? $images->push($specie->images) : $images;
case 'App\Models\Botanic\Specie':
$specie = $article->product;
$images = count($specie->images) ? $specie->images : [];
break;
case 'App\Models\Shop\Merchandise':
$merchandise = $article->product;
$images = count($merchandise->images) ? $merchandise->images : [];
break;
default:
$images = [];
}
$images = count($article->images) ? $images->push($article->images) : $images;
return $images;
}
public static function getFullImageById($id)
{
$article = self::get($id);