This commit is contained in:
Jürgen Mummert
2025-12-26 22:34:03 +01:00
parent e11684d4be
commit fb92fe01e9
+40 -8
View File
@@ -20,42 +20,74 @@ class MeilisearchImageHelper
*/
public function resolveImagePath(?string $uuid): ?string
{
error_log('--- MeiliImg START ---');
if (!$uuid) {
error_log('[MeiliImg] UUID leer → return null');
return null;
}
// Contao-Framework sicher initialisieren
error_log('[MeiliImg] UUID = ' . $uuid);
// Contao-Framework initialisieren (CLI & Frontend)
$this->framework->initialize();
error_log('[MeiliImg] Framework initialized');
/** @var FilesModel|null $file */
$file = FilesModel::findByUuid($uuid);
if (!$file) {
error_log('[MeiliImg] FilesModel::findByUuid() = NULL');
return null;
}
error_log('[MeiliImg] FilesModel gefunden');
error_log('[MeiliImg] file->path = ' . $file->path);
error_log('[MeiliImg] file->uuid = ' . ($file->uuid ?? '(n/a)'));
// ImageSize aus tl_settings
$imageSizeId = (int) Config::get('meilisearch_imagesize');
$rawSize = Config::get('meilisearch_imagesize');
$imageSizeId = (int) $rawSize;
error_log('[MeiliImg] meilisearch_imagesize raw = ' . var_export($rawSize, true));
error_log('[MeiliImg] meilisearch_imagesize int = ' . $imageSizeId);
// Fallback: Originaldatei
if ($imageSizeId <= 0) {
error_log('[MeiliImg] imageSizeId <= 0 → FALLBACK file->path = ' . $file->path);
error_log('--- MeiliImg END ---');
return $file->path;
}
try {
$figure = $this->studio
$builder = $this->studio
->createFigureBuilder()
->from($file->path)
->setSize($imageSizeId)
->build();
->setSize($imageSizeId);
error_log('[MeiliImg] FigureBuilder erstellt (from=' . $file->path . ', size=' . $imageSizeId . ')');
$figure = $builder->build();
error_log('[MeiliImg] Figure build() OK');
$image = $figure->getImage();
if ($image === null) {
error_log('[MeiliImg] figure->getImage() = NULL');
error_log('--- MeiliImg END ---');
return null;
}
return $image->getUrl();
} catch (\Throwable) {
// bewusst still kein Bild = kein Index-Fail
$url = $image->getUrl();
error_log('[MeiliImg] image->getUrl() = ' . var_export($url, true));
error_log('--- MeiliImg END ---');
return $url ?: null;
} catch (\Throwable $e) {
error_log('[MeiliImg] EXCEPTION ' . get_class($e) . ': ' . $e->getMessage());
error_log('--- MeiliImg END ---');
return null;
}
}