Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Поиск заказа по товару в списке заказов


Recommended Posts

Здравствуйте. Помогите разобраться с модификатором. Пытаюсь адаптировать его с 2.3 на 3х. Само поле появилось в фильтре заказов но не фильтрует, обновляется страница и все. Делаю все на чистом OcStore где нету вообще ничего кроме то что с коробки.

Спасибо.

 

Скрытый текст
<?xml version="1.0" encoding="UTF-8"?>
<modification>
   <name>Filter Name</name>
   <code>filter_wfm</code>
   <version>1.0</version>
   <author></author>
   <link />
   <file path="admin/view/template/sale/order_list.twig">
      <operation>
         <search index="0"><![CDATA[<div class="form-group">]]></search>
         <add position="before"><![CDATA[<div class="form-group">
                <label class="control-label" for="input-filter-name">Наименование товара</label>
                <input type="text" name="filter_name" value="{{ filter_name }}" placeholder="Наименование товара" id="input-filter-name" class="form-control" />
            </div>]]></add>
      </operation>
      <operation>
         <search><![CDATA[var filter_order_id = $('input[name=\'filter_order_id\']').val();]]></search>
         <add position="after"><![CDATA[var filter_name = $('input[name=\'filter_name\']').val();
if (filter_name) {
    url += '&filter_name=' + encodeURIComponent(filter_name);
}]]></add>
      </operation>
   </file>
   <file path="admin/controller/sale/order.php">
      <operation>
         <search><![CDATA[protected function getList() {]]></search>
         <add position="after"><![CDATA[if (isset($this->request->get['filter_name'])) {
    $filter_name = $this->request->get['filter_name'];
} else {
    $filter_name = null;
}]]></add>
      </operation>
      <operation>
         <search><![CDATA['filter_order_id'      => $filter_order_id,]]></search>
         <add position="before"><![CDATA['filter_name'          => $filter_name,]]></add>
      </operation>
      <operation>
         <search index="3"><![CDATA[$url = '';]]></search>
         <add position="after"><![CDATA[if (isset($this->request->get['filter_name'])) {
    $url .= '&filter_name=' . urlencode(html_entity_decode($this->request->get['filter_name'], ENT_QUOTES, 'UTF-8'));
}]]></add>
      </operation>
      <operation>
         <search><![CDATA[$data['filter_order_id'] = $filter_order_id;]]></search>
         <add position="before"><![CDATA[$data['filter_name'] = $filter_name;]]></add>
      </operation>
   </file>
   <file path="admin/model/sale/order.php">
      <operation>
         <search index="0"><![CDATA[if (!empty($data['filter_order_id'])) {]]></search>
         <add position="before"><![CDATA[if (!empty($data['filter_name'])) {
            $sql .= " AND o.order_id IN (SELECT " . DB_PREFIX . "order_product.order_id FROM " . DB_PREFIX . "order_product WHERE " . DB_PREFIX . "order_product.name LIKE '%" . $this->db->escape($data['filter_name']) . "%')";
        }]]></add>
      </operation>
      <operation>
         <search index="1"><![CDATA[if (!empty($data['filter_order_id'])) {]]></search>
         <add position="before"><![CDATA[if (!empty($data['filter_name'])) {
            $sql .= " AND order_id IN (SELECT " . DB_PREFIX . "order_product.order_id FROM " . DB_PREFIX . "order_product WHERE " . DB_PREFIX . "order_product.name LIKE '%" . $this->db->escape($data['filter_name']) . "%')";
        }]]></add>
      </operation>
   </file>
</modification>

 

 

Змінено користувачем Malhaz
Надіслати
Поділитися на інших сайтах


17.03.2023 в 14:24, spectre сказал:

Проверьте каждую операцию в модификаторе

Проверил уже 100раз, не могу понять в чем причина, именно по этому написал пост

Надіслати
Поділитися на інших сайтах


Скрытый текст
<?xml version="1.0" encoding="UTF-8"?>
<modification>
   <name>Filter Name</name>
   <code>Filter Name</code>
   <version>1.0</version>
   <author>Filter Name</author>
   <link>Filter Name</link>
   <file path="admin/view/template/sale/order_list.twig">
      <operation>
         <search index="0"><![CDATA[<div class="form-group">]]></search>
         <add position="before"><![CDATA[<div class="form-group">
                <label class="control-label" for="input-filter-name">Наименование товара</label>
                <input type="text" name="filter_name" value="{{ filter_name }}" placeholder="Наименование товара" id="input-filter-name" class="form-control" />
            </div>]]></add>
      </operation>
      <operation>
         <search><![CDATA[var filter_order_id = $('input[name=\'filter_order_id\']').val();]]></search>
         <add position="after"><![CDATA[var filter_name = $('input[name=\'filter_name\']').val();
if (filter_name) {
    url += '&filter_name=' + encodeURIComponent(filter_name);
}]]></add>
      </operation>
   </file>
   <file path="admin/controller/sale/order.php">
      <operation>
         <search><![CDATA[protected function getList() {]]></search>
         <add position="after"><![CDATA[if (isset($this->request->get['filter_name'])) {
    $filter_name = $this->request->get['filter_name'];
} else {
    $filter_name = null;
}]]></add>
      </operation>
      <operation>
         <search index="0"><![CDATA[$filter_data = array(]]></search>
         <add position="after"><![CDATA['filter_name'          => $filter_name,]]></add>
      </operation>
      <operation>
         <search index="3"><![CDATA[$url = '';]]></search>
         <add position="after"><![CDATA[if (isset($this->request->get['filter_name'])) {
    $url .= '&filter_name=' . urlencode(html_entity_decode($this->request->get['filter_name'], ENT_QUOTES, 'UTF-8'));
}]]></add>
      </operation>
      <operation>
         <search><![CDATA[$data['filter_order_id'] = $filter_order_id;]]></search>
         <add position="before"><![CDATA[$data['filter_name'] = $filter_name;]]></add>
      </operation>
   </file>
   <file path="admin/model/sale/order.php">
      <operation>
         <search index="0"><![CDATA[if (!empty($data['filter_order_id'])) {]]></search>
         <add position="before"><![CDATA[if (!empty($data['filter_name'])) {
            $sql .= " AND o.order_id IN (SELECT " . DB_PREFIX . "order_product.order_id FROM " . DB_PREFIX . "order_product WHERE " . DB_PREFIX . "order_product.name LIKE '%" . $this->db->escape($data['filter_name']) . "%')";
        }]]></add>
      </operation>
      <operation>
         <search index="1"><![CDATA[if (!empty($data['filter_order_id'])) {]]></search>
         <add position="before"><![CDATA[if (!empty($data['filter_name'])) {
            $sql .= " AND order_id IN (SELECT " . DB_PREFIX . "order_product.order_id FROM " . DB_PREFIX . "order_product WHERE " . DB_PREFIX . "order_product.name LIKE '%" . $this->db->escape($data['filter_name']) . "%')";
        }]]></add>
      </operation>
   </file>
</modification>

 

 

  • +1 1
Надіслати
Поділитися на інших сайтах

17.03.2023 в 14:52, Tom сказал:
<?xml version="1.0" encoding="UTF-8"?>
<modification>
   <name>Filter Name</name>
   <code>Filter Name</code>
   <version>1.0</version>
   <author>Filter Name</author>
   <link>Filter Name</link>
   <file path="admin/view/template/sale/order_list.twig">
      <operation>
         <search index="0"><![CDATA[<div class="form-group">]]></search>
         <add position="before"><![CDATA[<div class="form-group">
                <label class="control-label" for="input-filter-name">Наименование товара</label>
                <input type="text" name="filter_name" value="{{ filter_name }}" placeholder="Наименование товара" id="input-filter-name" class="form-control" />
            </div>]]></add>
      </operation>
      <operation>
         <search><![CDATA[var filter_order_id = $('input[name=\'filter_order_id\']').val();]]></search>
         <add position="after"><![CDATA[var filter_name = $('input[name=\'filter_name\']').val();
if (filter_name) {
    url += '&filter_name=' + encodeURIComponent(filter_name);
}]]></add>
      </operation>
   </file>
   <file path="admin/controller/sale/order.php">
      <operation>
         <search><![CDATA[protected function getList() {]]></search>
         <add position="after"><![CDATA[if (isset($this->request->get['filter_name'])) {
    $filter_name = $this->request->get['filter_name'];
} else {
    $filter_name = null;
}]]></add>
      </operation>
      <operation>
         <search><![CDATA['filter_order_id'        => $filter_order_id,]]></search>
         <add position="before"><![CDATA['filter_name'          => $filter_name,]]></add>
      </operation>
      <operation>
         <search index="3"><![CDATA[$url = '';]]></search>
         <add position="after"><![CDATA[if (isset($this->request->get['filter_name'])) {
    $url .= '&filter_name=' . urlencode(html_entity_decode($this->request->get['filter_name'], ENT_QUOTES, 'UTF-8'));
}]]></add>
      </operation>
      <operation>
         <search><![CDATA[$data['filter_order_id'] = $filter_order_id;]]></search>
         <add position="before"><![CDATA[$data['filter_name'] = $filter_name;]]></add>
      </operation>
   </file>
   <file path="admin/model/sale/order.php">
      <operation>
         <search index="0"><![CDATA[if (!empty($data['filter_order_id'])) {]]></search>
         <add position="before"><![CDATA[if (!empty($data['filter_name'])) {
            $sql .= " AND o.order_id IN (SELECT " . DB_PREFIX . "order_product.order_id FROM " . DB_PREFIX . "order_product WHERE " . DB_PREFIX . "order_product.name LIKE '%" . $this->db->escape($data['filter_name']) . "%')";
        }]]></add>
      </operation>
      <operation>
         <search index="1"><![CDATA[if (!empty($data['filter_order_id'])) {]]></search>
         <add position="before"><![CDATA[if (!empty($data['filter_name'])) {
            $sql .= " AND order_id IN (SELECT " . DB_PREFIX . "order_product.order_id FROM " . DB_PREFIX . "order_product WHERE " . DB_PREFIX . "order_product.name LIKE '%" . $this->db->escape($data['filter_name']) . "%')";
        }]]></add>
      </operation>
   </file>
</modification>

 

 

Капец, даже представить не смог что и за 2 пробела такое. Спасибо Том!
П.С. Кому нужно берите, модификатор рабочий.

  • +1 1
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.