diff -r 495862266785 -r 6b46d73823f5 web/views/xmlrss.py --- a/web/views/xmlrss.py Wed Sep 23 19:26:38 2009 +0200 +++ b/web/views/xmlrss.py Wed Sep 23 19:40:19 2009 +0200 @@ -30,13 +30,13 @@ item_vid = 'xmlitem' def cell_call(self, row, col): - self.wview(self.item_vid, self.rset, row=row, col=col) + self.wview(self.item_vid, self.cw_rset, row=row, col=col) def call(self): """display a list of entities by calling their view""" - self.w(u'\n' % self.req.encoding) - self.w(u'<%s size="%s">\n' % (self.xml_root, len(self.rset))) - for i in xrange(self.rset.rowcount): + self.w(u'\n' % self._cw.encoding) + self.w(u'<%s size="%s">\n' % (self.xml_root, len(self.cw_rset))) + for i in xrange(self.cw_rset.rowcount): self.cell_call(i, 0) self.w(u'\n' % self.xml_root) @@ -46,7 +46,7 @@ def cell_call(self, row, col): """ element as an item for an xml feed """ - entity = self.complete_entity(row, col) + entity = self.cw_rset.complete_entity(row, col) self.w(u'<%s>\n' % (entity.e_schema)) for rschema, attrschema in entity.e_schema.attribute_definitions(): attr = rschema.type @@ -75,12 +75,12 @@ def call(self): w = self.w - rset, descr = self.rset, self.rset.description - eschema = self.schema.eschema + rset, descr = self.cw_rset, self.cw_rset.description + eschema = self._cw.schema.eschema labels = self.columns_labels(tr=False) - w(u'\n' % self.req.encoding) + w(u'\n' % self._cw.encoding) w(u'<%s query="%s">\n' % (self.xml_root, xml_escape(rset.printable_rql()))) - for rowindex, row in enumerate(self.rset): + for rowindex, row in enumerate(self.cw_rset): w(u' \n') for colindex, val in enumerate(row): etype = descr[rowindex][colindex] @@ -92,11 +92,11 @@ if val is not None and not eschema(etype).is_final(): attrs['eid'] = val # csvrow.append(val) # val is eid in that case - val = self.view('textincontext', rset, - row=rowindex, col=colindex) + val = self._cw.view('textincontext', rset, + row=rowindex, col=colindex) else: - val = self.view('final', rset, row=rowindex, - col=colindex, format='text/plain') + val = self._cw.view('final', rset, row=rowindex, + col=colindex, format='text/plain') w(simple_sgml_tag(tag, val, **attrs)) w(u' \n') w(u'\n' % self.xml_root) @@ -109,7 +109,7 @@ __select__ = non_final_entity() def feed_url(self): - return self.build_url(rql=self.limited_rql(), vid='rss') + return self._cw.build_url(rql=self.limited_rql(), vid='rss') class RSSEntityFeedURL(Component): @@ -117,7 +117,7 @@ __select__ = non_final_entity() & one_line_rset() def feed_url(self): - return self.rset.get_entity(0, 0).rss_feed_url() + return self.cw_rset.get_entity(0, 0).rss_feed_url() class RSSIconBox(box.BoxTemplate): @@ -131,12 +131,12 @@ def call(self, **kwargs): try: - rss = self.req.external_resource('RSS_LOGO') + rss = self._cw.external_resource('RSS_LOGO') except KeyError: self.error('missing RSS_LOGO external resource') return - urlgetter = self.vreg['components'].select('rss_feed_url', self.req, - rset=self.rset) + urlgetter = self._cw.vreg['components'].select('rss_feed_url', self._cw, + rset=self.cw_rset) url = urlgetter.feed_url() self.w(u'rss\n' % (xml_escape(url), rss)) @@ -150,7 +150,7 @@ cache_max_age = 60*60*2 # stay in http cache for 2 hours by default def _open(self): - req = self.req + req = self._cw self.w(u'\n' % req.encoding) self.w(u'\n') self.w(u' \n') @@ -160,7 +160,7 @@ % xml_escape(req.form.get('vtitle', ''))) params = req.form.copy() params.pop('vid', None) - self.w(u' %s\n' % xml_escape(self.build_url(**params))) + self.w(u' %s\n' % xml_escape(self._cw.build_url(**params))) def _close(self): self.w(u' \n') @@ -169,12 +169,12 @@ def call(self): """display a list of entities by calling their view""" self._open() - for i in xrange(self.rset.rowcount): + for i in xrange(self.cw_rset.rowcount): self.cell_call(i, 0) self._close() def cell_call(self, row, col): - self.wview('rssitem', self.rset, row=row, col=col) + self.wview('rssitem', self.cw_rset, row=row, col=col) class RSSItemView(EntityView): @@ -183,7 +183,7 @@ add_div_section = False def cell_call(self, row, col): - entity = self.complete_entity(row, col) + entity = self.cw_rset.complete_entity(row, col) self.w(u'\n') self.w(u'%s\n' % xml_escape(entity.absolute_url()))