Новости Joomla

Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0

Метод registerListeners() в CMSPlugin в плагинах  планируется удалить в Joomla 7.0

👩‍💻 Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0.Этот метод регистрирует устаревшие слушатели событий в диспетчере, имитируя работу плагинов Joomla! 3.x и ниже для Joomla 4+. По умолчанию этот метод ищет все общедоступные методы, название которых начинается с on. Он регистрирует лямбда-функции (замыкания), которые пытаются преобразовать аргументы отправленного события в аргументы вызова метода и вызвать ваш метод on<Что-то>. Результат передаётся обратно событию в его аргумент result.Теперь этот слой совместимости с устаревшей Joomla 3 помечен к удалению в Joomla 7.0, которая должна выйти осенью 2027 года. Это означает, что те уникальные расширения от Joomla 2.5 / Joomla 3, которые ещё работали на Joomla 4-6 скорее всего окончательно перестанут работать на Joomla 7. Предполагается, что активные разработчики планомерно и постепенно избавляются от технического долга и обновляют свои расширения. @joomlafeed#joomla #разработка #php

0 Пользователей и 1 Гость просматривают эту тему.
  • 2 Ответов
  • 3755 Просмотров
*

Solser

  • Захожу иногда
  • 64
  • 16 / 1
В системных всплывающих сообщениях Виртуемарта теряются первые две буквы. Вместо них в IE знак вопроса, а в других браузерах нечитаемый символ. (Например, всплывает сообщение - вместо :" Информация: товар добавлен в корзину" пишет "?формация: товар добавлен в корзину). Где искать ошибку? Есть ощущение , что поджирает javascript типа mootools. Как исправить? Кстати, на localhost работает все корректно.
Сайт реализован на Joomla 1.5.8+Virtuemart 1.1.2 .
*

Solser

  • Захожу иногда
  • 64
  • 16 / 1
Вывод этих всплывающих сообщений реализован здесь:

administrator/components/com_virtuemart/classes/Log/display.php

  Функция printLog. В ней в числе прочего используется функция php ucfirst(), которая
преобразует первый символ в верхний регистр. Работать с utf-8 эта функция не
умеет. И, что интересно, аналога mb_ucfirst() в PHP для нее нет.

Чтобы решить проблему, поступил так - заменил строку:

$message_tmp .= '<b>' .
ucfirst($this->priorityToString($message['priority'])) . '</b>: '

  ...на:

$message_tmp .= '<b>' . $this->priorityToString($message['priority']) .
'</b>: '

  То есть, просто убрали использование ucfirst() - на функциональности это
никак не сказалось.
*

mariya823

  • Осваиваюсь на форуме
  • 22
  • 2 / 0
Спасибо, помогло! +1
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Отключение всплывающих окон

Автор 8gksp

Ответов: 2
Просмотров: 3324
Последний ответ 27.04.2022, 13:28:22
от 8gksp
Прозрачные буквы при заполнении форм

Автор Аля

Ответов: 8
Просмотров: 2012
Последний ответ 16.08.2012, 09:19:08
от Аля
Не уведомляет о сообщениях

Автор NlCK

Ответов: 3
Просмотров: 1601
Последний ответ 12.08.2011, 07:06:14
от NlCK
Пропадают последние буквы

Автор maxo127

Ответов: 4
Просмотров: 2018
Последний ответ 03.05.2011, 01:30:17
от maxo127
[Решено] Неправильные буквы

Автор NUSA

Ответов: 4
Просмотров: 1535
Последний ответ 25.10.2010, 12:38:37
от NUSA