Fix installation translation

pull/3016/head
Julio Montoya 6 years ago
parent 9f4c20a590
commit e9810f9de8
  1. 38
      .env
  2. 4
      main/inc/lib/extra_field.lib.php
  3. 33
      main/inc/lib/internationalization.lib.php
  4. 2
      main/inc/lib/usermanager.lib.php
  5. 34
      main/install/index.php
  6. 44
      main/install/install.lib.php
  7. 6
      src/CoreBundle/Framework/Container.php
  8. 8
      src/CoreBundle/Settings/LanguageSettingsSchema.php

38
.env

@ -3,11 +3,11 @@
###> doctrine/doctrine-bundle ###
# Format described at http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url
DATABASE_HOST="{{DATABASE_HOST}}"
DATABASE_PORT="{{DATABASE_PORT}}"
DATABASE_NAME="{{DATABASE_NAME}}"
DATABASE_USER="{{DATABASE_USER}}"
DATABASE_PASSWORD="{{DATABASE_PASSWORD}}"
DATABASE_HOST='{{DATABASE_HOST}}'
DATABASE_PORT='{{DATABASE_PORT}}'
DATABASE_NAME='{{DATABASE_NAME}}'
DATABASE_USER='{{DATABASE_USER}}'
DATABASE_PASSWORD='{{DATABASE_PASSWORD}}'
###< doctrine/doctrine-bundle ###
###> symfony/swiftmailer-bundle ###
@ -19,35 +19,35 @@ MAILER_PORT=''
###< symfony/swiftmailer-bundle ###
###> symfony/framework-bundle ###
APP_ENV=dev
APP_DEBUG=1
APP_SECRET=141af65f23c7935a37b504c422f113b0
APP_ENV='dev'
APP_DEBUG='1'
APP_SECRET='141af65f23c7935a37b504c422f113b0'
###< symfony/framework-bundle ###
###> chamilo ###
APP_INSTALLED={{APP_INSTALLED}}
APP_INSTALLED='{{APP_INSTALLED}}'
## Encrypt method bcrypt/sha1/md5
APP_ENCRYPT_METHOD={{APP_ENCRYPT_METHOD}}
APP_ENCRYPT_METHOD='{{APP_ENCRYPT_METHOD}}'
APP_LOCALE=en
APP_LOCALE='en'
## Example: '/chamilo2'
APP_URL_APPEND="{{APP_URL_APPEND}}"
APP_URL_APPEND='{{APP_URL_APPEND}}'
APP_MULTIPLE_ACCESS_URL=""
APP_MULTIPLE_ACCESS_URL=''
###< chamilo ###
###> hwi/oauth-bundle ###
FB_ID=
FB_SECRET=
FB_ID=''
FB_SECRET=''
GITHUB_ID=
GITHUB_SECRET=
GITHUB_ID=''
GITHUB_SECRET=''
GOOGLE_ID=
GOOGLE_SECRET=
GOOGLE_ID=''
GOOGLE_SECRET=''
###< hwi/oauth-bundle ###

