0
Hi,
I'm working with Joomla 3.10.12 and IM 3.3.0 with PHP 7.4.33
I know that I should update to J4 and update your component, but I have no budget for this on this website.
Anyway, here's an issue I had this week and want to share with you.

On decembre 28th, the file libraries/src/Language/LanguageHelper.php has been update.
I don't have log for this, so I don't know with it has been updated... (first weird thing :) )
Since, no more language strings are shown anymore on backend with IM.
More : If i select an invoice, nothing is print in the preview.

So I put back my old LanguageHelper.php file and everythings was OK again...
That's why I guess it is coming from it... (long hours of investigation)

The change on this file are from old LanguageHelper.php near line 456 :
		// This was required for https://github.com/joomla/joomla-cms/issues/17198 but not sure what server setup
// issue it is solving
$disabledFunctions = explode(',', ini_get('disable_functions'));
$isParseIniFileDisabled = in_array('parse_ini_file', array_map('trim', $disabledFunctions));

if (!function_exists('parse_ini_file') || $isParseIniFileDisabled)
{
$contents = file_get_contents($fileName);
$contents = str_replace('_QQ_', '"\""', $contents);
$strings = @parse_ini_string($contents);
}
else
{
$strings = @parse_ini_file($fileName);
}

To new file LanguageHelper.php that IM is not working with :
		// This was required for https://github.com/joomla/joomla-cms/issues/17198 but not sure what server setup
// issue it is solving
$disabledFunctions = explode(',', ini_get('disable_functions'));
$isParseIniFileDisabled = in_array('parse_ini_file', array_map('trim', $disabledFunctions));

if (!function_exists('parse_ini_file') || $isParseIniFileDisabled)
{
$contents = file_get_contents($fileName);
$strings = @parse_ini_string($contents, false, INI_SCANNER_RAW);
$strings = str_replace('_QQ_', '\"', $strings);
}
else
{
$strings = @parse_ini_file($fileName, false, INI_SCANNER_RAW);
}

// Ini files are processed in the "RAW" mode of parse_ini_string, leaving escaped quotes untouched - lets postprocess them
$strings = str_replace('\"', '"', $strings);



So the first thing is I share with you only to let you know, but the second thing is :
LanguageHelper.php is a Core file from joommla, or am I wrong ? Is I'm not, how this file has been updated while there's no more update for this Joomla ? Any idea ?
Responses (0)
  • There are no replies here yet.
Your Reply