Closed ChurchCRMBugReport closed 1 year ago
Nobody?
Hi @igorcb123 - we're a small dev team with day jobs, so occasionally, we can't respond to support requests as quickly as we'd like; I apologise for that. Looking at the source code for the PersonEditor.php
page, the "First Name" label should be translatable:
<label for="FirstName"><?= gettext('First Name') ?>:</label>
However, it isn't, which is odd, and suggests maybe that the localisation string hasn't been translated, even though the Spanish translation project is reporting 100% complete (see link at the bottom of this comment).
Moving on to the dashboard, which IS translated correctly, I can see the column label is actually being translated in JS:
columns: [
{
title: i18next.t('Name'), // <--- translation happens here
data: 'Name',
render: function (data, type, row) {
return '<a href="' + window.CRM.root + '/v2/family/' + row.FamilyId + '">'+ data +'</a> '
}
},
Digging around in the code a little more, I can see a few examples from your screenshots where the PHP gettext("label")
syntax is not translating the string that we actually have. For example, the "Today's Birthdays" is called by gettext
but not being rendered per the translation:
#:
msgid "Today's Birthdays"
msgstr "Cumpleaños de hoy"
Bottom line, this looks like some strings may have been pivoted to be locale-aware but haven't been translated in our POEditor project yet and others have been translated, but not displaying correctly. Here are a few suggestions:
Something similar happens to me. The Login is shown in Spanish, but then the CRM is shown all in English
the issue is that windows does not support gettext PHP translation
Although the CRM is configured in Spanish, the local configuration is es-ES and the operating system is in Spanish (Windows 10), most of the system interface is still displayed in English.
This is what powershell shows me
PS D:\CCECO\CCCO\CRM> Get-WinSystemLocale
LCID Name DisplayName
3082 es-ES Español (España)
I've noticed php gettext('First Name') result is english 'First Name', but javascript title:i18next.t('First Name') result is spanish 'Nombre'
That produces that most labels are displayed un english but some of them are displayed in Spanish (please see the screenshots)
Why is that?