Fixed bug #9386: Acronym plugin encoding problem
authorStanislas Rolland <typo3@sjbr.ca>
Fri, 26 Sep 2008 15:57:14 +0000 (15:57 +0000)
committerStanislas Rolland <typo3@sjbr.ca>
Fri, 26 Sep 2008 15:57:14 +0000 (15:57 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@4252 709f56b5-9817-0410-a4d7-c38de5d9e867

ChangeLog
typo3/sysext/rtehtmlarea/ChangeLog
typo3/sysext/rtehtmlarea/extensions/Acronym/class.tx_rtehtmlarea_acronym.php

index d2daecf..9b712fa 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2008-09-26  Stanislas Rolland  <typo3@sjbr.ca>
+
+       * Fixed bug #9386: Acronym plugin encoding problem
+
 2008-09-25  Stanislas Rolland  <typo3@sjbr.ca>
 
        * Fixed issue #9429: htmlArea RTE: Cleanup unused files
index 3acc963..4bceefd 100644 (file)
@@ -1,3 +1,7 @@
+2008-09-26  Stanislas Rolland  <typo3@sjbr.ca>
+
+       * Fixed bug #9386: Acronym plugin encoding problem
+
 2008-09-25  Stanislas Rolland  <typo3@sjbr.ca>
 
        * Fixed issue #9429: htmlArea RTE: Cleanup unused files
index 5d94dbe..1721772 100644 (file)
@@ -110,14 +110,16 @@ class tx_rtehtmlarea_acronym extends tx_rtehtmlareaapi {
         * @return      string          acronym Javascript array
         */
        function buildJSAcronymArray($languageUid) {
-               global $TYPO3_CONF_VARS, $TYPO3_DB;
+               global $TYPO3_DB;
+
+               $charset = $GLOBALS['TYPO3_CONF_VARS']['BE']['forceCharset'] ? $GLOBALS['TYPO3_CONF_VARS']['BE']['forceCharset'] : 'iso-8859-1';
 
                $button = 'acronym';
                $PIDList = 0;
                if (is_array($this->thisConfig['buttons.']) && is_array($this->thisConfig['buttons.'][$button.'.']) && trim($this->thisConfig['buttons.'][$button.'.']['PIDList'])) {
                        $PIDList = implode(',', t3lib_div::trimExplode(',', $this->thisConfig['buttons.'][$button.'.']['PIDList']));
                }
-               $linebreak = $TYPO3_CONF_VARS['EXTCONF'][$this->htmlAreaRTE->ID]['enableCompressedScripts'] ? '' : chr(10);
+               $linebreak = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF'][$this->htmlAreaRTE->ID]['enableCompressedScripts'] ? '' : chr(10);
                $JSAcronymArray .= 'acronyms = { ' . $linebreak;
                $JSAbbreviationArray .= 'abbreviations = { ' . $linebreak;
                $table = 'tx_rtehtmlarea_acronym';
@@ -131,8 +133,8 @@ class tx_rtehtmlarea_acronym extends tx_rtehtmlareaapi {
                $whereClause .= t3lib_BEfunc::deleteClause($table);
                $res = $TYPO3_DB->exec_SELECTquery('type,term,acronym', $table, $whereClause);
                while($acronymRow = $TYPO3_DB->sql_fetch_assoc($res))    {
-                       if( $acronymRow['type'] == 1) $JSAcronymArray .= (($this->acronymIndex++)?',':'') . '"' . $acronymRow['term'] . '":"' . $acronymRow['acronym'] . '"' . $linebreak;
-                       if ($acronymRow['type'] == 2) $JSAbbreviationArray .= (($this->AbbreviationIndex++)?',':'') . '"' . $acronymRow['term'] . '":"' . $acronymRow['acronym'] . '"' . $linebreak;
+                       if( $acronymRow['type'] == 1) $JSAcronymArray .= (($this->acronymIndex++)?',':'') . '"' . $GLOBALS['LANG']->csConvObj->utf8_encode($acronymRow['term'], $charset) . '":"' . $GLOBALS['LANG']->csConvObj->utf8_encode($acronymRow['acronym'], $charset) . '"' . $linebreak;
+                       if ($acronymRow['type'] == 2) $JSAbbreviationArray .= (($this->AbbreviationIndex++)?',':'') . '"' . $GLOBALS['LANG']->csConvObj->utf8_encode($acronymRow['term'], $charset) . '":"' . $GLOBALS['LANG']->csConvObj->utf8_encode($acronymRow['acronym'], $charset) . '"' . $linebreak;
                }
                $JSAcronymArray .= '};' . $linebreak;
                $JSAbbreviationArray .= '};' . $linebreak;