Skip to content
GitLab
Explore
Sign in
Commits on Source (1)
Export JS translation files as static files
· dbe7bf65
ynerant
authored
Nov 16, 2020
dbe7bf65
Hide whitespace changes
Inline
Side-by-side
management/commands/compilejsmessages.py
0 → 100644
View file @
dbe7bf65
# Copyright (C) 2018-2020 by BDE ENS Paris-Saclay
# SPDX-License-Identifier: GPL-3.0-or-later
import
os
from
django.conf
import
settings
from
django.core.management.base
import
BaseCommand
from
django.utils
import
translation
from
django.views.i18n
import
JavaScriptCatalog
class
Command
(
BaseCommand
):
"""
Generate Javascript translation files
"""
def
add_arguments
(
self
,
parser
):
parser
.
add_argument
(
'
--out
'
,
'
-o
'
,
type
=
str
,
default
=
'
static
'
,
help
=
'
Output directory, where static files are.
'
)
def
handle
(
self
,
*
args
,
**
kwargs
):
for
code
,
_
in
settings
.
LANGUAGES
:
if
code
==
settings
.
LANGUAGE_CODE
:
continue
self
.
stdout
.
write
(
f
"
Generate
{
code
}
javascript localization file
"
)
with
translation
.
override
(
code
):
resp
=
JavaScriptCatalog
().
get
(
None
,
packages
=
"
member+note
"
)
if
not
os
.
path
.
isdir
(
kwargs
[
"
out
"
]
+
"
/js/jsi18n
"
):
os
.
makedirs
(
kwargs
[
"
out
"
]
+
"
/js/jsi18n
"
)
with
open
(
kwargs
[
"
out
"
]
+
f
"
/js/jsi18n/
{
code
}
.js
"
,
"
wb
"
)
as
f
:
f
.
write
(
resp
.
content
)