@@ -224,37 +224,34 @@ public function ajaxMetaGenerateAction(ServerRequestInterface $request): Respons
224224 }
225225
226226 protected function ajaxData (ServerRequestInterface $ request ): ResponseInterface
227- {
228- $ parsedBody = $ request ->getParsedBody ();
229- $ queryParams = $ request ->getQueryParams ();
230-
231- $ fileObjects = $ this ->getFileObjectFromRequestTarget ($ request );
232-
233- $ allPrompts = $ this ->promptRepository ->findAll ();
234-
235- $ defaultPrompt = $ this ->promptRepository ->getDefaultPromptText ();
227+ {
228+ $ parsedBody = $ request ->getParsedBody ();
229+ $ queryParams = $ request ->getQueryParams ();
236230
237- $ imageLabels = $ this ->imagelabelRepository -> findAll ( );
231+ $ fileObjects = $ this ->getFileObjectFromRequestTarget ( $ request );
238232
239- $ defaultLabel = $ this ->imagelabelRepository ->getDefaultImageLabelId ();
233+ $ allPrompts = $ this ->promptRepository ->findAll ();
234+ $ defaultPrompt = $ this ->promptRepository ->getDefaultPromptText ();
235+ $ imageLabels = $ this ->imagelabelRepository ->findAll ();
236+ $ defaultLabel = $ this ->imagelabelRepository ->getDefaultImageLabelId ();
237+ $ badwords = $ this ->badwordsRepository ->findAll ();
238+ $ siteLanguages = $ this ->getAllSiteLanguages ();
240239
241- $ badwords = $ this ->badwordsRepository ->findAll ();
240+ $ modal = $ parsedBody ['modal ' ] ?? $ queryParams ['modal ' ] ?? false ;
241+ $ target_language = $ parsedBody ['target-language ' ] ?? $ queryParams ['target-language ' ] ?? null ;
242242
243- $ siteLanguages = $ this ->getAllSiteLanguages ();
243+ if (is_null ($ target_language )) {
244+ throw new Exception ("No target language " , 1727169730 );
245+ }
244246
245- $ modal = $ parsedBody ['modal ' ] ?? $ queryParams ['modal ' ] ?? false ;
247+ $ targetLanguage = $ this ->getLanguageById ((int ) $ target_language );
248+ $ targetTwoLetterIsoCode = $ this ->getLocaleLanguageCode ($ targetLanguage );
246249
247- $ target_language = $ parsedBody ['target-language ' ] ?? $ queryParams ['target-language ' ] ?? null ;
248- if (is_null ($ target_language )) {
249- throw new Exception ("No target language " , 1727169730 );
250- }
251- $ targetLanguage = $ this ->getLanguageById ((int ) $ target_language );
252- $ targetTwoLetterIsoCode = $ this ->getLocaleLanguageCode ($ targetLanguage );
250+ // Setting target, which must be a file reference to a file within the mounts.
251+ $ action = $ parsedBody ['action ' ] ?? $ queryParams ['action ' ] ?? '' ;
252+ $ target = $ parsedBody ['target ' ] ?? $ queryParams ['target ' ] ?? '' ;
253253
254- // Setting target, which must be a file reference to a file within the mounts.
255- $ action = $ parsedBody ['action ' ] ?? $ queryParams ['action ' ] ?? '' ;
256- $ target = $ parsedBody ['target ' ] ?? $ queryParams ['target ' ] ?? '' ;
257- switch ($ action ) {
254+ switch ($ action ) {
258255 case 'saveMetaData ' :
259256 $ altText = $ parsedBody ['altText ' ] ?? $ queryParams ['altText ' ] ?? '' ;
260257 $ doTranslate = $ parsedBody ['translate ' ] ?? $ queryParams ['translate ' ] ?? false ;
@@ -266,14 +263,26 @@ protected function ajaxData(ServerRequestInterface $request): ResponseInterface
266263 foreach ($ siteLanguages as $ siteLanguage ) {
267264 // only translate additional languages (skip current language)
268265 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 );
266+ $ altTextTranslated = $ this ->translationService ->translateText (
267+ $ altText ,
268+ $ targetTwoLetterIsoCode ,
269+ $ this ->getLocaleLanguageCode ($ siteLanguage )
270+ );
271+ $ metaDataUid = $ this ->imageMetaDataService ->saveMetaData (
272+ $ target ,
273+ $ altTextTranslated ,
274+ $ siteLanguage ->getLanguageId (),
275+ $ parentUid
276+ );
271277 $ translations [] = [
272278 'languageId ' => $ siteLanguage ->getLanguageId (),
273279 'title ' => $ siteLanguage ->getTitle (),
274- 'flagHtml ' => $ this ->getLanguageFlagHtml ($ siteLanguage ->getFlagIdentifier (), $ siteLanguage ->getTitle ()),
280+ 'flagHtml ' => $ this ->getLanguageFlagHtml (
281+ $ siteLanguage ->getFlagIdentifier (),
282+ $ siteLanguage ->getTitle ()
283+ ),
275284 'altTextTranslated ' => $ altTextTranslated ,
276- 'editLink ' => (string )$ this ->getFileMetaDataEditLink ($ metaDataUid ),
285+ 'editLink ' => (string ) $ this ->getFileMetaDataEditLink ($ metaDataUid ),
277286 ];
278287 }
279288 }
@@ -287,15 +296,15 @@ protected function ajaxData(ServerRequestInterface $request): ResponseInterface
287296 return $ this ->responseFactory ->createResponse ()
288297 ->withHeader ('Content-Type ' , 'application/json ' )
289298 ->withBody ($ this ->streamFactory ->createStream (json_encode ($ returnArray )));
299+
290300 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 ;
301+ $ textPrompt = $ parsedBody ['textPrompt ' ] ?? $ queryParams ['textPrompt ' ] ?: ($ defaultPrompt ?? '' );
302+ $ selectedimageLabel = $ parsedBody ['imageLabel ' ] ?? $ queryParams ['imageLabel ' ] ?: ($ defaultLabel ?? -1 );
303+ $ selectedimageLabel = $ selectedimageLabel !== "undefined " ? $ selectedimageLabel : $ defaultLabel ;
294304 $ badwords = $ parsedBody ['badwords ' ] ?? $ queryParams ['badwords ' ] ?: "" ;
295- $ badwords = $ badwords != "undefined " ? $ badwords : "" ;
296-
297-
298- $ supportsTranslation = false ; //d asd sad sadsa das dasd sad asd
305+ $ badwords = $ badwords !== "undefined " ? $ badwords : "" ;
306+
307+ $ supportsTranslation = false ;
299308 if ($ this ->imageMetaDataService ->supportsTranslation ()) {
300309 $ altTextFromImageTranslated = $ this ->imageMetaDataService ->generateImageDescription (
301310 $ fileObjects [0 ]['file ' ],
@@ -346,30 +355,18 @@ protected function ajaxData(ServerRequestInterface $request): ResponseInterface
346355 'badwords ' => $ badwords ,
347356 ];
348357
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- }
360-
361-
362358 if (version_compare (GeneralUtility::makeInstance (VersionNumberUtility::class)->getNumericTypo3Version (), '13.0 ' , '< ' )) {
363359 $ view = $ this ->getView ('AjaxMetaGenerate ' , $ request );
364360 $ view ->assignMultiple ($ template_variables );
365- $ moduleTemplate ->setContent ($ view ->render ()); // @phpstan-ignore-line
366- return $ this ->htmlResponse ($ moduleTemplate ->renderContent ()); // @phpstan-ignore-line
361+ $ moduleTemplate ->setContent ($ view ->render ());
362+ return $ this ->htmlResponse ($ moduleTemplate ->renderContent ());
367363 } else {
368- $ moduleTemplate ->assignMultiple ($ template_variables ); // @phpstan-ignore-line
369- return $ moduleTemplate ->renderResponse ('Backend/ImageRecognize/AjaxMetaGenerate ' ); // @phpstan-ignore-line
364+ $ moduleTemplate ->assignMultiple ($ template_variables );
365+ return $ moduleTemplate ->renderResponse ('Backend/ImageRecognize/AjaxMetaGenerate ' );
370366 }
371- }
372367 }
368+ }
369+
373370
374371 protected function addMetaToFile ($ fileObject , $ languages ): array
375372 {
0 commit comments