return $this->asJson(["error_id" => 3, "error" => "промокод уже использован"]);
}
- if (!$promoCode) {
+ if (!$promoCode || ($promoCode->base == Promocode::BASE_SINGLE_USE && $promoCode->parent && $promoCode->parent->active == Promocode::ACTIVE_OFF)) {
$promoCodeWeak = Promocode::find()->where(['code' => $result['code'], 'base' => [Promocode::BASE_SHARED, Promocode::BASE_SINGLE_USE]])->one();
return $this->asJson(["error_id" => 2, "error" => $promoCodeWeak ? "истёк срок действия промокода" : "промокод не известен"]);
}