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

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

Добрый день,

 

У меня вопрос по всему известному модулю "Быстрый заказ". Настала необходимость, сделать такой же модуль по функционалу, но с другой формой отправки и только для карточки товара.

Конкретно "Быстрый заказ" от https://github.com/WhiskeyMan-Tau/fastorder.ocmod

Закопипастил все файлы и переименовал, дописал в controller/product/product.php 

$data['feedback'] = $this->load->controller('product/feedback', ['price'=>$data['price'],'product_name'=>$data['heading_title'], 'product_id'=>$data['product_id']]); 

И добавил в footer.tpl

<script>
  function showForm1(data){
    $.ajax({
      url: 'index.php?route=product/feedback/getForm',
      type: 'post',
      data: {product_name: data['product_name'], price: data['price'] ,product_id: data['product_id']},

      beforeSend: function() {
      },
      complete: function() {
      },
      success: function(result) {
        $('#feedback-form-container'+data['product_id']).html(result);
      },
      error: function(xhr, ajaxOptions, thrownError) {
        alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
      }
    });
};
</script>

Вот, что у меня в итоге получилось

fastorder.jpg.56b0332bb89942ec1bc2f3db29e174d2.jpg

Если присмотреться, но у меня форма раздвоилась (видно на скриншоте небольшой выступ с правой стороны). После того как я кликаю по этому выступу появляется моя форма. 

fastorder_1.jpg.c0ffbd8b6a05ac5768385cdd54cccdd5.jpg

В карточке товара есть кнопка "Быстрый заказ" и кнопка "Нашли дешевле".

При нажатии на кнопку, что я добавил ("Нашли дешевле") появляются раздвоенная форма, а при нажатии на "Быстрый заказ", ничего не происходит.

Я думаю проблема с js, думаю я вызываю какой нибудь один и тот же метод, который я забыл поменять.

Кто-то, сможешь объяснить, где я мог накосяччить?

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


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

Смотрите что возвращает вам ajax через console

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


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

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

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

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

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

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

Войти

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

