Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1#!/usr/local/bin/python 

2# encoding: utf-8 

3""" 

4*Dropdown to select the numnber of objects to be displayed on a page* 

5 

6:Author: 

7 David Young 

8""" 

9import sys 

10import os 

11import re 

12import khufu 

13 

14def number_of_objects_dropdown( 

15 log, 

16 request, 

17 limit, 

18 tableView 

19): 

20 """number_of_objects_dropdown 

21 

22 **Key Arguments** 

23 

24 - ``log`` -- the logger 

25 - ``request`` -- the request 

26 - ``limit`` -- current limit of objects per page 

27 - ``tableView`` -- the current tableView 

28  

29 

30 **Return** 

31 

32 - ``objectsPerPageDropdown`` 

33  

34 """ 

35 routename = request.matched_route.name 

36 if "elementId" in request.matchdict: 

37 elementId = request.matchdict["elementId"] 

38 else: 

39 elementId = False 

40 

41 theseParams = dict(request.params) 

42 

43 alist = ["limit", "pageStart"] 

44 for i in alist: 

45 if i in theseParams: 

46 del theseParams[i] 

47 

48 # DETERMINE WHICH ICON TO USE: 

49 if tableView == "table": 

50 icon = """<i class="icon-reorder"></i>""" 

51 else: 

52 icon = """<i class="icon-ticket2"></i>""" 

53 

54 numbers = ["10", "25", "50", "100"] 

55 listItems = [] 

56 for number in numbers: 

57 theseParams["limit"] = number 

58 theseParams["pageStart"] = 0 

59 item = request.route_path( 

60 routename, elementId=elementId, _query=theseParams) 

61 item = khufu.a( 

62 content="""%(icon)s x %(number)s""" % locals(), 

63 href=item, 

64 ) 

65 item = khufu.li( 

66 content=item, 

67 ) 

68 listItems.append(item) 

69 

70 popover = khufu.popover( 

71 tooltip=True, 

72 placement="left", # [ top | bottom | left | right ] 

73 trigger="hover", # [ False | click | hover | focus | manual ] 

74 title="set the number of objects to be displayed on each page", 

75 content=False, 

76 delay=20 

77 ) 

78 

79 objectsPerPageDropdown = khufu.dropdown( 

80 buttonSize='default', 

81 buttonColor='default', # [ default | sucess | error | warning | info ] 

82 menuTitle="""%(icon)s x %(limit)s""" % locals(), 

83 linkList=listItems, 

84 pull="right", 

85 direction='down', # [ down | up ] 

86 htmlId="objectsPerPageDropdown", 

87 popover=popover 

88 ) 

89 

90 return objectsPerPageDropdown