]> cat aescling's git repositories - mastodon.git/commitdiff
Fix auto detect language for translate service (#19244)
authorYamagishi Kazutoshi <ykzts@desire.sh>
Tue, 27 Sep 2022 21:33:56 +0000 (06:33 +0900)
committeraescling <aescling+gitlab@cat.family>
Thu, 17 Nov 2022 03:13:51 +0000 (22:13 -0500)
app/lib/translation_service/deepl.rb
app/lib/translation_service/libre_translate.rb

index 89ccf01e51759c1c419c714a2eafe32444c3dece..b75b604a81d949f5ee774ad4bf65dd83bba6fd0c 100644 (file)
@@ -28,7 +28,7 @@ class TranslationService::DeepL < TranslationService
   private
 
   def request(text, source_language, target_language)
-    req = Request.new(:post, endpoint_url, form: { text: text, source_lang: source_language.upcase, target_lang: target_language, tag_handling: 'html' })
+    req = Request.new(:post, endpoint_url, form: { text: text, source_lang: source_language&.upcase, target_lang: target_language, tag_handling: 'html' })
     req.add_headers('Authorization': "DeepL-Auth-Key #{@api_key}")
     req
   end
index 66acdeed7b9f8c6293e063e64341f7b345d46b88..8cf26f8684a31d7bcc705957ee1bcc75ee430652 100644 (file)
@@ -26,7 +26,8 @@ class TranslationService::LibreTranslate < TranslationService
   private
 
   def request(text, source_language, target_language)
-    req = Request.new(:post, "#{@base_url}/translate", body: Oj.dump(q: text, source: source_language, target: target_language, format: 'html', api_key: @api_key))
+    body = Oj.dump(q: text, source: source_language.presence || 'auto', target: target_language, format: 'html', api_key: @api_key)
+    req = Request.new(:post, "#{@base_url}/translate", body: body)
     req.add_headers('Content-Type': 'application/json')
     req
   end