summaryrefslogtreecommitdiff
path: root/src/pages/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/pages/api')
-rw-r--r--src/pages/api/shop/search.js18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/pages/api/shop/search.js b/src/pages/api/shop/search.js
index 9cd3d4ba..2d26205d 100644
--- a/src/pages/api/shop/search.js
+++ b/src/pages/api/shop/search.js
@@ -44,9 +44,23 @@ export default async function handler(req, res) {
brand = '',
category = '',
price_from = 0,
- price_to = 0
+ price_to = 0,
+ order_by = ''
} = req.query;
+ let paramOrderBy = '';
+ switch (order_by) {
+ case 'price-asc':
+ paramOrderBy = ', price_discount ASC';
+ break;
+ case 'price-desc':
+ paramOrderBy = ', price_discount DESC';
+ break;
+ case 'popular':
+ paramOrderBy = ', search_rank DESC';
+ break;
+ }
+
let limit = 30;
let offset = (page - 1) * limit;
let parameter = [
@@ -59,7 +73,7 @@ export default async function handler(req, res) {
'facet.field=category_name_str',
`start=${offset}`,
`rows=${limit}`,
- 'sort=product_rating desc',
+ `sort=product_rating DESC ${paramOrderBy}`,
`fq=price_discount:[${price_from == 0 ? '*' : price_from} TO ${price_to == 0 ? '*' : price_to}]`
];