@ -161,7 +161,9 @@ class ExtraField extends Model
$this->pageUrl = 'extra_fields.php?type='.$this->type;
// Example QuestionFields
$this->pageName = get_lang(ucwords($this->type).'Fields');
// @todo
//$this->pageName = get_lang(ucwords($this->type).'Fields');
$this->pageName = ucwords($this->type).'Fields';
}
/**

@ -17,14 +17,8 @@ use Westsworld\TimeAgo;
*
* @package chamilo.library
*/
// Special tags for marking untranslated variables.
define('SPECIAL_OPENING_TAG', '[=');
define('SPECIAL_CLOSING_TAG', '=]');
// Predefined date formats in Chamilo provided by the language sub-system.
// To be used as a parameter for the function api_format_date()
define('TIME_NO_SEC_FORMAT', 0); // 15:23
define('DATE_FORMAT_SHORT', 1); // Aug 25, 09
define('DATE_FORMAT_LONG', 2); // Monday August 25, 09
@ -75,9 +69,9 @@ function get_lang($variable)
// Using symfony
$defaultDomain = 'messages';
$locale = api_get_interface_language();
$locale = api_get_language_isocode();
$translated = Container::getTranslator()->trans(
$translated = $translator->trans(
$variable,
[],
$defaultDomain,
@ -86,7 +80,7 @@ function get_lang($variable)
if ($translated === $variable) {
// Check the langVariable for BC
$translated = Container::getTranslator()->trans(
$translated = $translator->trans(
"lang$variable",
[],
$defaultDomain,
@ -143,11 +137,16 @@ function api_purify_language_id($language)
}
/**
* Gets language isocode.
* Gets language iso code.
*/
function api_get_language_isocode()
{
return Container::getRequest()->getLocale();
$request = Container::getRequest();
if ($request) {
return $request->getLocale();
}
return 'en';
}
/**
@ -158,18 +157,18 @@ function api_get_language_isocode()
* */
function api_get_platform_isocodes()
{
$iso_code = [];
$list = [];
$sql = "SELECT isocode
FROM ".Database::get_main_table(TABLE_MAIN_LANGUAGE)."
ORDER BY isocode ";
$sql_result = Database::query($sql);
if (Database::num_rows($sql_result)) {
while ($row = Database::fetch_array($sql_result)) {
$iso_code[] = trim($row['isocode']);
$result = Database::query($sql);
if (Database::num_rows($result)) {
while ($row = Database::fetch_array($result)) {
$list[] = trim($row['isocode']);
}
}
return $iso_code;
return $list;
}
/**

@ -186,8 +186,6 @@ class UserManager
) {
$authSource = !empty($authSource) ? $authSource : PLATFORM_AUTH_SOURCE;
$creatorId = empty($creatorId) ? api_get_user_id() : 0;
$creatorInfo = api_get_user_info($creatorId);
$creatorEmail = isset($creatorInfo['email']) ? $creatorInfo['email'] : '';
$hook = Container::instantiateHook(HookCreateUser::class);
if (!empty($hook)) {

@ -713,7 +713,7 @@ $poweredBy = 'Powered by <a href="http://www.chamilo.org" target="_blank"> Chami
?>
<!DOCTYPE html>
<head>
<title>&mdash; <?php echo get_lang('Chamilo installation').' &mdash; '.get_lang('Version').' '.$new_version; ?></title>
<title>&mdash; <?php echo $translator->trans('Chamilo installation').' &mdash; '.$translator->trans('Version').' '.$new_version; ?></title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
@ -742,7 +742,7 @@ $poweredBy = 'Powered by <a href="http://www.chamilo.org" target="_blank"> Chami
//Blocking step6 button
$("#button_step6").click(function() {
$("#button_step6").hide();
$("#button_please_wait").html('<?php echo addslashes(get_lang('Continue')); ?>');
$("#button_please_wait").html('<?php echo addslashes($translator->trans('Continue')); ?>');
$("#button_please_wait").show();
$("#button_please_wait").attr('disabled', true);
$("#is_executable").attr("value",'step6');
@ -752,12 +752,12 @@ $poweredBy = 'Powered by <a href="http://www.chamilo.org" target="_blank"> Chami
if ($("#id_contact_form").css("display") == "none") {
$("#id_contact_form").css("display","block");
$("#img_plus_and_minus").html(
'&nbsp;<i class="fa fa-eye" aria-hidden="true"></i>&nbsp;<?php echo get_lang('Contact information'); ?>'
'&nbsp;<i class="fa fa-eye" aria-hidden="true"></i>&nbsp;<?php echo $translator->trans('Contact information'); ?>'
);
} else {
$("#id_contact_form").css("display","none");
$("#img_plus_and_minus").html(
'&nbsp;<i class="fa fa-eye-slash" aria-hidden="true"></i>&nbsp;<?php echo get_lang('Contact information'); ?>'
'&nbsp;<i class="fa fa-eye-slash" aria-hidden="true"></i>&nbsp;<?php echo $translator->trans('Contact information'); ?>'
);
}
});
@ -765,7 +765,7 @@ $poweredBy = 'Powered by <a href="http://www.chamilo.org" target="_blank"> Chami
function send_contact_information() {
if (!document.getElementById('accept_licence').checked) {
alert('<?php echo get_lang('You must accept the licence'); ?>')
alert('<?php echo $translator->trans('You must accept the licence'); ?>')
;return false;
} else {
var data_post = "";
@ -790,11 +790,11 @@ $poweredBy = 'Powered by <a href="http://www.chamilo.org" target="_blank"> Chami
data: data_post,
success: function(datos) {
if (datos == 'required_field_error') {
message = "<?php echo get_lang('The form contains incorrect or incomplete data. Please check your input.'); ?>";
message = "<?php echo $translator->trans('The form contains incorrect or incomplete data. Please check your input.'); ?>";
} else if (datos == '1') {
message = "<?php echo get_lang('Contact informationHasBeenSent'); ?>";
message = "<?php echo $translator->trans('Contact informationHasBeenSent'); ?>";
} else {
message = "<?php echo get_lang('Error').': '.get_lang('Contact informationHasNotBeenSent'); ?>";
message = "<?php echo $translator->trans('Error').': '.$translator->trans('Contact informationHasNotBeenSent'); ?>";
}
alert(message);
$('#license-next').trigger('click');
@ -805,7 +805,7 @@ $poweredBy = 'Powered by <a href="http://www.chamilo.org" target="_blank"> Chami
}
</script>
</head>
<body class="bg-chamilo bg-install" dir="<?php echo api_get_text_direction(); ?>">
<body class="bg-chamilo bg-install">
<div class="install-box">
<div class="row">
<div class="col-md-4">
@ -816,37 +816,37 @@ $poweredBy = 'Powered by <a href="http://www.chamilo.org" target="_blank"> Chami
<ol class="list-group">
<li class="list-group-item <?php step_active('1'); ?>">
<span class="number"> 1 </span>
<?php echo get_lang('Installation language'); ?>
<?php echo $translator->trans('Installation language'); ?>
</li>
<li class="list-group-item <?php step_active('2'); ?>">
<span class="number"> 2 </span>
<?php echo get_lang('Requirements'); ?>
<?php echo $translator->trans('Requirements'); ?>
</li>
<li class="list-group-item <?php step_active('3'); ?>">
<span class="number"> 3 </span>
<?php echo get_lang('Licence'); ?>
<?php echo $translator->trans('Licence'); ?>
</li>
<li class="list-group-item <?php step_active('4'); ?>">
<span class="number"> 4 </span>
<?php echo get_lang('MySQL database settings'); ?>
<?php echo $translator->trans('MySQL database settings'); ?>
</li>
<li class="list-group-item <?php step_active('5'); ?>">
<span class="number"> 5 </span>
<?php echo get_lang('Config settings'); ?>
<?php echo $translator->trans('Config settings'); ?>
</li>
<li class="list-group-item <?php step_active('6'); ?>">
<span class="number"> 6 </span>
<?php echo get_lang('Show Overview'); ?>
<?php echo $translator->trans('Show Overview'); ?>
</li>
<li class="list-group-item <?php step_active('7'); ?>">
<span class="number"> 7 </span>
<?php echo get_lang('Install'); ?>
<?php echo $translator->trans('Install'); ?>
</li>
</ol>
</div>
<div id="note">
<a class="btn btn-info btn-block" href="<?php echo $installationGuideLink; ?>" target="_blank">
<em class="fa fa-file-text-o"></em> <?php echo get_lang('Read the installation guide'); ?>
<em class="fa fa-file-text-o"></em> <?php echo $translator->trans('Read the installation guide'); ?>
</a>
</div>
</div>

@ -1803,15 +1803,21 @@ function display_configuration_settings_form(
*/
function display_after_install_message()
{
$html = '<div class="RequirementContent">'.get_lang('When you enter your portal for the first time, the best way to understand it is to create a course with the \'Create course\' link in the menu and play around a little.').'</div>';
$container = Container::$container;
$trans = $container->get('translator');
$html = '<div class="RequirementContent">'.
$trans->trans(
'When you enter your portal for the first time, the best way to understand it is to create a course with the \'Create course\' link in the menu and play around a little.').'</div>';
$html .= '<div class="alert alert-warning">';
$html .= '<strong>'.get_lang('Security advice').'</strong>';
$html .= '<strong>'.$trans->trans('Security advice').'</strong>';
$html .= ': ';
$html .= sprintf(get_lang('To protect your site, make the whole %s directory read-only (chmod -R 0555 on Linux) and delete the %s directory.'), 'app/config/', 'main/install/');
$html .= sprintf($trans->trans(
'To protect your site, make the whole %s directory read-only (chmod -R 0555 on Linux) and delete the %s directory.'), 'var/config/', 'main/install/');
$html .= '</div></form>
<br />
<a class="btn btn-success btn-block" href="../../index.php">
'.get_lang('Go to your newly created portal.').'
'.$trans->trans('Go to your newly created portal.').'
</a>';
return $html;
@ -3163,13 +3169,15 @@ function finishInstallationWithContainer(
$manager->persist($ticketProject);
$manager->flush();
$trans = $container->get('translator');
$categories = [
get_lang('Enrollment') => get_lang('Tickets about enrollment'),
get_lang('General information') => get_lang('Tickets about general information'),
get_lang('Requests and paperwork') => get_lang('Tickets about requests and paperwork'),
get_lang('Academic Incidents') => get_lang('Tickets about academic incidents, like exams, practices, tasks, etc.'),
get_lang('Virtual campus') => get_lang('Tickets about virtual campus'),
get_lang('Online evaluation') => get_lang('Tickets about online evaluation'),
$trans->trans('Enrollment') => $trans->trans('Tickets about enrollment'),
$trans->trans('General information') => $trans->trans('Tickets about general information'),
$trans->trans('Requests and paperwork') => $trans->trans('Tickets about requests and paperwork'),
$trans->trans('Academic Incidents') => $trans->trans('Tickets about academic incidents, like exams, practices, tasks, etc.'),
$trans->trans('Virtual campus') => $trans->trans('Tickets about virtual campus'),
$trans->trans('Online evaluation') => $trans->trans('Tickets about online evaluation'),
];
$i = 1;
@ -3194,9 +3202,9 @@ function finishInstallationWithContainer(
// Default Priorities
$defaultPriorities = [
TicketManager::PRIORITY_NORMAL => get_lang('Normal'),
TicketManager::PRIORITY_HIGH => get_lang('High'),
TicketManager::PRIORITY_LOW => get_lang('Low'),
TicketManager::PRIORITY_NORMAL => $trans->trans('Normal'),
TicketManager::PRIORITY_HIGH => $trans->trans('High'),
TicketManager::PRIORITY_LOW => $trans->trans('Low'),
];
$i = 1;
@ -3217,11 +3225,11 @@ function finishInstallationWithContainer(
// Default status
$defaultStatus = [
TicketManager::STATUS_NEW => get_lang('New'),
TicketManager::STATUS_PENDING => get_lang('Pending'),
TicketManager::STATUS_UNCONFIRMED => get_lang('Unconfirmed'),
TicketManager::STATUS_CLOSE => get_lang('Close'),
TicketManager::STATUS_FORWARDED => get_lang('Forwarded'),
TicketManager::STATUS_NEW => $trans->trans('New'),
TicketManager::STATUS_PENDING => $trans->trans('Pending'),
TicketManager::STATUS_UNCONFIRMED => $trans->trans('Unconfirmed'),
TicketManager::STATUS_CLOSE => $trans->trans('Close'),
TicketManager::STATUS_FORWARDED => $trans->trans('Forwarded'),
];
$i = 1;

@ -205,6 +205,10 @@ class Container
*/
public static function getRequest()
{
if (self::$container === null) {
return null;
}
if (!empty(self::$request)) {
return self::$request;
}
@ -213,7 +217,7 @@ class Container
}
/**
* @param $request
* @param Request $request
*/
public static function setRequest($request)
{

@ -26,10 +26,10 @@ class LanguageSettingsSchema extends AbstractSettingsSchema
'allow_use_sub_language' => 'false',
'auto_detect_language_custom_pages' => 'true',
'show_different_course_language' => 'true',
'language_priority_1' => '',
'language_priority_2' => '',
'language_priority_3' => '',
'language_priority_4' => '',
'language_priority_1' => 'platform_lang',
'language_priority_2' => 'platform_lang',
'language_priority_3' => 'platform_lang',
'language_priority_4' => 'platform_lang',
'hide_dltt_markup' => 'false',
'show_language_selector_in_menu' => 'true',
]

Loading…
Cancel
Save