84 try: |
84 try: |
85 return self._page_size |
85 return self._page_size |
86 except AttributeError: |
86 except AttributeError: |
87 page_size = self.extra_kwargs.get('page_size') |
87 page_size = self.extra_kwargs.get('page_size') |
88 if page_size is None: |
88 if page_size is None: |
89 if 'page_size' in self.req.form: |
89 if 'page_size' in self._cw.form: |
90 page_size = int(self.req.form['page_size']) |
90 page_size = int(self._cw.form['page_size']) |
91 else: |
91 else: |
92 page_size = self.req.property_value(self.page_size_property) |
92 page_size = self._cw.property_value(self.page_size_property) |
93 self._page_size = page_size |
93 self._page_size = page_size |
94 return page_size |
94 return page_size |
95 |
95 |
96 def set_page_size(self, page_size): |
96 def set_page_size(self, page_size): |
97 self._page_size = page_size |
97 self._page_size = page_size |
98 |
98 |
99 page_size = property(get_page_size, set_page_size) |
99 page_size = property(get_page_size, set_page_size) |
100 |
100 |
101 def page_boundaries(self): |
101 def page_boundaries(self): |
102 try: |
102 try: |
103 stop = int(self.req.form[self.stop_param]) + 1 |
103 stop = int(self._cw.form[self.stop_param]) + 1 |
104 start = int(self.req.form[self.start_param]) |
104 start = int(self._cw.form[self.start_param]) |
105 except KeyError: |
105 except KeyError: |
106 start, stop = 0, self.page_size |
106 start, stop = 0, self.page_size |
107 self.starting_from = start |
107 self.starting_from = start |
108 return start, stop |
108 return start, stop |
109 |
109 |
115 |
115 |
116 def page_url(self, path, params, start, stop): |
116 def page_url(self, path, params, start, stop): |
117 params = merge_dicts(params, {self.start_param : start, |
117 params = merge_dicts(params, {self.start_param : start, |
118 self.stop_param : stop,}) |
118 self.stop_param : stop,}) |
119 if path == 'json': |
119 if path == 'json': |
120 rql = params.pop('rql', self.rset.printable_rql()) |
120 rql = params.pop('rql', self.cw_rset.printable_rql()) |
121 # latest 'true' used for 'swap' mode |
121 # latest 'true' used for 'swap' mode |
122 url = 'javascript: replacePageChunk(%s, %s, %s, %s, true)' % ( |
122 url = 'javascript: replacePageChunk(%s, %s, %s, %s, true)' % ( |
123 dumps(params.get('divid', 'paginated-content')), |
123 dumps(params.get('divid', 'paginated-content')), |
124 dumps(rql), dumps(params.pop('vid', None)), dumps(params)) |
124 dumps(rql), dumps(params.pop('vid', None)), dumps(params)) |
125 else: |
125 else: |
161 return None |
161 return None |
162 |
162 |
163 def cell_call(self, row, col, view=None): |
163 def cell_call(self, row, col, view=None): |
164 rql = self.rql() |
164 rql = self.rql() |
165 if rql is None: |
165 if rql is None: |
166 entity = self.rset.get_entity(row, col) |
166 entity = self.cw_rset.get_entity(row, col) |
167 rset = entity.related(self.rtype, role(self)) |
167 rset = entity.related(self.rtype, role(self)) |
168 else: |
168 else: |
169 eid = self.rset[row][col] |
169 eid = self.cw_rset[row][col] |
170 rset = self.req.execute(self.rql(), {'x': eid}, 'x') |
170 rset = self._cw.execute(self.rql(), {'x': eid}, 'x') |
171 if not rset.rowcount: |
171 if not rset.rowcount: |
172 return |
172 return |
173 self.w(u'<div class="%s">' % self.div_class()) |
173 self.w(u'<div class="%s">' % self.div_class()) |
174 self.wview(self.vid, rset, title=self.req._(self.title).capitalize()) |
174 self.wview(self.vid, rset, title=self._cw._(self.title).capitalize()) |
175 self.w(u'</div>') |
175 self.w(u'</div>') |
176 |
176 |
177 |
177 |
178 VComponent = class_renamed('VComponent', Component, |
178 VComponent = class_renamed('VComponent', Component, |
179 'VComponent is deprecated, use Component') |
179 'VComponent is deprecated, use Component') |