class catalog_pager(tornado.web.UIModule): def render(self, *args, **kwargs): self.mpost2catalog = MPost2Catalog() self.mcat = MCatalog() cat_slug = args[0] current = int(args[1]) # cat_slug 分类 # current 当前页面 cat_rec = self.mcat.get_by_slug(cat_slug) num_of_cat = self.mpost2catalog.count_of_certain_catalog(cat_rec.uid) tmp_page_num = int(num_of_cat / config.page_num) page_num = tmp_page_num if abs( tmp_page_num - num_of_cat / config.page_num) < 0.1 else tmp_page_num + 1 kwd = { 'page_home': False if current <= 1 else True, 'page_end': False if current >= page_num else True, 'page_pre': False if current <= 1 else True, 'page_next': False if current >= page_num else True, } return self.render_string( 'doc/modules/catalog_pager.html', kwd=kwd, cat_slug=cat_slug, pager_num=page_num, page_current=current, )
class catalog_pager(tornado.web.UIModule): def render(self, *args, **kwargs): self.mpost2catalog = MPost2Catalog() self.mcat = MCatalog() cat_slug = args[0] current = int(args[1]) # cat_slug 分类 # current 当前页面 cat_rec = self.mcat.get_by_slug(cat_slug) num_of_cat = self.mpost2catalog.catalog_record_number(cat_rec.uid) tmp_page_num = int(num_of_cat / config.page_num) page_num = tmp_page_num if abs(tmp_page_num - num_of_cat / config.page_num) < 0.1 else tmp_page_num + 1 kwd = { 'page_home': False if current <= 1 else True, 'page_end': False if current >= page_num else True, 'page_pre': False if current <= 1 else True, 'page_next': False if current >= page_num else True, } return self.render_string('tmpl_torlite/modules/catalog_pager.html', kwd = kwd, cat_slug = cat_slug, pager_num = page_num, page_current = current, )
class CategoryHandler(BaseHandler): def initialize(self): self.init() self.mpost = MPost() self.mcat = MCatalog() self.cats = self.mcat.query_all() self.mpost2catalog = MPost2Catalog() def get(self, url_str=''): url_arr = self.parse_url(url_str) if len(url_arr) == 1: self.list_catalog(url_str) elif len(url_arr) == 2: self.list_catalog(url_arr[0], url_arr[1]) else: self.render('html/404.html') def list_catalog(self, cat_slug, cur_p=''): if cur_p == '': current_page_num = 1 else: current_page_num = int(cur_p) current_page_num = 1 if current_page_num < 1 else current_page_num cat_rec = self.mcat.get_by_slug(cat_slug) num_of_cat = self.mpost2catalog.count_of_certain_catalog(cat_rec.uid) page_num = int(num_of_cat / config.page_num) + 1 cat_name = cat_rec.name kwd = { 'cat_name': cat_name, 'cat_slug': cat_slug, 'unescape': tornado.escape.xhtml_unescape, 'title': cat_name, 'current_page': current_page_num } self.render('doc/catalog/list.html', infos=self.mpost2catalog.query_pager_by_slug( cat_slug, current_page_num), pager=tools.gen_pager_purecss( '/category/{0}'.format(cat_slug), page_num, current_page_num), userinfo=self.userinfo, cfg=config.cfg, kwd=kwd) def get_random(self): return self.mpost.query_random()
class CategoryHandler(BaseHandler): def initialize(self): self.init() self.mpost = MPost() self.mcat = MCatalog() self.cats = self.mcat.query_all() self.mpost2catalog = MPost2Catalog() def get(self, url_str=''): url_arr = self.parse_url(url_str) if len(url_arr) == 1: self.list_catalog(url_str) elif len(url_arr) == 2: self.list_catalog(url_arr[0], url_arr[1]) else: self.render('html/404.html') def list_catalog(self, cat_slug, cur_p=''): if cur_p == '': current_page_num = 1 else: current_page_num = int(cur_p) current_page_num = 1 if current_page_num < 1 else current_page_num cat_rec = self.mcat.get_by_slug(cat_slug) num_of_cat = self.mpost2catalog.count_of_certain_catalog(cat_rec.uid) page_num = int(num_of_cat / config.page_num) + 1 cat_name = cat_rec.name kwd = { 'cat_name': cat_name, 'cat_slug': cat_slug, 'unescape': tornado.escape.xhtml_unescape, 'title': cat_name, 'current_page': current_page_num } self.render('doc/catalog/list.html', infos=self.mpost2catalog.query_pager_by_slug(cat_slug, current_page_num), pager=tools.gen_pager_purecss('/category/{0}'.format(cat_slug), page_num, current_page_num), userinfo=self.userinfo, cfg = config.cfg, kwd=kwd) def get_random(self): return self.mpost.query_random()