Перейти к содержимому


Правила форума

Внимание!!! Если не можете скачать, пожалуйста ознакомьтесь с условиями получения доступа с файлам форума. Правила форума


Купоны на скидку


Сообщений в теме: 85

#81 morfiy375

    Пользователь

  • Download User
  • PipPip
  • 14 сообщений
Репутация: 0
Начинающий

Отправлено 26 марта 2016 - 22:05

Просмотр сообщенияbadisoft (25 марта 2016 - 23:41) писал:

Видимо, что-то не так поправили. У меня стоят одновременно купоны и бонусы. Все работает.
Блин не знаю, пропала ошибка, но за то не работают бонусы. Не сохраняются, и верстка поплыла на странице оформления заказа

#82 zcz

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 103 сообщений
Репутация: 61
Продвинутый

Отправлено 19 октября 2016 - 01:19

Я не знаю, как оно "работает как часы" у других, но тоже столкнулся с проблемой дубликата купонов при создании + дубликата при выводе всех купонов (на главной странице модуля) + редирект при удалении купона не проходит... в общем, я бы хорошенько карму попортил автору (неймер, если читаешь - плакай).

итак. дубликаты купонов на главной странице модуля лечатся вставкой
$coupon_array = array();
перед
$q = db_query( "select * from `".DB_PRFX."discount_coupon` ORDER BY id" );

Проблема, когда админу нельзя воткнуть купон (а как его блин тестировать, если не на админе?):
меняем
$q = db_query( "select customerID, Login from ".CUSTOMERS_TABLE." where actions='' ORDER BY Login ASC" );
на
$q = db_query( "select customerID, Login from ".CUSTOMERS_TABLE." ORDER BY Login ASC" );
в двух местах (создание нового и редактирование)

Редирект на страницу со всеми купонами после удаления: вставить
redirect( "admin.php?dpt=custord&sub=discount_coupon" );
после
$q = db_query( "DELETE FROM `".DB_PRFX."discount_coupon` WHERE id=".$_GET['del_coupon'] );

Дублирование новых купонов лечиться так:
после строчки
db_query( "INSERT INTO `".DB_PRFX."discount_coupon` \r\n\t\t\t\t\t(number, owner, type, date_end, discount, ed)  values('".$number."', '".$owner."',  '".$_POST['type']."', '".$date_end."', '".$discount."', '".$ed."')" );
вставить злополучный редирект на страницу модуля
redirect( "admin.php?dpt=custord&sub=discount_coupon" );

На всякий случай (не тестировал, но лишним не будет) вставить редирект при обновлении купона - после
db_query( "UPDATE `".DB_PRFX."discount_coupon` \r\n\t\t\t\t\t\tSET number='".$number."',\r\n\t\t\t\t\t\towner='".$owner."', \r\n\t\t\t\t\t\ttype='".$_POST['type']."', \r\n\t\t\t\t\t\tdate_end='".$date_end."', \r\n\t\t\t\t\t\tdiscount='".$discount."',\r\n\t\t\t\t\t\ted='".$ed."' \r\n\t\t\t\t\t\tWHERE id=".$_POST['coupon_id'] );
поставить
redirect( "admin.php?dpt=custord&sub=discount_coupon&edit_coupon=".$_POST['coupon_id']);

Это все манипуляции с файлом core/includes/admin/sub/custord_discount_coupon.php

Протестировал - в остальном, вроде бы все о.к.
Единственное замечание к тому, что купон удаляется сразу после применения на 4ом шаге (а если человек его применил, а потом решил что-то еще докупить?), но такая задача передо мной не стоит, поэтому не ковырял (хотя теоретически, надо просто перенести часть функций на последний шаг - при выводе "спасибо за ваш заказ... ну и т.д.).

Надеюсь кому-то эти правки помогут.
Пишу, устанавливаю, натягиваю))) pix-art.ru

#83 Den

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 111 сообщений
Репутация: 0
Начинающий

Отправлено 07 декабря 2016 - 19:12

если ввести неправильный купон - страница перезагружается и никаких сообщений об ошибках не вылазит. Если после этого ввести правильный купон - он также не срабатывает. Помогает только, если оформить заказ через корзину заново с правильным купоном. Это только у меня так или у всех?

#84 badisoft

    Продвинутый пользователь

  • VIP
  • 5 006 сообщений
Репутация: 766
Мастер

Отправлено 07 декабря 2016 - 21:13

Думаю, что у всех. Посмотрев "по диагонали" вносимые модулем изменения (у меня для внутреннего употребления инструкция по установке "что-на-что-и-где-менять" давно написана) я не нашел там обработки ситуации "введен не существующий код купона". Т.е. эта ветка исполнения вообще никак не отработана и что при этом происходит - черт его знает. Увы, традиционная фишка модулей от namer-а.

PS. Проверил у себя на тестовом сайте (внутреннем, не из подписи, там когда-то был поставлен этот модуль) - страница просто перезагружается после ввода некорректного купона. Ввод корректного купона приводит к нормальному появлению скидки. Т.е. условно все хорошо, отсутствует только сообщение об ошибке с купоном.
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#85 Den

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 111 сообщений
Репутация: 0
Начинающий

Отправлено 08 декабря 2016 - 17:49

badisoft, спасибо, что проверили у себя.

Заметил, что после ввода любого купона он добавляется в параметры url как discount_coupon=код_купона. И когда введен неправильный в том числе.
После ввода правильного, его код в url меняется, но скидка не рассчитывается. А если из url удалить весь кусок discount_coupon=код_купона и ввести правильный код, то рассчитывает корректно.

Просмотр сообщенияzcz сказал:

Проблема, когда админу нельзя воткнуть купон (а как его блин тестировать, если не на админе?):
А у меня работал изначально, без этой модификации. Причем хоть первый вариант строки использовать хоть второй.

Мистика, не иначе :)

#86 zcz

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 103 сообщений
Репутация: 61
Продвинутый

Отправлено 08 декабря 2016 - 18:00

Как, если строка идет where actions="" т.е. actions пустое значение. а у админа оно не может быть пустым
Пишу, устанавливаю, натягиваю))) pix-art.ru