Перейти к содержанию
devel

Обработка формы form (Choose Product)

Рекомендуемые сообщения

В админке есть возможность добавить в существующий заказ другие товары. Для этого есть поле ввода наименования товара, поле кол-ва и кнопка "Добавить". Возникли вопросы по этой форме:

1) Где обрабатываются вводимые данные

2) Как они передаются в контроллер

 

Есть необходимость ввести доп. поле ввода (ID товара), т.к. по некоторым товарам проще запомнить id, чем название. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

TPL файл  -->  /admin/view/template/sale/order_form.tpl

Контроллер  --> /admin/controller/sale/order.php

Рядом с полем ввода модели, в tpl файле есть скрытое поле product_id. используй его.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Придется только немного поработать над кодом. Сейчас скрипт в это поле вытягивает id введенного товара в поле Модель. Переделать наоборот не составит особого труда. Присмотрись внимательнее внизу tpl файла, там все есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
                <td class="left"><?php echo $entry_product_id; ?></td>
                <td class="left"><input type="text" name="product_id" value="" />
                  <input type="hidden" name="product_id" value="" /><?php echo $entry_or; ?></td>
                  
                <td class="left"><?php echo $entry_product; ?></td>
                <td class="left"><input type="text" name="product" value="" />
                  <input type="hidden" name="product_id" value="" /></td>

С самой формой все понятно. Скрипт внизу шаблона не осилил Вероятно, табы, и формы в каждом из табов тоже этим скриптом отрабатываются. Не нашел, какой кусок обрабатывает именно эту форму. Можете носом ткнуть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не нашел, какой кусок обрабатывает именно эту форму. Можете носом ткнуть?

catalog/controller/checkout/manual.php

Есть необходимость ввести доп. поле ввода (ID товара), т.к. по некоторым товарам проще запомнить id, чем название.

admin/controller/catalog/product.php
public function autocomplete() {
...
изменяй ее и вызываемый метод модели для обработки поиска по product_id

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разобрался с этим вопросом. Спасибо откликнувшимся. Правке подвергся только шаблон, т.к. public function autocomplete() содержит как name, так и product_id изначально, и поэтому в правке не нуждается. Решение получилось топорное: создал копию скрипта $('input[name=\'product\']').autocomplete() и поменял в ней некоторые значения. Хотелось сделать с помщью if-ов или switch|case определение, в какой input произведен ввод, но либо с синтаксисом намудрил, либо еще что-то. Такая конструкция выдала оба алерта:

if ($('input[name=\'product_id\']')) {alert(id);}
if ($('input[name=\'product\']')) {alert(name);}

По идее, если уловить, в какое поле произведен ввод, сама доработка получится не более 10 строк. А так пришлось весь скрипт autocomplit дублировать. Пока оставил так, оптимизирую, если ума хватит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.