Hatta Numbered Lists Branch

changeset 741:7a31aaea2d2f

Cascading CSS, proof of concept
author Ben
date Thu Dec 24 22:30:04 2009 +0100 (2009-12-24)
parents 020f6d49a9f5
children d6e380970ba0
files hatta.py
line diff
     1.1 --- a/hatta.py	Thu Dec 24 16:59:20 2009 +0100
     1.2 +++ b/hatta.py	Thu Dec 24 22:30:04 2009 +0100
     1.3 @@ -1751,6 +1751,8 @@
     1.4          yield h.title(u'%s - %s' % (e(special_title or self.title),
     1.5                                      e(self.wiki.site_name)))
     1.6          yield h.link(rel="stylesheet", type_="text/css",
     1.7 +                     href=self.get_url(None, self.wiki.default_css))
     1.8 +        yield h.link(rel="stylesheet", type_="text/css",
     1.9                       href=self.get_url(None, self.wiki.style_css))
    1.10          if special_title:
    1.11              yield h.meta(name="robots", content="NOINDEX,NOFOLLOW")
    1.12 @@ -2330,6 +2332,7 @@
    1.13          'text': WikiPageText,
    1.14          'application/x-javascript': WikiPageText,
    1.15          'application/x-python': WikiPageText,
    1.16 +        'text/css' : WikiPageColorText,
    1.17          'text/csv': WikiPageCSV,
    1.18          'text/x-rst': WikiPageRST,
    1.19          'text/x-wiki': WikiPageWiki,
    1.20 @@ -2507,6 +2510,7 @@
    1.21              R('/off-with-his-head', endpoint=self.die, methods=['GET']),
    1.22              R('/+hg<all:path>', endpoint=self.hgweb, strict_slashes=False,
    1.23                methods=['GET', 'POST', 'HEAD']),
    1.24 +            R('/+style', endpoint=self.default_css, methods=['GET', 'HEAD']),
    1.25              # Pages with default content
    1.26              R('/favicon.ico', endpoint=self.favicon_ico,
    1.27                methods=['GET', 'HEAD']),
    1.28 @@ -3150,10 +3154,16 @@
    1.29          return self._serve_default(request, 'scripts.js', self.scripts,
    1.30                                     'text/javascript')
    1.31  
    1.32 +    def default_css(self, request):
    1.33 +        response = werkzeug.Response(self.style, mimetype="text/css")
    1.34 +	response.set_etag("/+style/-1")
    1.35 +        response.make_conditional(request)
    1.36 +        return response
    1.37 +
    1.38      def style_css(self, request):
    1.39          """Serve the default style"""
    1.40  
    1.41 -        return self._serve_default(request, 'style.css', self.style,
    1.42 +        return self._serve_default(request, 'style.css', "",
    1.43                                     'text/css')
    1.44  
    1.45      def favicon_ico(self, request):