Skip to content

Commit 40616ef

Browse files
committed
Merge branch 'develop' – Fix ingest_ns_document
2 parents a136828 + 6f90220 commit 40616ef

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

api/management/commands/ingest_ns_document.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,8 @@ def fetch_country_documents(self, api_key, country_ns_code):
7676
if not data:
7777
return None
7878
documents = []
79-
for item in data["documents"]:
79+
items = data[0]["documents"] if len(data) == 1 else data["documents"]
80+
for item in items:
8081
document_info = {
8182
"name": item["name"],
8283
"url": item["url"],

lang/translation.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import logging
2+
import threading
23

34
import boto3
45
import requests
@@ -12,6 +13,9 @@
1213
# Array of language : ['en', 'es', 'fr', ....]
1314
AVAILABLE_LANGUAGES = [lang for lang, _ in settings.LANGUAGES]
1415

16+
IFRC_TRANSLATION_CALL_COUNT = 0
17+
IFRC_TRANSLATION_CALL_LOCK = threading.Lock()
18+
1519

1620
class BaseTranslator:
1721
def _fake_translation(self, text, dest_language, source_language):
@@ -99,6 +103,11 @@ def translate_text(self, text, dest_language, source_language=None):
99103
# NOTE: Mocking for test purpose
100104
return self._fake_translation(text, dest_language, source_language)
101105

106+
global IFRC_TRANSLATION_CALL_COUNT
107+
with IFRC_TRANSLATION_CALL_LOCK:
108+
IFRC_TRANSLATION_CALL_COUNT += 1
109+
logger.info(f"IFRC translation API call count: {IFRC_TRANSLATION_CALL_COUNT}")
110+
102111
# A dirty workaround to handle oversized HTML+CSS texts, usually tables:
103112
textTail = ""
104113
if len(text) > settings.AZURE_TRANSL_LIMIT:
@@ -124,6 +133,7 @@ def translate_text(self, text, dest_language, source_language=None):
124133
# NOTE: Sending 'text' throws 500 from IFRC translation endpoint
125134
# So only sending if html
126135
payload["textType"] = "html"
136+
logger.info(f"IFRC translation API call content: {text[:30]}... to {dest_language} from {source_language}")
127137
response = requests.post(
128138
self.url,
129139
headers=self.headers,

0 commit comments

Comments
 (0)