Я сделал так: версия 1.5.3.1
Для нормального отображения после нажатия кнопки "Изменить"
в .../admin/view/template/sale/order_form.tpl
вот это:
<input type="hidden" name="order_total[<?php echo $total_row; ?>][text]" value="<?php echo $order_total['text']; ?>" />
поменял на это:
<input type="hidden" name="order_total[<?php echo $total_row; ?>][text]" value="<?php echo htmlentities($order_total['text'], ENT_QUOTES); ?>" />
Добавил, что бы при нажатии "Обновить" нормально отображалось.
вот это:
html += ' <td class="right" colspan="4"><input type="hidden" name="order_total[' + total_row + '][order_total_id]" value="" /><input type="hidden" name="order_total[' + total_row + '][code]" value="' + total['code'] + '" /><input type="hidden" name="order_total[' + total_row + '][title]" value="' + total['title'] + '" /><input type="hidden" name="order_total[' + total_row + '][text]" value="' + total['text'] + '" /><input type="hidden" name="order_total[' + total_row + '][value]" value="' + total['value'] + '" /><input type="hidden" name="order_total[' + total_row + '][sort_order]" value="' + total['sort_order'] + '" />' + total['title'] + ':</td>';
поменял на это:
html += ' <td class="right" colspan="4"><input type="hidden" name="order_total[' + total_row + '][order_total_id]" value="" /><input type="hidden" name="order_total[' + total_row + '][code]" value="' + total['code'] + '" /><input type="hidden" name="order_total[' + total_row + '][title]" value="' + total['title'] + '" /><input type="hidden" name="order_total[' + total_row + '][text]" value="' + htmlentities(total['text'], ENT_QUOTES) + '" /><input type="hidden" name="order_total[' + total_row + '][value]" value="' + total['value'] + '" /><input type="hidden" name="order_total[' + total_row + '][sort_order]" value="' + total['sort_order'] + '" />' + total['title'] + ':</td>';
А что бы в базу нормально записывался, взял кусок из новой версии.
в .../admin/controller/sale/order.php
вставил кусок, выделенный в комментарий, в public function insert() и в public function update()
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) {
//++++ Don't escape html tags in shipping methods ++++
if (isset($this->request->post['shipping_method'])) {
$this->request->post['shipping_method'] = html_entity_decode($this->request->post['shipping_method'], ENT_QUOTES, 'UTF-8');
}
if (isset($this->request->post['order_total'])) {
foreach ($this->request->post['order_total'] as $i=>$order_total) {
$this->request->post['order_total'][$i]['title'] = html_entity_decode($order_total['title'], ENT_QUOTES, 'UTF-8');
$this->request->post['order_total'][$i]['text'] = html_entity_decode($order_total['text'], ENT_QUOTES, 'UTF-8');
}
}
//---- Don't escape html tags in shipping methods ----
$this->model_sale_order->addOrder($this->request->post);
Заодно и методы доставки с кавычками будут нормально работать.