<?php /** * This file contains package_quiqqer_coupons_ajax_delete */ use QUI\ERP\Coupons\Handler; /** * Redeem a CouponCode * * @param int $id - CouponCode ID * @return bool - success */ QUI::$Ajax->registerFunction( 'package_quiqqer_coupons_ajax_frontend_redeem', function ($code, $orderHash) { try { Handler::getCouponCodeByCode($code); } catch (QUI\ERP\Coupons\CouponCodeException $Exception) { QUI\System\Log::writeDebugException($Exception); QUI::getMessagesHandler()->addError($Exception->getMessage()); return false; } catch (\Exception $Exception) { QUI\System\Log::writeException($Exception); QUI::getMessagesHandler()->addError( QUI::getLocale()->get( 'quiqqer/coupons', 'message.ajax.general_error' ) ); return false; } $Order = QUI\ERP\Order\Handler::getInstance()->getOrderByHash($orderHash); $coupons = $Order->getDataEntry('quiqqer-coupons'); $coupons[] = $code; $coupons = array_unique($coupons); $Order->setData('quiqqer-coupons', $coupons); $Order->update(); return true; }, ['code', 'orderHash'] );