def category(self): # /category/{category_id}/{page} page = self.request.matchdict.get("page", "category") category_id = util.to_uuid(self.request.matchdict.get("category_id")) category = ProductCategory.load(category_id) self.redir_if(not category) self.session["back_link"] = "/category/%s" % category_id params = self.params() params["products"] = util.page_list( SmartCatalog.category_product_list(self.request.ctx.campaign, category_id), self.request.GET.get("offset"), self.request.GET.get("limit"), ) params["category"] = category (params["seo_title"], params["seo_keywords"], params["seo_description"]) = SmartSeo.category_seo( category, self.request.ctx.site ) return self.render(page, params)
def specials_product_list(self, specials_category_id, offset=None, limit=None): """ KB: [2012-12-24]: You can pass "specials_category_id=qwerqewfzdsxfdsfg" in the URL anywhere and the specials will show up as that category. """ if specials_category_id: return SmartCatalog.category_product_list(self.request.ctx.campaign, specials_category_id, offset, limit) else: return SmartCatalog.specials_product_list(self.request.ctx.campaign, offset, limit)