В системных всплывающих сообщениях теряются первые две буквы. Вместо них в IE знак вопроса, а в других браузерах нечитаемый символ. (Например, всплывает сообщение - вместо :" Информация: товар добавлен в корзину" пишет "?формация: товар добавлен в корзину). Где искать ошибку? Сайт реализован на Joomla 1.5.8+Virtuemart 1.1.2 .
Мне ребята с хостинга помогли разобраться. Вот решение: Вывод этих всплывающих сообщений реализован здесь: ..../administrator/components/com_virtuemart/classes/Log/display.php Функция printLog. В ней в числе прочего используется функция php ucfirst(), которая преобразует первый символ в верхний регистр. Работать с utf-8 эта функция не умеет. И, что интересно, аналога mb_ucfirst() в PHP для нее нет. Почему все корретно работает на локальной машине, сложно сказать. Возможно, в составе Joomla'ы есть свои библиотеки для работы с utf-8. Возможно, в зависимости от каких-то конкретных настроек как раз они подключаются и используются. Чтобы решить проблему на хостинге раз и навсегда поступаем так - заменяем строку: $message_tmp .= '<b>' . ucfirst($this->priorityToString($message['priority'])) . '</b>: ' ...на: $message_tmp .= '<b>' . $this->priorityToString($message['priority']) . '</b>: ' То есть, просто убрали использование ucfirst() - на функциональности это никак не сказалось. Зато все отображается корректно. Ну а первые заглавные буквы в языковых файлах в принципе везде уже стоят.