diff --git a/Makefile b/Makefile index ae8037c67e6..dec005e9c6c 100755 --- a/Makefile +++ b/Makefile @@ -156,7 +156,9 @@ locales: msgfmt -o modules/timepoint_list/locale/ja/LC_MESSAGES/timepoint_list.mo modules/timepoint_list/locale/ja/LC_MESSAGES/timepoint_list.po msgfmt -o modules/timepoint_list/locale/es/LC_MESSAGES/timepoint_list.mo modules/timepoint_list/locale/es/LC_MESSAGES/timepoint_list.po msgfmt -o modules/user_accounts/locale/ja/LC_MESSAGES/user_accounts.mo modules/user_accounts/locale/ja/LC_MESSAGES/user_accounts.po - + msgfmt -o modules/user_accounts/locale/hi/LC_MESSAGES/user_accounts.mo modules/user_accounts/locale/hi/LC_MESSAGES/user_accounts.po + npx i18next-conv -l hi -s modules/user_accounts/locale/hi/LC_MESSAGES/user_accounts.po -t modules/user_accounts/locale/hi/LC_MESSAGES/user_accounts.json --compatibilityJSON v4 + npx i18next-conv -l ja -s modules/user_accounts/locale/ja/LC_MESSAGES/user_accounts.po -t modules/user_accounts/locale/ja/LC_MESSAGES/user_accounts.json --compatibilityJSON v4 acknowledgements: modules/acknowledgements/locale/ja/LC_MESSAGES/acknowledgements.mo target=acknowledgements npm run compile diff --git a/locale/hi/LC_MESSAGES/loris.po b/locale/hi/LC_MESSAGES/loris.po index e19c9f495a2..52f26109475 100644 --- a/locale/hi/LC_MESSAGES/loris.po +++ b/locale/hi/LC_MESSAGES/loris.po @@ -17,6 +17,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" # Smarty template main.tpl strings msgid "LORIS" @@ -126,6 +127,24 @@ msgstr "नहीं" msgid "N/A" msgstr "लागू नहीं" +msgid "Save" +msgstr "सहेजें" + +msgid "Reset" +msgstr "रीसेट करें" + +msgid "Back" +msgstr "वापस" + +msgid "None" +msgstr "कोई नहीं" + +msgid "Y" +msgstr "हाँ" + +msgid "N" +msgstr "नहीं" + msgid "Create" msgstr "बनाएँ" @@ -165,11 +184,18 @@ msgstr "डीसीसीआईडी" msgid "Visit Label" msgstr "दौरे का लेबल" +msgid "Email" +msgstr "ईमेल" + msgid "Site" -msgstr "साइट" +msgid_plural "Sites" +msgstr[0] "साइट" +msgstr[1] "साइट्स" msgid "Project" -msgstr "परियोजना" +msgid_plural "Projects" +msgstr[0] "परियोजना" +msgstr[1] "प्रोजेक्ट्" msgid "Candidate Registration Project" msgstr "उम्मीदवार पंजीकरण परियोजना" @@ -223,6 +249,9 @@ msgstr "भ्रमण" msgid "An error occured while loading the page." msgstr "पृष्ठ लोड करते समय एक त्रुटि हुई।" +msgid "Active" +msgstr "सक्रिय" + msgid "Entity Type" msgstr "इकाई प्रकार" @@ -235,12 +264,6 @@ msgstr "भाषा" msgid "Ethnicity" msgstr "जातीयता" -msgid "Save" -msgstr "सहेजें" - -msgid "Reset" -msgstr "रीसेट करें" - # Data table strings msgid "{{pageCount}} rows displayed of {{totalCount}}." msgstr "{{totalCount}} में से {{pageCount}} पंक्तियाँ प्रदर्शित" @@ -306,12 +329,18 @@ msgstr "ईमेल पता" msgid "New Password" msgstr "नया पासवर्ड" +msgid "Password" +msgstr "पासवर्ड" + msgid "Confirm Password" msgstr "पासवर्ड की पुष्टि करें" msgid "Email address is required" msgstr "ईमेल पता आवश्यक है" +msgid "Email address cannot contain any of the following characters: <, >, &, and \"" +msgstr "ईमेल पता निम्नलिखित किसी भी वर्ण को नहीं शामिल कर सकता: <, >, &, और \"" + msgid "The password must be at least 8 characters long." msgstr "पासवर्ड कम से कम 8 अक्षरों का होना चाहिए।" @@ -370,9 +399,6 @@ msgstr "पूर्ण" msgid "Instruments" msgstr "उपकरण" -msgid "None" -msgstr "कोई नहीं" - msgid "Partial" msgstr "आंशिक" diff --git a/locale/ja/LC_MESSAGES/loris.po b/locale/ja/LC_MESSAGES/loris.po index 6f13ef8dd8c..95544e70758 100644 --- a/locale/ja/LC_MESSAGES/loris.po +++ b/locale/ja/LC_MESSAGES/loris.po @@ -129,6 +129,9 @@ msgstr "作成する" msgid "N/A" msgstr "適用できない" +msgid "Back" +msgstr "戻る" + # Filters msgid "Selection Filter" msgstr "'選択フィルター" @@ -162,14 +165,19 @@ msgstr "候補者識別子" msgid "Visit Label" msgstr "ラベルを訪問" +msgid "Email" +msgstr "メール" + msgid "Site" -msgstr "サイト" +msgid_plural "Sites" +msgstr[0] "サイト" msgid "Module" msgstr "モジュール" msgid "Project" -msgstr "プロジェクト" +msgid_plural "Projects" +msgstr[0] "プロジェクト" msgid "Candidate Registration Project" msgstr "候補者登録プロジェクト" @@ -226,6 +234,9 @@ msgstr "訪問" msgid "An error occured while loading the page." msgstr "このページの読み込み中にエラーが発生しました" +msgid "Active" +msgstr "アクティブ" + msgid "Entity Type" msgstr "エンティティタイプ" @@ -403,6 +414,9 @@ msgstr "姓は必須で、120文字以内で入力してください。" msgid "Email address" msgstr "電子メールアドレス" +msgid "Password" +msgstr "パスワード" + msgid "New Password" msgstr "新しいパスワード" @@ -412,6 +426,9 @@ msgstr "パスワードを認証する" msgid "Email address is required" msgstr "メールアドレスは必須です" +msgid "Email address cannot contain any of the following characters: <, >, &, and \"" +msgstr "メールアドレスには、<、>、&、\" の文字を含めることはできません。" + msgid "The password must be at least 8 characters long." msgstr "パスワードは8文字以上である必要があります" diff --git a/locale/loris.pot b/locale/loris.pot index 139852bb837..0da60e65022 100644 --- a/locale/loris.pot +++ b/locale/loris.pot @@ -125,6 +125,9 @@ msgstr "" msgid "N/A" msgstr "" +msgid "Back" +msgstr "" + msgid "Create" msgstr "" @@ -167,14 +170,19 @@ msgstr "" msgid "Visit Label" msgstr "" -msgid "Site" +msgid "Email" msgstr "" +msgid "Site" +msgid_plural "Sites" +msgstr[0] "" + msgid "Module" msgstr "" msgid "Project" -msgstr "" +msgid_plural "Projects" +msgstr[0] "" msgid "Candidate Registration Project" msgstr "" @@ -231,6 +239,9 @@ msgstr "" msgid "An error occured while loading the page." msgstr "" +msgid "Active" +msgstr "" + msgid "Entity Type" msgstr "" @@ -314,12 +325,18 @@ msgstr "" msgid "New Password" msgstr "" +msgid "Password" +msgstr "" + msgid "Confirm Password" msgstr "" msgid "Email address is required" msgstr "" +msgid "Email address cannot contain any of the following characters: <, >, &, and \"" +msgstr "" + msgid "The password must be at least 8 characters long." msgstr "" @@ -334,6 +351,7 @@ msgstr "" msgid "We suggest using a password manager to generate one for you." msgstr "" + msgid "Total" msgstr "" diff --git a/modules/user_accounts/jsx/userAccountsIndex.js b/modules/user_accounts/jsx/userAccountsIndex.js index 56d491d69ea..2b2f13989b7 100644 --- a/modules/user_accounts/jsx/userAccountsIndex.js +++ b/modules/user_accounts/jsx/userAccountsIndex.js @@ -4,6 +4,8 @@ import PropTypes from 'prop-types'; import i18n from 'I18nSetup'; import {withTranslation} from 'react-i18next'; +import hiStrings from '../locale/hi/LC_MESSAGES/user_accounts.json'; +import jaStrings from '../locale/ja/LC_MESSAGES/user_accounts.json'; import Loader from 'Loader'; import FilterableDataTable from 'FilterableDataTable'; @@ -16,13 +18,17 @@ import FilterableDataTable from 'FilterableDataTable'; * * When clicking on the Add User button or a Username, this component redirects * the user to a form that allows them to add or edit a user. + * + * @param {object} props - React component properties */ class UserAccountsIndex extends Component { /** * {@inheritdoc} + * + * @param props */ - constructor() { - super(); + constructor(props) { + super(props); this.state = { data: {}, @@ -69,53 +75,61 @@ class UserAccountsIndex extends Component { * @return {*} a formated table cell for a given column */ formatColumn(column, cell, row) { + const {t} = this.props; let url; let result =