Skip to content
Code-Schnipsel Gruppen Projekte
Commit 6ddd8ba0 erstellt von Patrick Müller's avatar Patrick Müller
Dateien durchsuchen

feat: sanitizeCode

Übergeordneter c725d39f
No related branches found
No related tags found
Keine zugehörigen Merge Requests gefunden
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
'package_quiqqer_coupons_ajax_frontend_redeem', 'package_quiqqer_coupons_ajax_frontend_redeem',
function ($code, $orderHash) { function ($code, $orderHash) {
try { try {
$code = Handler::sanitizeCode($code);
$CouponCode = Handler::getCouponCodeByCode($code); $CouponCode = Handler::getCouponCodeByCode($code);
$CouponCode->checkRedemption(QUI::getUserBySession()); $CouponCode->checkRedemption(QUI::getUserBySession());
} catch (QUI\ERP\Coupons\CouponCodeException $Exception) { } catch (QUI\ERP\Coupons\CouponCodeException $Exception) {
......
...@@ -130,7 +130,7 @@ public static function createCouponCode($discountIds, $settings = []) ...@@ -130,7 +130,7 @@ public static function createCouponCode($discountIds, $settings = [])
]); ]);
} }
$code = $settings['code']; $code = self::sanitizeCode($settings['code']);
} else { } else {
$code = CodeGenerator::generate(); $code = CodeGenerator::generate();
} }
...@@ -221,7 +221,7 @@ public static function editCouponCode($id, $discountIds, $settings = []) ...@@ -221,7 +221,7 @@ public static function editCouponCode($id, $discountIds, $settings = [])
]); ]);
} }
$code = $settings['code']; $code = self::sanitizeCode($settings['code']);
} else { } else {
$code = CodeGenerator::generate(); $code = CodeGenerator::generate();
} }
...@@ -492,6 +492,17 @@ public static function deleteRedeemedCouponCodes($days = null) ...@@ -492,6 +492,17 @@ public static function deleteRedeemedCouponCodes($days = null)
); );
} }
/**
* Sanitize coupon code and allow only certain characters
*
* @param string $code
* @return string
*/
public static function sanitizeCode($code)
{
return preg_replace('#[^A-Za-z0-9\.\-_\*&$% ]#i', '', $code);
}
/** /**
* Get CouponCode table * Get CouponCode table
* *
......
0% oder .
You are about to add 0 people to the discussion. Proceed with caution.
Bearbeitung dieser Nachricht zuerst beenden!
Bitte registrieren oder zum Kommentieren