Skip to content

Commit 0563f40

Browse files
authored
Fix get_language_name missing language parameter (#12117)
* Fix get_language_name missing language parameter * Code review feedback * Fix detect-i18n error
1 parent 2b46c91 commit 0563f40

6 files changed

Lines changed: 13 additions & 7 deletions

File tree

openlibrary/macros/SearchResultsWork.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,8 @@ <h3 itemprop="name" class="booktitle">
195195
</span>
196196
$if doc.get('languages') and doc_type in ['infogami_work', 'solr_work']:
197197
<span class="languages">
198-
$ langs = [get_language_name(lang.key if hasattr(lang, 'key') else '/languages' + lang) for lang in doc.languages]
198+
$ user_lang = get_lang() or 'en'
199+
$ langs = [get_language_name(lang.key if hasattr(lang, 'key') else '/languages/' + lang, user_lang) for lang in doc.languages]
199200
$:ungettext('in <a class="hoverlink" title="%(langs)s">%(count)d language</a>', 'in <a class="hoverlink" title="%(langs)s">%(count)d languages</a>', len(doc.languages), count=len(doc.languages), langs=commify_list(langs))
200201
</span>
201202
</span>

openlibrary/plugins/upstream/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1185,7 +1185,7 @@ def get_marc21_language(language: str) -> str | None:
11851185

11861186
@public
11871187
def get_language_name(
1188-
lang_or_key: "Nothing | str | Thing", user_lang: str = 'en'
1188+
lang_or_key: "Nothing | str | Thing", user_lang: str
11891189
) -> Nothing | str:
11901190
if isinstance(lang_or_key, str):
11911191
lang = get_language(lang_or_key)

openlibrary/templates/books/edit/edition.html

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -263,8 +263,9 @@
263263
<span class="tip"></span>
264264
</div>
265265
$if book.languages:
266+
$ user_lang = get_lang() or 'en'
266267
$for i, lang in enumerate(book.languages):
267-
$:render_language_field(i, lang, get_language_name(lang))
268+
$:render_language_field(i, lang, get_language_name(lang, user_lang))
268269
$else:
269270
$:render_language_field(0, storage(name="", key=""), None)
270271
<a href="javascript:;" class="mia__add small">$_('Add another language?')</a>
@@ -307,8 +308,9 @@
307308
<label for="edition-translated_from"><span class="tip">$_("What language was the original written in?")</span></label>
308309
</div>
309310
$if book.translated_from:
311+
$ user_lang = get_lang() or 'en'
310312
$for i, lang in enumerate(book.translated_from):
311-
$:render_translated_from_language_field(i, lang, get_language_name(lang))
313+
$:render_translated_from_language_field(i, lang, get_language_name(lang, user_lang))
312314
$else:
313315
$:render_translated_from_language_field(0, storage(name="", key=""), None)
314316
</div>

openlibrary/templates/books/edition-sort.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@
6464
<!-- Formats are store as a raw string -->
6565
$book.physical_format.replace('[', '').replace(']','')
6666
$if book.languages:
67-
$:_('in %(languagelist)s', languagelist=commify_list(websafe(get_language_name(l.key)) for l in book.languages))
67+
$ user_lang = get_lang() or 'en'
68+
$:_('in %(languagelist)s', languagelist=commify_list(websafe(get_language_name(l.key, user_lang)) for l in book.languages))
6869
$if book.edition_name:
6970
- $book.edition_name
7071
</div>

openlibrary/templates/type/edition/view.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -324,10 +324,11 @@
324324
$if previews and any([len(e.languages) for e in previews]):
325325
<p class="preview-languages">
326326
Previews available in:
327+
$ user_lang = get_lang() or 'en'
327328
$for e in previews:
328329
$if e.languages[0].name not in seen:
329330
$ seen.add(e.languages[0].name)
330-
<a href="$work.key?edition=$(e.ocaid)">$get_language_name(e.languages[0].key)</a>
331+
<a href="$work.key?edition=$(e.ocaid)">$get_language_name(e.languages[0].key, user_lang)</a>
331332
</p>
332333

333334
<div class="subjects">
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
$def with (page)
2-
<a href="$page.key">$get_language_name(page.key)</a>
2+
$ user_lang = get_lang() or 'en'
3+
<a href="$page.key">$get_language_name(page.key, user_lang)</a>

0 commit comments

Comments
 (0)