OCMOD неправильно заменяет строку

Я хочу заменить строку с помощью OCMOD

Я использую приведенный ниже код для замены строки в файле админ / модель / продажа / customer.php

<file path="admin/model/sale/customer.php" error="log">
<operation>
<search><![CDATA[ $this->load->model('setting/store'); ]]></search>
<add position="before"><![CDATA[
if($this->isFront==true) {
$this->load->adminmodel('setting/store');
} else {
$this->load->model('setting/store');
}
]]></add>
</operation>
</file>

Строка поиска $this->load->model('setting/store'); повторяется три раза в файле.

Проблема в том, что когда я использую приведенный выше код, он неожиданно заменяет строку. Он добавляет код где-то рядом с функцией, что приводит к синтаксической ошибке в модификации. Пример после замены:

.....
.....
public function addReward($customer_id,
if($this->isFront==true) {
$this->load->adminmodel('setting/store');
} else {
$this->load->model('setting/store');
}
$this->load->model('setting/store');der_id = 0) {
$customer_info = $this->getCustomer($customer_id);

if ($customer_info) {
$this->db->query("INSERT INTO " . DB_PREFIX . "customer_reward SET customer_id = '" . (int)$customer_id . "', order_id = '" . (int)$order_id . "', points = '" . (int)$points . "', description = '" . $this->db->escape($description) . "', date_added = NOW()");

$this->load->language('mail/customer');
.....
.....

Какое решение заменить его правильно? Я не против, если решение заменить только в addReward функция. Кроме того, я в порядке с до, после, заменить и регулярное выражение.

Я предполагаю, что это может быть проблемой OCMOD.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]