Changeset 437 for gp/zope/lastfm
- Timestamp:
- 07/04/07 02:42:53 (17 months ago)
- Location:
- gp/zope/lastfm
- Files:
-
- 2 modified
-
browser.py (modified) (1 diff)
-
template.pt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
gp/zope/lastfm/browser.py
r257 r437 4 4 from lxml import etree 5 5 from zope.publisher.browser import BrowserView 6 from gp.decorators import tolerance 7 import logging 6 8 7 9 PREFIX = '/tmp' 8 10 11 @tolerance(etree.XMLSyntaxError, IOError, 12 default=None, 13 logger=logging.getLogger('gp.lastfm')) 9 14 def getxml(filename): 15 """return a ElementTree parsed from the file 10 16 """ 11 return a ElementTree parsed from the file 12 """ 13 fd = open(os.path.join(PREFIX,filename)) 17 fd = open(os.path.join(PREFIX, filename)) 14 18 doc = etree.parse(fd) 15 19 fd.close() 16 20 return doc.getroot() 17 21 22 18 23 class LastfmView(BrowserView): 19 """ 20 a view to render the xml 24 """a view to render the xml 21 25 """ 22 26 23 views = ((u'Coup de coeur', 'recentlovedtracks.xml'),24 (u'Ecouté récemment', 'recenttracks.xml'))27 views = ((u'Coup de coeur', 'recentlovedtracks.xml'), 28 (u'Ecouté récemment', 'recenttracks.xml')) 25 29 26 30 def __call__(self): 27 31 self.title, filename = random.choice(self.views) 28 32 self.xml = getxml(filename) 29 return super(LastfmView, self).__call__()33 return super(LastfmView, self).__call__() 30 34 -
gp/zope/lastfm/template.pt
r263 r437 1 <dl class="lastfm" tal:define="root view/xml"> 1 <dl class="lastfm" 2 tal:define="root view/xml|nothing" 3 tal:condition="nocall:root"> 2 4 <dt class="title" tal:content="view/title" /> 3 5 <dd tal:repeat="track root"> 4 6 <a tal:attributes=" href track/find:url/text"> 5 7 <span tal:content="track/find:name/text" /> 6 <span class="small" 8 <span class="small" 7 9 tal:content="track/find:artist/text" /> 8 10 </a>



