Пример #1
0
 @With(SaveContext.class)
 public static Result home(int page) {
   SearchRequest<Product> searchRequest = sphere().products.all();
   searchRequest = filterBy(searchRequest);
   searchRequest = sortBy(searchRequest);
   searchRequest = paging(searchRequest, page);
   SearchResult<Product> searchResult = searchRequest.fetch();
   return ok(views.html.home.render(searchResult));
 }
Пример #2
0
 public static Result listProducts(String categorySlug, int page) {
   Category category = null;
   SearchRequest<Product> searchRequest;
   if (categorySlug.isEmpty()) {
     searchRequest = sphere().products.all();
   } else {
     category = sphere().categories.getBySlug(categorySlug);
     if (category == null) {
       return notFound("Category not found: " + categorySlug);
     }
     FilterExpression categoryFilter = new FilterExpressions.CategoriesOrSubcategories(category);
     searchRequest = sphere().products.filter(categoryFilter);
   }
   searchRequest = filterBy(searchRequest);
   searchRequest = sortBy(searchRequest);
   searchRequest = paging(searchRequest, page);
   SearchResult<Product> searchResult = searchRequest.fetch();
   return ok(views.html.ajax.listProducts.render(searchResult, category));
 }
Пример #3
0
 @With(SaveContext.class)
 public static Result select(String categoryPath, int page) {
   String[] categorySlugs = categoryPath.split("/");
   String categorySlug = categorySlugs[categorySlugs.length - 1];
   Category category = sphere().categories.getBySlug(categorySlug);
   if (category == null) {
     return notFound("Category not found: " + categorySlug);
   }
   FilterExpression categoryFilter = new FilterExpressions.CategoriesOrSubcategories(category);
   SearchRequest<Product> searchRequest = sphere().products.filter(categoryFilter);
   searchRequest = filterBy(searchRequest);
   searchRequest = sortBy(searchRequest);
   searchRequest = paging(searchRequest, page);
   SearchResult<Product> searchResult = searchRequest.fetch();
   if (searchResult.getCount() < 1) {
     flash("info", "No products found");
   }
   return ok(views.html.categories.render(searchResult, category));
 }