diff --git a/class/page.py b/class/page.py new file mode 100755 index 000000000..ded36592a --- /dev/null +++ b/class/page.py @@ -0,0 +1,207 @@ +#coding: utf-8 +# +------------------------------------------------------------------- +# | 宝塔Linux面板 +# +------------------------------------------------------------------- +# | Copyright (c) 2015-2016 宝塔软件(http://bt.cn) All rights reserved. +# +------------------------------------------------------------------- +# | Author: 黄文良 <2879625666@qq.com> +# +------------------------------------------------------------------- +import math,string,public + +class Page(): + #-------------------------- + # 分页类 - JS回调版 + #-------------------------- + __PREV = '上一页' + __NEXT = '下一页' + __START = '首页' + __END = '尾页' + __COUNT_START = '共' + __COUNT_END = '条数据' + __FO = '从' + __LINE = '条' + __LIST_NUM = 4 + SHIFT = None #偏移量 + ROW = None #每页行数 + __C_PAGE = None #当前页 + __COUNT_PAGE = None #总页数 + __COUNT_ROW = None #总行数 + __URI = None #URI + __RTURN_JS = False #是否返回JS回调 + __START_NUM = None #起始行 + __END_NUM = None #结束行 + + def __init__(self): + tmp = public.getMsg('PAGE'); + if tmp: + self.__PREV = tmp['PREV']; + self.__NEXT = tmp['NEXT']; + self.__START = tmp['START']; + self.__END = tmp['END']; + self.__COUNT_START = tmp['COUNT_START']; + self.__COUNT_END = tmp['COUNT_END']; + self.__FO = tmp['FO']; + self.__LINE = tmp['LINE']; + + def GetPage(self,pageInfo,limit = '1,2,3,4,5,6,7,8'): + # 取分页信息 + # @param pageInfo 传入分页参数字典 + # @param limit 返回系列 + self.__RTURN_JS = pageInfo['return_js'] + self.__COUNT_ROW = pageInfo['count'] + self.ROW = pageInfo['row'] + self.__C_PAGE = self.__GetCpage(pageInfo['p']) + self.__START_NUM = self.__StartRow() + self.__END_NUM = self.__EndRow() + self.__COUNT_PAGE = self.__GetCountPage() + self.__URI = self.__SetUri(pageInfo['uri']) + self.SHIFT = self.__START_NUM - 1 + + keys = limit.split(',') + + pages = {} + #起始页 + pages['1'] = self.__GetStart() + #上一页 + pages['2'] = self.__GetPrev() + #分页 + pages['3'] = self.__GetPages() + #下一页 + pages['4'] = self.__GetNext() + #尾页 + pages['5'] = self.__GetEnd() + + #当前显示页与总页数 + pages['6'] = "" + bytes(self.__C_PAGE) + "/" + bytes(self.__COUNT_PAGE) + "" + #本页显示开始与结束行 + pages['7'] = "" + self.__FO + bytes(self.__START_NUM) + "-" + bytes(self.__END_NUM) + self.__LINE + "" + #行数 + pages['8'] = "" + self.__COUNT_START + bytes(self.__COUNT_ROW) + self.__COUNT_END + "" + + #构造返回数据 + retuls = '