Войти

  • Похожий контент

    • От octemplates
      1 199.00 руб
      Скачать/Купить дополнение


      Оформление заказа в один шаг (адаптивность на bootstrap)
      Представляем вашему вниманию наш модуль быстрого оформления заказа.
      Стандартное и пошаговое оформление заказа не очень удобно тем, что пользователям лень заполнять множество полей при пошаговой регистрации и этим самым владелец магазина терпит убытки из-за заниженной конверсии.
      Наш модуль решит эту проблему раз и навсегда.
      Установка модуля займет всего пару минут (работает на ocmod)
      Основные преимущества:
      - Настройка полей пользователя
      - Настройка цветовой гаммы модуля (кнопки, шрифты, заголовки, фоны)
      - Настройка отображения блоков
      - Поддержка зарегистрированных пользователей (автоподставление данных авторизированного клиента)
      - Адаптивность с bootstrap (модуль успешно устанавливается на любой шаблон где есть bootstrap)
      - Поддержка корзины и системных настроек (оплата, доставка)
      - Возможность отключить отображение (оплаты и доставки)
      - Возможность отображать блоки в одну колонку
      - Возможность выбора страны по умолчанию в блоке пользователя
      - Правильное отображение на всех мобильных устройствах
      - Модуль заменяет стандартные ссылки оформления заказа на собственные
      - Модуль поддерживает нестандартные модули оплаты и доставки (если возникают проблемы, просьба создать тикет в службе поддержки)
      Смотреть демо
      Демо админки: войти
      логин и пароль: demo
      Модуль работает на opencart до 2.1.0.2
      Добавил octemplates Добавлено 29.08.2015 Категория Покупки, оформление заказа, корзина Системные требования Сайт разработчика Старая цена Метод активации Ioncube Loader OpenCart ocStore OpenCart.Pro, ocShop  
    • От octemplates
      Представляем вашему вниманию наш модуль быстрого оформления заказа.
      Стандартное и пошаговое оформление заказа не очень удобно тем, что пользователям лень заполнять множество полей при пошаговой регистрации и этим самым владелец магазина терпит убытки из-за заниженной конверсии.
      Наш модуль решит эту проблему раз и навсегда.
      Установка модуля займет всего пару минут (работает на ocmod)
      Основные преимущества:
      - Настройка полей пользователя
      - Настройка цветовой гаммы модуля (кнопки, шрифты, заголовки, фоны)
      - Настройка отображения блоков
      - Поддержка зарегистрированных пользователей (автоподставление данных авторизированного клиента)
      - Адаптивность с bootstrap (модуль успешно устанавливается на любой шаблон где есть bootstrap)
      - Поддержка корзины и системных настроек (оплата, доставка)
      - Возможность отключить отображение (оплаты и доставки)
      - Возможность отображать блоки в одну колонку
      - Возможность выбора страны по умолчанию в блоке пользователя
      - Правильное отображение на всех мобильных устройствах
      - Модуль заменяет стандартные ссылки оформления заказа на собственные
      - Модуль поддерживает нестандартные модули оплаты и доставки (если возникают проблемы, просьба создать тикет в службе поддержки)
      Смотреть демо
      Демо админки: войти
      логин и пароль: demo
      Модуль работает на opencart до 2.1.0.2
    • От RGB
      Скачать/Купить дополнение


      Простой быстрый заказ (бесплатно, vqmod)






      Описание старой версии
      Данный модуль предназначен для добавления возможности быстрого заказа во всплывающем окне (используется стандартный для ОС colorbox) со страницы товара. Реализация максимально простая, весь механизм модуля - это получение от посетителя его имени и телефона с дальнейшей отправкой этих данных к вам на указанную почту вместе с названием товара и его ценой (данные берутся не из корзины, а напрямую со страницы, на которой была нажата кнопка быстрого заказа). На почту магазина отправляется письмо такого типа:
      Никакие способы оплаты или доставки не поддерживаются, иначе это не будет "быстрый" заказ. Товар не вычитается со склада, короче все упрощено до элементарной отправки уведомления на почту магазина о новом заказе.
      Я нашел черновое решение с похожим модулем пару лет назад на форумах то ли джумлы, то ли престашоп, после чего немножко доработал его под ОС. Добавлять в него какой-то продвинутый функционал я не буду, поскольку программистом или разработчиком меня можно назвать только с очень большой натяжкой :) Но если у вас есть идеи, которые легко реализовать, чтобы улучшить этот модуль — я всеми руками за! Также с радостью исправлю найденные ошибки, которые возможно здесь есть, хотя в этом виде модуль работает на живом магазине уже 2-й год и никаких проблем не встречалось (конверсия кстати выросла раза в 2).
      Установка (с vqmod)
      1) Скопировать все файлы из папки upload в корень вашего магазина
      2) Откройте файл \catalog\view\javascript\fast_order.js и укажите путь к скрипту (10-я строка), который будет отправлять письма с быстрым заказом. По умолчанию этот файл (fast_order.php) находится в корне магазина и я указал ему адрес http://mysite.com/fast_order.php, вам достаточно поменять mysite.com на адрес своего магазина (если тестируете локально, пишите полный адрес типа такого http://localhost/mys.../fast_order.php, а если вы параноик, то спрячьте файл вглубь магазина и соответственно поменяйте путь к нему).
      3) Теперь откройте сам файл fast_order.php и укажите там почтовый адрес вашего магазина и адрес, с которого будут отправляться быстрые заказы к вам на почту магазина (строки 10 и 11, можно указать одинаковый главный адрес магазина):
      4) Если у вас не дефолтная тема, не забудьте что стили к дополнению лежат по адресу "catalog/view/theme/default/stylesheet/fast_order.css"
      Все готово!
      В админке модуль не появится и никаких настроек у него нет, поэтому указанных выше действий достаточно. Никакие файлы не перезаписываются, а изменения в файлах, описанные в vqmod-е, легко добавить руками, чтобы не использовать vqmod вообще. Остановлюсь на этом подробнее.
      Установка (без vqmod)
      Если у вас не установлен vqmod, то кроме 4-х главных шагов установки, указанных выше, вручную внесите небольшие изменения в файлы:
      1) В файле catalog/view/theme/<ваша_тема>/template/common/header.tpl:
      Найти строку:
      <script type="text/javascript" src="catalog/view/javascript/common.js"></script>
      Дописать под ней (для подключения скрипта обработчика):
      <script type="text/javascript" src="catalog/view/javascript/fast_order.js"></script>
      Найти еще одну строку:
      <link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/stylesheet.css" />
      Дописать под ней (для подключения файла стилей формы быстрого заказа):
      <link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/fast_order.css" />
      2) Теперь нужно внести изменения в файл catalog/view/theme/<ваша_тема>/template/product/product.tpl:
      Найти строку:
      <input type="button" value="<?php echo $button_cart; ?>" id="button-cart" class="button" />
      Дописать под ней (для вывода на странице товара кнопки Быстрый заказ и формы быстрого заказа):
      <a id="fast_order" href="#fast_order_form" class="button" />Быстрый заказ</a><div style="display:none"> <div id="fast_order_form"> <input id="product_name" type="hidden" value="<?php echo $heading_title; ?>"> <input id="product_price" type="hidden" value="<?php echo ($special ? $special : $price); ?>"> <div class="fast_order_center"><?php echo $heading_title; ?> — ваш заказ</div> <div class="fast_order_left"> <p>Имя:</p> <p>Телефон:</p> <p>Комментарий:</p> </div> <div class="fast_order_right"> <p><input type="text" id="customer_name"/></p> <p><input type="text" id="customer_phone"/></p> <p><input type="text" id="customer_message"/></p> </div> <div class="fast_order_center"> <p id="fast_order_result">Пожалуйста, укажите ваше имя и телефон, чтобы мы могли связаться с вами</p> <button class="fast_order_button"><span>Оформить заказ</span></button> </div> </div> </div>
      Вот и все изменения!
      Мод тестировался на версии 1.5.1.3, 1.5.2.1 и 1.5.4.1, должен работать и на более старых/новых, т.к. по сути единственные причины, по которым модуль не сможет работать - это отсутствие в файлах, которые трогает vqmod, нужных ему строчек.
      Вместе с оригинальным модулем доступна версия от Tom'a для 1551 (в списке файлов модуля: preorder-fastorder-1551.zip), скрещенная с модулем предзаказа, где покупатель при нулевом количестве товара не видит кнопку Купить, вместо нее будет написано Предзаказ, демо тут: http://tom.ip64.net/index.php?route=product/product&path=20&product_id=43
      Обновленный xml-файл для этой версии можно скачать по ссылке
      В архиве отдельная версия модуля для 1.5.1.3, поскольку начиная с 1.5.2.1 в ОС используется colorbox вместо fancybox, отличия описаны в теме.
      Если у вас не появляется кнопка - одна из возможных причин описана в теме.
      Решение для учета количества товаров и выбранных опций от excalibur в теме модуля.
      Версия для 1.5.5.1 с мультиязычностью от sv2109. (если она не работает - одна из возможных причин в том, что вы не поменяли путь к файлу fast_order.php, который в этой версии нужно менять в vqmod-файле fast_order.xml)
      Решение для того, чтобы пользователь не мог дважды нажать кнопку оформления заказа от bezzubtsev в теме модуля.
      Внимание! Если вы используете SMTP у себя для отправки писем, то модуль может работать некорректно (или вообще не работать)
      Добавил RGB Добавлено 14.02.2013 Категория Покупки, оформление заказа, корзина  
    • От RGB
      Описание старой версии
      Данный модуль предназначен для добавления возможности быстрого заказа во всплывающем окне (используется стандартный для ОС colorbox) со страницы товара. Реализация максимально простая, весь механизм модуля - это получение от посетителя его имени и телефона с дальнейшей отправкой этих данных к вам на указанную почту вместе с названием товара и его ценой (данные берутся не из корзины, а напрямую со страницы, на которой была нажата кнопка быстрого заказа). На почту магазина отправляется письмо такого типа:
      Никакие способы оплаты или доставки не поддерживаются, иначе это не будет "быстрый" заказ. Товар не вычитается со склада, короче все упрощено до элементарной отправки уведомления на почту магазина о новом заказе.
      Я нашел черновое решение с похожим модулем пару лет назад на форумах то ли джумлы, то ли престашоп, после чего немножко доработал его под ОС. Добавлять в него какой-то продвинутый функционал я не буду, поскольку программистом или разработчиком меня можно назвать только с очень большой натяжкой :) Но если у вас есть идеи, которые легко реализовать, чтобы улучшить этот модуль — я всеми руками за! Также с радостью исправлю найденные ошибки, которые возможно здесь есть, хотя в этом виде модуль работает на живом магазине уже 2-й год и никаких проблем не встречалось (конверсия кстати выросла раза в 2).
      Установка (с vqmod)
      1) Скопировать все файлы из папки upload в корень вашего магазина
      2) Откройте файл \catalog\view\javascript\fast_order.js и укажите путь к скрипту (10-я строка), который будет отправлять письма с быстрым заказом. По умолчанию этот файл (fast_order.php) находится в корне магазина и я указал ему адрес http://mysite.com/fast_order.php, вам достаточно поменять mysite.com на адрес своего магазина (если тестируете локально, пишите полный адрес типа такого http://localhost/mys.../fast_order.php, а если вы параноик, то спрячьте файл вглубь магазина и соответственно поменяйте путь к нему).
      3) Теперь откройте сам файл fast_order.php и укажите там почтовый адрес вашего магазина и адрес, с которого будут отправляться быстрые заказы к вам на почту магазина (строки 10 и 11, можно указать одинаковый главный адрес магазина):
      4) Если у вас не дефолтная тема, не забудьте что стили к дополнению лежат по адресу "catalog/view/theme/default/stylesheet/fast_order.css"
      Все готово!
      В админке модуль не появится и никаких настроек у него нет, поэтому указанных выше действий достаточно. Никакие файлы не перезаписываются, а изменения в файлах, описанные в vqmod-е, легко добавить руками, чтобы не использовать vqmod вообще. Остановлюсь на этом подробнее.
      Установка (без vqmod)
      Если у вас не установлен vqmod, то кроме 4-х главных шагов установки, указанных выше, вручную внесите небольшие изменения в файлы:
      1) В файле catalog/view/theme/<ваша_тема>/template/common/header.tpl:
      Найти строку:
      <script type="text/javascript" src="catalog/view/javascript/common.js"></script>
      Дописать под ней (для подключения скрипта обработчика):
      <script type="text/javascript" src="catalog/view/javascript/fast_order.js"></script>
      Найти еще одну строку:
      <link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/stylesheet.css" />
      Дописать под ней (для подключения файла стилей формы быстрого заказа):
      <link rel="stylesheet" type="text/css" href="catalog/view/theme/default/stylesheet/fast_order.css" />
      2) Теперь нужно внести изменения в файл catalog/view/theme/<ваша_тема>/template/product/product.tpl:
      Найти строку:
      <input type="button" value="<?php echo $button_cart; ?>" id="button-cart" class="button" />
      Дописать под ней (для вывода на странице товара кнопки Быстрый заказ и формы быстрого заказа):
      <a id="fast_order" href="#fast_order_form" class="button" />Быстрый заказ</a><div style="display:none"> <div id="fast_order_form"> <input id="product_name" type="hidden" value="<?php echo $heading_title; ?>"> <input id="product_price" type="hidden" value="<?php echo ($special ? $special : $price); ?>"> <div class="fast_order_center"><?php echo $heading_title; ?> — ваш заказ</div> <div class="fast_order_left"> <p>Имя:</p> <p>Телефон:</p> <p>Комментарий:</p> </div> <div class="fast_order_right"> <p><input type="text" id="customer_name"/></p> <p><input type="text" id="customer_phone"/></p> <p><input type="text" id="customer_message"/></p> </div> <div class="fast_order_center"> <p id="fast_order_result">Пожалуйста, укажите ваше имя и телефон, чтобы мы могли связаться с вами</p> <button class="fast_order_button"><span>Оформить заказ</span></button> </div> </div> </div>
      Вот и все изменения!
      Мод тестировался на версии 1.5.1.3, 1.5.2.1 и 1.5.4.1, должен работать и на более старых/новых, т.к. по сути единственные причины, по которым модуль не сможет работать - это отсутствие в файлах, которые трогает vqmod, нужных ему строчек.
      Вместе с оригинальным модулем доступна версия от Tom'a для 1551 (в списке файлов модуля: preorder-fastorder-1551.zip), скрещенная с модулем предзаказа, где покупатель при нулевом количестве товара не видит кнопку Купить, вместо нее будет написано Предзаказ, демо тут: http://tom.ip64.net/index.php?route=product/product&path=20&product_id=43
      Обновленный xml-файл для этой версии можно скачать по ссылке
      В архиве отдельная версия модуля для 1.5.1.3, поскольку начиная с 1.5.2.1 в ОС используется colorbox вместо fancybox, отличия описаны в теме.
      Если у вас не появляется кнопка - одна из возможных причин описана в теме.
      Решение для учета количества товаров и выбранных опций от excalibur в теме модуля.
      Версия для 1.5.5.1 с мультиязычностью от sv2109. (если она не работает - одна из возможных причин в том, что вы не поменяли путь к файлу fast_order.php, который в этой версии нужно менять в vqmod-файле fast_order.xml)
      Решение для того, чтобы пользователь не мог дважды нажать кнопку оформления заказа от bezzubtsev в теме модуля.
      Внимание! Если вы используете SMTP у себя для отправки писем, то модуль может работать некорректно (или вообще не работать)
  • Последние посетители   0 пользователей онлайн

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

×

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

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