Skip to content

Commit 2649a42

Browse files
Justin StrauchJustin Strauch
authored andcommitted
fix errors attempt 19
1 parent 0c5c236 commit 2649a42

File tree

1 file changed

+106
-106
lines changed

1 file changed

+106
-106
lines changed

Classes/Controller/Backend/ImageRecognizeController.php

Lines changed: 106 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -255,119 +255,119 @@ protected function ajaxData(ServerRequestInterface $request): ResponseInterface
255255
$action = $parsedBody['action'] ?? $queryParams['action'] ?? '';
256256
$target = $parsedBody['target'] ?? $queryParams['target'] ?? '';
257257
switch ($action) {
258-
case 'saveMetaData':
259-
$altText = $parsedBody['altText'] ?? $queryParams['altText'] ?? '';
260-
$doTranslate = $parsedBody['translate'] ?? $queryParams['translate'] ?? false;
261-
$parentUid = $this->imageMetaDataService->saveMetaData($target, $altText, (int) $target_language);
262-
263-
$translations = [];
264-
if ($doTranslate) {
265-
// fetch all site languages and translate the altText
266-
foreach ($siteLanguages as $siteLanguage) {
267-
// only translate additional languages (skip current language)
268-
if ($siteLanguage->getLanguageId() !== (int) $target_language) {
269-
$altTextTranslated = $this->translationService->translateText($altText, $targetTwoLetterIsoCode, $this->getLocaleLanguageCode($siteLanguage));
270-
$metaDataUid = $this->imageMetaDataService->saveMetaData($target, $altTextTranslated, $siteLanguage->getLanguageId(), $parentUid);
271-
$translations[] = [
272-
'languageId' => $siteLanguage->getLanguageId(),
273-
'title' => $siteLanguage->getTitle(),
274-
'flagHtml' => $this->getLanguageFlagHtml($siteLanguage->getFlagIdentifier(), $siteLanguage->getTitle()),
275-
'altTextTranslated' => $altTextTranslated,
276-
'editLink' => (string)$this->getFileMetaDataEditLink($metaDataUid),
277-
];
258+
case 'saveMetaData':
259+
$altText = $parsedBody['altText'] ?? $queryParams['altText'] ?? '';
260+
$doTranslate = $parsedBody['translate'] ?? $queryParams['translate'] ?? false;
261+
$parentUid = $this->imageMetaDataService->saveMetaData($target, $altText, (int) $target_language);
262+
263+
$translations = [];
264+
if ($doTranslate) {
265+
// fetch all site languages and translate the altText
266+
foreach ($siteLanguages as $siteLanguage) {
267+
// only translate additional languages (skip current language)
268+
if ($siteLanguage->getLanguageId() !== (int) $target_language) {
269+
$altTextTranslated = $this->translationService->translateText($altText, $targetTwoLetterIsoCode, $this->getLocaleLanguageCode($siteLanguage));
270+
$metaDataUid = $this->imageMetaDataService->saveMetaData($target, $altTextTranslated, $siteLanguage->getLanguageId(), $parentUid);
271+
$translations[] = [
272+
'languageId' => $siteLanguage->getLanguageId(),
273+
'title' => $siteLanguage->getTitle(),
274+
'flagHtml' => $this->getLanguageFlagHtml($siteLanguage->getFlagIdentifier(), $siteLanguage->getTitle()),
275+
'altTextTranslated' => $altTextTranslated,
276+
'editLink' => (string)$this->getFileMetaDataEditLink($metaDataUid),
277+
];
278+
}
278279
}
279280
}
280-
}
281281

282-
$returnArray = [
283-
'translations' => $translations,
284-
'saved' => true,
285-
];
286-
287-
return $this->responseFactory->createResponse()
288-
->withHeader('Content-Type', 'application/json')
289-
->withBody($this->streamFactory->createStream(json_encode($returnArray)));
290-
case 'generateMetaData':
291-
$textPrompt = $parsedBody['textPrompt'] ?? $queryParams['textPrompt'] ?: ($defaultPrompt != null ? $defaultPrompt : '');
292-
$selectedimageLabel = $parsedBody['imageLabel'] ?? $queryParams['imageLabel'] ?: ($defaultLabel != null ? $defaultLabel : -1);
293-
$selectedimageLabel = $selectedimageLabel != "undefined" ? $selectedimageLabel : $defaultLabel;
294-
$badwords = $parsedBody['badwords'] ?? $queryParams['badwords'] ?: "";
295-
$badwords = $badwords != "undefined" ? $badwords : "";
296-
297-
298-
$supportsTranslation = false; //d asd sad sadsa das dasd sad asd
299-
if ($this->imageMetaDataService->supportsTranslation()) {
300-
$altTextFromImageTranslated = $this->imageMetaDataService->generateImageDescription(
301-
$fileObjects[0]['file'],
302-
$textPrompt,
303-
$badwords,
304-
$targetTwoLetterIsoCode
305-
);
306-
$data = ['alternative' => $altTextFromImageTranslated, 'baseAlternative' => $altTextFromImageTranslated];
307-
} else {
308-
$altTextFromImage = $this->imageMetaDataService->generateImageDescription(
309-
$fileObjects[0]['file'],
310-
$textPrompt,
311-
$badwords,
312-
'en'
313-
);
314-
$altText = $this->translationService->translateText($altTextFromImage, 'en', $targetTwoLetterIsoCode);
315-
$data = ['alternative' => $altText, 'baseAlternative' => $altTextFromImage];
316-
}
282+
$returnArray = [
283+
'translations' => $translations,
284+
'saved' => true,
285+
];
317286

318-
return $this->responseFactory->createResponse()
319-
->withHeader('Content-Type', 'application/json')
320-
->withBody($this->streamFactory->createStream(json_encode($data)));
321-
322-
default:
323-
if (version_compare(GeneralUtility::makeInstance(VersionNumberUtility::class)->getNumericTypo3Version(), '13.0', '<')) {
324-
$moduleTemplate = $this->moduleTemplateFactory->create($request);
325-
$view = $this->getView('AjaxMetaGenerate', $request);
326-
} else {
327-
$attribute = new ExtbaseRequestParameters(ImageRecognizeController::class);
328-
$request = $request->withAttribute('extbase', $attribute);
329-
$extbaseRequest = GeneralUtility::makeInstance(Request::class, $request);
330-
$moduleTemplate = $this->moduleTemplateFactory->create($extbaseRequest);
331-
}
287+
return $this->responseFactory->createResponse()
288+
->withHeader('Content-Type', 'application/json')
289+
->withBody($this->streamFactory->createStream(json_encode($returnArray)));
290+
case 'generateMetaData':
291+
$textPrompt = $parsedBody['textPrompt'] ?? $queryParams['textPrompt'] ?: ($defaultPrompt != null ? $defaultPrompt : '');
292+
$selectedimageLabel = $parsedBody['imageLabel'] ?? $queryParams['imageLabel'] ?: ($defaultLabel != null ? $defaultLabel : -1);
293+
$selectedimageLabel = $selectedimageLabel != "undefined" ? $selectedimageLabel : $defaultLabel;
294+
$badwords = $parsedBody['badwords'] ?? $queryParams['badwords'] ?: "";
295+
$badwords = $badwords != "undefined" ? $badwords : "";
296+
297+
298+
$supportsTranslation = false; //d asd sad sadsa das dasd sad asd
299+
if ($this->imageMetaDataService->supportsTranslation()) {
300+
$altTextFromImageTranslated = $this->imageMetaDataService->generateImageDescription(
301+
$fileObjects[0]['file'],
302+
$textPrompt,
303+
$badwords,
304+
$targetTwoLetterIsoCode
305+
);
306+
$data = ['alternative' => $altTextFromImageTranslated, 'baseAlternative' => $altTextFromImageTranslated];
307+
} else {
308+
$altTextFromImage = $this->imageMetaDataService->generateImageDescription(
309+
$fileObjects[0]['file'],
310+
$textPrompt,
311+
$badwords,
312+
'en'
313+
);
314+
$altText = $this->translationService->translateText($altTextFromImage, 'en', $targetTwoLetterIsoCode);
315+
$data = ['alternative' => $altText, 'baseAlternative' => $altTextFromImage];
316+
}
332317

333-
$moduleTemplate->getDocHeaderComponent()->disable();
334-
335-
$template_variables = [
336-
'siteLanguages' => $siteLanguages,
337-
'action' => $action,
338-
'target' => $target,
339-
'fileObjects' => $fileObjects ?? null,
340-
'targetLanguage' => (int) $target_language,
341-
'modal' => $modal,
342-
'textPrompt' => $defaultPrompt,
343-
'allTextPrompts' => $allPrompts,
344-
'imageLabels' => $imageLabels,
345-
'selectedimageLabel' => $defaultLabel,
346-
'badwords' => $badwords,
347-
];
348-
349-
$pageRenderer = GeneralUtility::makeInstance(PageRenderer::class);
350-
$typo3Version = new Typo3Version();
351-
if ($typo3Version->getMajorVersion() > 11) {
352-
$pageRenderer->loadJavaScriptModule( // @phpstan-ignore-line
353-
'@pagemachine/ai-tools/AjaxMetaGenerate.js',
354-
);
355-
} else {
356-
$pageRenderer->loadRequireJsModule( // @phpstan-ignore-line
357-
'TYPO3/CMS/AiTools/Amd/AjaxMetaGenerate'
358-
);
359-
}
318+
return $this->responseFactory->createResponse()
319+
->withHeader('Content-Type', 'application/json')
320+
->withBody($this->streamFactory->createStream(json_encode($data)));
321+
322+
default:
323+
if (version_compare(GeneralUtility::makeInstance(VersionNumberUtility::class)->getNumericTypo3Version(), '13.0', '<')) {
324+
$moduleTemplate = $this->moduleTemplateFactory->create($request);
325+
$view = $this->getView('AjaxMetaGenerate', $request);
326+
} else {
327+
$attribute = new ExtbaseRequestParameters(ImageRecognizeController::class);
328+
$request = $request->withAttribute('extbase', $attribute);
329+
$extbaseRequest = GeneralUtility::makeInstance(Request::class, $request);
330+
$moduleTemplate = $this->moduleTemplateFactory->create($extbaseRequest);
331+
}
360332

333+
$moduleTemplate->getDocHeaderComponent()->disable();
334+
335+
$template_variables = [
336+
'siteLanguages' => $siteLanguages,
337+
'action' => $action,
338+
'target' => $target,
339+
'fileObjects' => $fileObjects ?? null,
340+
'targetLanguage' => (int) $target_language,
341+
'modal' => $modal,
342+
'textPrompt' => $defaultPrompt,
343+
'allTextPrompts' => $allPrompts,
344+
'imageLabels' => $imageLabels,
345+
'selectedimageLabel' => $defaultLabel,
346+
'badwords' => $badwords,
347+
];
348+
349+
$pageRenderer = GeneralUtility::makeInstance(PageRenderer::class);
350+
$typo3Version = new Typo3Version();
351+
if ($typo3Version->getMajorVersion() > 11) {
352+
$pageRenderer->loadJavaScriptModule( // @phpstan-ignore-line
353+
'@pagemachine/ai-tools/AjaxMetaGenerate.js',
354+
);
355+
} else {
356+
$pageRenderer->loadRequireJsModule( // @phpstan-ignore-line
357+
'TYPO3/CMS/AiTools/Amd/AjaxMetaGenerate'
358+
);
359+
}
361360

362-
if (version_compare(GeneralUtility::makeInstance(VersionNumberUtility::class)->getNumericTypo3Version(), '13.0', '<')) {
363-
$view = $this->getView('AjaxMetaGenerate', $request);
364-
$view->assignMultiple($template_variables);
365-
$moduleTemplate->setContent($view->render()); // @phpstan-ignore-line
366-
return $this->htmlResponse($moduleTemplate->renderContent()); // @phpstan-ignore-line
367-
} else {
368-
$moduleTemplate->assignMultiple($template_variables); // @phpstan-ignore-line
369-
return $moduleTemplate->renderResponse('Backend/ImageRecognize/AjaxMetaGenerate'); // @phpstan-ignore-line
370-
}
361+
362+
if (version_compare(GeneralUtility::makeInstance(VersionNumberUtility::class)->getNumericTypo3Version(), '13.0', '<')) {
363+
$view = $this->getView('AjaxMetaGenerate', $request);
364+
$view->assignMultiple($template_variables);
365+
$moduleTemplate->setContent($view->render()); // @phpstan-ignore-line
366+
return $this->htmlResponse($moduleTemplate->renderContent()); // @phpstan-ignore-line
367+
} else {
368+
$moduleTemplate->assignMultiple($template_variables); // @phpstan-ignore-line
369+
return $moduleTemplate->renderResponse('Backend/ImageRecognize/AjaxMetaGenerate'); // @phpstan-ignore-line
370+
}
371371
}
372372
}
373373

0 commit comments

Comments
 (0)