kopia lustrzana https://github.com/OpenDroneMap/WebODM
PoC translation for both JSX components and Django
rodzic
b075f24baa
commit
11ee54245d
|
@ -84,7 +84,8 @@ module.exports = {
|
|||
"PluginsAPI": "PluginsAPI",
|
||||
"leaflet": "leaflet",
|
||||
"ReactDOM": "ReactDOM",
|
||||
"React": "React"
|
||||
"React": "React",
|
||||
"gettext": "gettext"
|
||||
},
|
||||
|
||||
watchOptions: {
|
||||
|
|
|
@ -24,6 +24,7 @@ if (!window.PluginsAPI){
|
|||
'leaflet': { loader: 'globals-loader', exports: 'L' },
|
||||
'ReactDOM': { loader: 'globals-loader', exports: 'ReactDOM' },
|
||||
'React': { loader: 'globals-loader', exports: 'React' },
|
||||
'gettext': { loader: 'globals-loader', exports: 'gettext' },
|
||||
'SystemJS': { loader: 'globals-loader', exports: 'SystemJS' }
|
||||
}
|
||||
});
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
<script src="{% static 'app/js/vendor/es6-shim.min.js' %}"></script>
|
||||
<script src="{% static 'app/js/vendor/jquery-1.11.2.min.js' %}"></script>
|
||||
<script src="{% static 'app/js/vendor/system.js' %}"></script>
|
||||
<script src="{% url 'javascript-catalog' %}"></script>
|
||||
|
||||
{% block headers-before-bundle %}{% endblock %}
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
from django.conf.urls import url, include
|
||||
from django.views.i18n import JavaScriptCatalog
|
||||
|
||||
from .views import app as app_views, public as public_views
|
||||
from .plugins.views import app_view_handler
|
||||
|
@ -36,7 +37,10 @@ urlpatterns = [
|
|||
|
||||
url(r'^api/', include("app.api.urls")),
|
||||
|
||||
url(r'^plugins/(?P<plugin_name>[^/.]+)/(.*)$', app_view_handler)
|
||||
url(r'^plugins/(?P<plugin_name>[^/.]+)/(.*)$', app_view_handler),
|
||||
|
||||
# TODO: add caching: https://docs.djangoproject.com/en/3.1/topics/i18n/translation/#note-on-performance
|
||||
url(r'^jsi18n/', JavaScriptCatalog.as_view(packages=['app']), name='javascript-catalog'),
|
||||
]
|
||||
|
||||
handler404 = app_views.handler404
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-04-20 20:31+0000\n"
|
||||
"POT-Creation-Date: 2020-12-14 18:40+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -68,43 +68,43 @@ msgid ""
|
|||
"a> is optional, but can increase georeferencing accuracy"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:197
|
||||
#: app/templates/app/logged_in_base.html:15
|
||||
msgid "Hello"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:201
|
||||
#: app/templates/app/logged_in_base.html:19
|
||||
msgid "Logout"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:224
|
||||
#: app/templates/app/logged_in_base.html:33
|
||||
msgid "Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:273
|
||||
#: app/templates/app/logged_in_base.html:79
|
||||
msgid "Administration"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:276
|
||||
#: app/templates/app/logged_in_base.html:84
|
||||
msgid "Accounts"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:279
|
||||
#: app/templates/app/logged_in_base.html:87
|
||||
msgid "Groups"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:282
|
||||
#: app/templates/app/logged_in_base.html:92
|
||||
msgid "Brand"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:285
|
||||
#: app/templates/app/logged_in_base.html:95
|
||||
msgid "Theme"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:288
|
||||
#: app/templates/app/logged_in_base.html:98
|
||||
msgid "Plugins"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:291
|
||||
#: app/templates/app/logged_in_base.html:101
|
||||
msgid "Application"
|
||||
msgstr ""
|
||||
|
||||
|
@ -121,38 +121,42 @@ msgid "API Version"
|
|||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:23
|
||||
msgid "ODM Version"
|
||||
msgid "Engine"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:27
|
||||
msgid "Queue Count"
|
||||
msgid "Engine Version"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:31
|
||||
msgid "Max Images Limit"
|
||||
msgid "Queue Count"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:35
|
||||
msgid "Label"
|
||||
msgid "Max Images Limit"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:39
|
||||
msgid "Last Refreshed"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:40
|
||||
msgid "ago"
|
||||
msgid "Label"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:43
|
||||
msgid "Last Refreshed"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:44
|
||||
msgid "ago"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:47
|
||||
msgid "Options (JSON)"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:49
|
||||
#: app/templates/app/processing_node.html:53
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:50
|
||||
#: app/templates/app/processing_node.html:54
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
|
@ -164,14 +168,18 @@ msgstr ""
|
|||
msgid "Create Account"
|
||||
msgstr ""
|
||||
|
||||
#: app/views/app.py:33
|
||||
#: app/views/app.py:44
|
||||
msgid "First Project"
|
||||
msgstr ""
|
||||
|
||||
#: app/views/app.py:43 app/views/public.py:25
|
||||
#: app/views/app.py:54 app/views/public.py:26
|
||||
msgid "Map"
|
||||
msgstr ""
|
||||
|
||||
#: app/views/app.py:70
|
||||
#: app/views/app.py:81
|
||||
msgid "3D Model Display"
|
||||
msgstr ""
|
||||
|
||||
#: plugins/cesium-ion/api_views.py:170
|
||||
msgid "No matching enum type."
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-04-20 20:32+0000\n"
|
||||
"POT-Creation-Date: 2020-12-14 18:40+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -20,7 +20,3 @@ msgstr ""
|
|||
#: plugins/lightning/public/Dashboard.jsx:38
|
||||
msgid "Loading dashboard..."
|
||||
msgstr ""
|
||||
|
||||
#: plugins/lightning/public/Dashboard.jsx:150
|
||||
msgid "Logout"
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-04-20 20:31+0000\n"
|
||||
"POT-Creation-Date: 2020-12-14 18:40+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -69,43 +69,43 @@ msgid ""
|
|||
"a> is optional, but can increase georeferencing accuracy"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:197
|
||||
#: app/templates/app/logged_in_base.html:15
|
||||
msgid "Hello"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:201
|
||||
#: app/templates/app/logged_in_base.html:19
|
||||
msgid "Logout"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:224
|
||||
#: app/templates/app/logged_in_base.html:33
|
||||
msgid "Dashboard"
|
||||
msgstr ""
|
||||
msgstr "Pannello di Controllo"
|
||||
|
||||
#: app/templates/app/logged_in_base.html:273
|
||||
#: app/templates/app/logged_in_base.html:79
|
||||
msgid "Administration"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:276
|
||||
#: app/templates/app/logged_in_base.html:84
|
||||
msgid "Accounts"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:279
|
||||
#: app/templates/app/logged_in_base.html:87
|
||||
msgid "Groups"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:282
|
||||
#: app/templates/app/logged_in_base.html:92
|
||||
msgid "Brand"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:285
|
||||
#: app/templates/app/logged_in_base.html:95
|
||||
msgid "Theme"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:288
|
||||
#: app/templates/app/logged_in_base.html:98
|
||||
msgid "Plugins"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/logged_in_base.html:291
|
||||
#: app/templates/app/logged_in_base.html:101
|
||||
msgid "Application"
|
||||
msgstr ""
|
||||
|
||||
|
@ -122,38 +122,42 @@ msgid "API Version"
|
|||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:23
|
||||
msgid "ODM Version"
|
||||
msgid "Engine"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:27
|
||||
msgid "Queue Count"
|
||||
msgid "Engine Version"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:31
|
||||
msgid "Max Images Limit"
|
||||
msgid "Queue Count"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:35
|
||||
msgid "Label"
|
||||
msgid "Max Images Limit"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:39
|
||||
msgid "Last Refreshed"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:40
|
||||
msgid "ago"
|
||||
msgid "Label"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:43
|
||||
msgid "Last Refreshed"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:44
|
||||
msgid "ago"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:47
|
||||
msgid "Options (JSON)"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:49
|
||||
#: app/templates/app/processing_node.html:53
|
||||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: app/templates/app/processing_node.html:50
|
||||
#: app/templates/app/processing_node.html:54
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
|
@ -165,14 +169,18 @@ msgstr ""
|
|||
msgid "Create Account"
|
||||
msgstr ""
|
||||
|
||||
#: app/views/app.py:33
|
||||
#: app/views/app.py:44
|
||||
msgid "First Project"
|
||||
msgstr ""
|
||||
|
||||
#: app/views/app.py:43 app/views/public.py:25
|
||||
#: app/views/app.py:54 app/views/public.py:26
|
||||
msgid "Map"
|
||||
msgstr ""
|
||||
|
||||
#: app/views/app.py:70
|
||||
#: app/views/app.py:81
|
||||
msgid "3D Model Display"
|
||||
msgstr ""
|
||||
|
||||
#: plugins/cesium-ion/api_views.py:170
|
||||
msgid "No matching enum type."
|
||||
msgstr ""
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2019-04-20 20:32+0000\n"
|
||||
"POT-Creation-Date: 2020-12-14 18:40+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -20,8 +20,4 @@ msgstr ""
|
|||
|
||||
#: plugins/lightning/public/Dashboard.jsx:38
|
||||
msgid "Loading dashboard..."
|
||||
msgstr ""
|
||||
|
||||
#: plugins/lightning/public/Dashboard.jsx:150
|
||||
msgid "Logout"
|
||||
msgstr ""
|
||||
msgstr "Caricando il pannello di controllo..."
|
||||
|
|
|
@ -2,7 +2,6 @@ import React from 'react';
|
|||
import PropTypes from 'prop-types';
|
||||
import Login from './Login';
|
||||
import Dashboard from './Dashboard';
|
||||
import $ from 'jquery';
|
||||
|
||||
export default class LightningPanel extends React.Component {
|
||||
static defaultProps = {
|
||||
|
|
27
translate.sh
27
translate.sh
|
@ -1,6 +1,21 @@
|
|||
for lang in it
|
||||
do
|
||||
django-admin makemessages --keep-pot --locale=$lang --ignore=app/templates/app/admin/* --ignore=app/templates/app/registration/*
|
||||
django-admin makemessages --keep-pot --locale=$lang -d djangojs --extension jsx
|
||||
done
|
||||
django-admin compilemessages
|
||||
#!/bin/bash
|
||||
|
||||
LOCALES="it"
|
||||
|
||||
if [[ "$1" == "extract" ]]; then
|
||||
echo "Extracting .po files from Django/React"
|
||||
locale_param=""
|
||||
for lang in $LOCALES
|
||||
do
|
||||
locale_param="--locale=$lang $locale_param"
|
||||
done
|
||||
|
||||
mkdir -p locale
|
||||
django-admin makemessages --keep-pot $locale_param --ignore=build --ignore=app/templates/app/admin/* --ignore=app/templates/app/registration/*
|
||||
django-admin makemessages --keep-pot $locale_param -d djangojs --extension jsx --ignore=build
|
||||
fi
|
||||
|
||||
if [[ "$1" == "build" ]]; then
|
||||
echo "Building .po files into .mo"
|
||||
django-admin compilemessages
|
||||
fi
|
||||
|
|
|
@ -188,6 +188,9 @@ USE_I18N = True
|
|||
USE_L10N = True
|
||||
USE_TZ = True
|
||||
|
||||
LOCALE_PATHS = [
|
||||
os.path.join(BASE_DIR, 'locale')
|
||||
]
|
||||
|
||||
# Static files (CSS, JavaScript, Images)
|
||||
# https://docs.djangoproject.com/en/1.10/howto/static-files/
|
||||
|
|
Ładowanie…
Reference in New Issue