Странное поведение при рендеринге текстовых полей vtiger с уценкой: неверный отступ списков элементов
Я испытал очень странное поведение: я написал пользовательскую функцию для PDF-Maker, которая отправляет текст пользовательского поля через Markdown (я использовал Parsedown). (Идея состоит в том, что мы можем легко выполнить простое форматирование в текстовых полях в vtiger, где у нас нет продвинутого редактора.)
У меня есть следующий список в текстовом поле:
* a
* b
* c
Вывод Parsedown приводит к тому, что все элементы из второй строки будут отображаться как вложенный список:
<ul>
<li>a
<ul>
<li>b</li>
<li>c</li>
</ul></li>
</ul>
- б
- с
Конечно, если я вставлю текст directktly в parsedown, он будет отображен правильно:
<ul>
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
Что здесь происходит? Любой намек...?
1 ответ
После нескольких часов пробных попыток я заметил, что текст, который передается пользовательской функции, имеет дополнительный символ пробела в начале каждой строки, начиная со второй строки... текст, который получает parsedown, на самом деле:
* a
* b
* c
Итак, я добавил
$text = preg_replace("/^\s/m", "", $text);
и все работает нормально......