如何检查凭证在Prestashop中有效

时间:2017-07-11 13:40:51

标签: prestashop

我想在我的商店中创建一个CMS页面,客户可以在其中查看他的凭证。在/classes/CartRule.php中,我找到了checkValidity()函数。它看起来很好,因为这个函数返回“这个凭证被禁用” - 例如。如何使用这个功能?我想在用户通过他的凭证后添加输入字段,然后检查他。

亲切的问候

1 个答案:

答案 0 :(得分:0)

首先创建一个输入字段以输入优惠券。谷歌,你会发现很多结果。创建输入字段后,一旦您将优惠券提交给任何控制器,请使用以下代码检查优惠券的状态。

让我们说getStatusOfCoupon()是在提交优惠券后调用的功能。

public function getStatusOfCoupon($coupon){
    $id=$this->getIdByCode($coupon);
    $obj = new CartRuleCore($id);
    $context = Context::getContext();
    $response=$obj->checkValidity($context);
    d($response);// do whatever you want of this response.        
}

public static function getIdByCode($code)
{
    if (!Validate::isCleanHtml($code)) {
        return false;
    }
    return Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue('SELECT `id_cart_rule` FROM `'._DB_PREFIX_.'cart_rule` WHERE `code` = \''.pSQL($code).'\'');
}