Cart
Client-side API for managing the shopping cart.
Endpoints
| Method | Endpoint | Description |
|---|---|---|
GET | /ajax/cart | Get cart contents |
POST | /ajax/cart/add | Add item to cart |
POST | /ajax/cart/change | Update item quantity |
POST | /ajax/cart/remove | Remove item from cart |
POST | /ajax/cart/clear | Clear all cart items |
SDK Alternative
بدل ما تكتب fetch يدوي، تقدر تستخدم qumra.cart:
| AJAX Endpoint | SDK Method |
|---|---|
GET /ajax/cart | qumra.cart.fetch() / qumra.cart.get() |
POST /ajax/cart/add | qumra.cart.add(productId, quantity, options?) |
POST /ajax/cart/change | qumra.cart.update(itemId, quantity) |
POST /ajax/cart/remove | qumra.cart.remove(itemId) |
POST /ajax/cart/clear | qumra.cart.clear() |
Helper Methods (بدون طلب للسيرفر):
| SDK Method | Description |
|---|---|
qumra.cart.get() | قراءة حالة السلة المحلية |
qumra.cart.has(productId) | هل المنتج في السلة؟ |
qumra.cart.getQuantity(productId) | كمية المنتج في السلة |
الاستماع للأحداث:
qumra.on('cart:added', (payload) => {
console.log('تمت الإضافة', payload.data.cart.totalQuantity);
});
qumra.on('cart:error', (payload) => {
console.log('خطأ:', payload.data.error.message);
});
// كل أحداث السلة
qumra.on('cart:*', (payload) => {
updateCartDrawer();
});