def GET(self, page=1): p = safe_number(page) limit = blog_settings.items_per_page offset = start_index(p, limit) totalPages = page_service.count_all() totalPagesPublished = page_service.count_published() pageCount = total_page(totalPagesPublished, limit) pages = page_service.get_published(offset, limit) nextLink = "/" + str(p + 1) if p < pageCount else None previousLink = "/" + str(p - 1) if p > 1 else None return render.pages(totalPages, totalPagesPublished, pages, nextLink, previousLink)
def fetch(self, key, max_age=5): if self.cache.has_key(key): if int(time.time()) - self.cache[key][0] < max_age: return self.cache[key][1] # Retrieve and cache data = [] if key == '_tags': data = tag_service.get_popular(5) elif key == '_pages': data = page_service.get_published(0, 5) elif key == '_posts': data = post_service.get_published(0, 10) self.cache[key] = (time.time(), data) return data