public static function GetImagesByArticleNumber($p_articleNumber, $p_countOnly = false) { global $g_ado_db; if ($p_countOnly) { $selectStr = "COUNT(*)"; } else { $tmpImage = new Image(); $selectStr = implode(',', array_map(function ($column) { return 'Images.' . $column; }, $tmpImage->getColumnNames())); $selectStr .= ', ArticleImages.Number, ArticleImages.NrArticle, ArticleImages.IdImage'; } $queryStr = 'SELECT ' . $selectStr . ' FROM Images, ArticleImages' . ' WHERE ArticleImages.NrArticle=' . $p_articleNumber . ' AND ArticleImages.IdImage=Images.Id' . ' ORDER BY ArticleImages.Number'; if ($p_countOnly) { return $g_ado_db->GetOne($queryStr); } else { $rows = $g_ado_db->GetAll($queryStr); $returnArray = array(); if (is_array($rows)) { foreach ($rows as $row) { $tmpArticleImage = new ArticleImage(); $tmpArticleImage->fetch($row); $tmpArticleImage->m_image = new Image(); $tmpArticleImage->m_image->fetch($row); $returnArray[] = $tmpArticleImage; } } return $returnArray; } }
protected function getImage() { $context = CampTemplate::singleton()->context(); if ($context->image->defined) { return $context->image; } $images = ArticleImage::GetImagesByArticleNumber($this->m_dbObject->getArticleNumber()); if (count($images) == 0) { return new MetaImage(); } return new MetaImage($images[0]->getImageId()); }