Bug #19425
closedTitles of content columns in classic page module doesn't take into account backend charset
0%
Description
Titles of content columns in classic page module doesn't take into account backend charset ($GLOBALS['TYPO3_CONF_VARS']['BE']['forceCharset']) It results in broken russian captions and supposed to be broken in other languages too (except the case when server's locale same as backend lang). Attached patch resoves it, It replaces use of strtoupper to mb_strtoupper which supports charset encoding,
it affects 4.1.7 version as well as 4.2.1
(issue imported from #M9501)
Files
Updated by Steffen Kamper about 16 years ago
Hi,
you shouldn't use mb-functions direct., use t3lib_cs::conv_case() instead (you don't have to check for ($GLOBALS['TYPO3_CONF_VARS']['BE']['forceCharset'] for this conversion)
Updated by Vladimir Podkovanov about 16 years ago
Hi Steffen
I got your point, t3lib_cs::conv_case() should be used and there we have conversion via mb_strtolower or via char_mapping.
However we have to explicitly set charset to use t3lib_cs::conv_case().
So we should use $GLOBALS['TYPO3_CONF_VARS']['BE']['forceCharset'] to determine the BE charset and if it is empty we use "iso-8859-1" encoding (actually we do here the same check as in t3lib_div::xml2array() so we match encoding with locallang labels).
I've uploaded new patch bug_0009501_1.diff
Updated by Vladimir Podkovanov about 16 years ago
I've uploaded last correction - patch bug_0009501_2.diff - little correction of coding style for consistency with other code
Updated by Steffen Kamper about 16 years ago
Hi Vladimir,
you can get the actual charset very easy;
$GLOBALS['LANG']->charSet
with 4.2.2 this is always filled, so this should be enough ;-)
Updated by Vladimir Podkovanov about 16 years ago
Hi, uploaded patch bug_0009501_3.diff includes last correction (with use of $GLOBALS['LANG']->charSet)
I've tested it with 4.1.7; 4.2.1; 4.2.2 it works well
Updated by Steffen Kamper about 16 years ago
there is a problem that the function can't be called static.
I changed it using $GLOBALS['LANG']->csConvObj->conv_case instead, new patch is attached
Updated by Martin Kutschker about 16 years ago
Fixed in 4.1, 4.2 and trunk (4.3),