Фикс Jevix'а

В Jevix'е есть небольшой баг. Тег <br>, заключенный в тег <code>, всеравно обрабатывается как перенос строки.

Например, как-то так (перед "\n" был <br>):
ob_start();
echo "SQL Error: $message
\n";
print_r($info);	
$msg=ob_get_contents();
ob_end_clean();
Хотя <br /> не обрабатывается:
ob_start();
echo "SQL Error: $message<br />\n";
print_r($info);	
$msg=ob_get_contents();
ob_end_clean();

Непорядок. Исправляем.

В файле \classes\lib\external\Jevix\jevix.class.php находим строчку:
$this->text = preg_replace('/<br\/?>(\r\n|\n\r|\n)?/ui', $this->nl, $text);
и заменяем ее на:
$this->text = preg_replace('/<br\/>(\r\n|\n\r|\n)?/ui', $this->nl, $text);


Готово. Теперь вроде работает как надо. Если заметите побочные эффекты, сообщайте =)

Далее хотел бы сообщить об обновлении Jevix'a на Google Code. Обновления r13 пока нет в SVN LS, но обязательно появится, так как автор фикса — rus.engine, который больше известен нам как Максим aka ort.
Советую обновиться.
Тем, кто не обновлялся с SVN (т.е. у кого стандартная сборка 0.3.1), обновляться нужно начиная с ревизии r11 включительно.


Товарищи, быть может у кого-то из вас есть лишние инвайты на хабр и лепру? Буду очень благодарен, если поделитесь. Заранее спасибо.

9 комментариев

avatar
Спасибо! Очень полезный баг-фигс.
avatar
Еще стоит заметить, что тем, кто обновлялся до ревизии r12 с Google Code, тем придется вносить изменения в файл \classes\modules\sys_text\Text.class.php чтобы заработали новые функции. Какие именно изменения вносить можно посмотреть в SVN.
avatar
Спасибо за фикс. Странно, что Максим не занес в SVN 13-ую ревизию. Да и этот фикс не помешало бы в SVN отразить.
avatar
Видимо откладывает это дело на последний момент =)
avatar
Еще бы с тегом <cut> решить проблему… в теге <code> он всеравно обрезает топик.
avatar
Да, неприятный баг… А за фикс большое спасибо! Баг с br очень раздражал…
avatar
Как будет время, гляну что там с катом.
avatar
Что-то я не совсем понял в чем баг? Подскажите, если не трудно :)
avatar
Извиняюсь, затупил. Все понял)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.