feat: use ProductFiltersBuilder in all products page
diff --git a/erpnext/www/all-products/index.py b/erpnext/www/all-products/index.py
index 6ebc1c3..2d4a357 100644
--- a/erpnext/www/all-products/index.py
+++ b/erpnext/www/all-products/index.py
@@ -2,6 +2,7 @@
 from erpnext.portal.product_configurator.utils import (get_products_for_website, get_product_settings,
 	get_field_filter_data, get_attribute_filter_data)
 from erpnext.shopping_cart.product_query import ProductQuery
+from erpnext.shopping_cart.filters import ProductFiltersBuilder
 
 sitemap = 1
 
@@ -13,22 +14,18 @@
 		attribute_filters = frappe.parse_json(frappe.form_dict.attribute_filters)
 	else:
 		search = field_filters = attribute_filters = None
-	
-	# items = get_products_for_website(field_filters, attribute_filters, search)
-	
+
 	engine = ProductQuery()
-	items = engine.query(attribute_filters, field_filters, search)
+	context.items = engine.query(attribute_filters, field_filters, search)
 
 	product_settings = get_product_settings()
-	context.items = items
-	context.field_filters = get_field_filter_data() \
-		if product_settings.enable_field_filters else []
+	filter_engine = ProductFiltersBuilder()
 
-	context.attribute_filters = get_attribute_filter_data() \
-		if product_settings.enable_attribute_filters else []
+	context.field_filters = filter_engine.get_field_filters()
+	context.attribute_filters = filter_engine.get_attribute_fitlers()
 
 	context.product_settings = product_settings
 	context.body_class = "product-page"
-	context.page_length = product_settings.products_per_page
+	context.page_length = product_settings.products_per_page or 20
 
 	context.no_cache = 1