Changeset 748:cf87c0a47b04 in hatta-dev
Legend:
- Unmodified
- Added
- Removed
-
hatta.py
r747 r748 98 98 or addr.startswith('ftp://') 99 99 or addr.startswith('mailto:')) 100 101 def page_mime(title): 102 """ 103 Guess page's mime type ased on corresponding file name. 104 Default ot text/x-wiki for files without an extension. 105 106 >>> page_mime(u'something.txt') 107 'text/plain' 108 >>> page_mime(u'SomePage') 109 'text/x-wiki' 110 >>> page_mime(u'ąęśUnicodePage') 111 'text/x-wiki' 112 >>> page_mime(u'image.png') 113 'image/png' 114 >>> page_mime(u'style.css') 115 'text/css' 116 >>> page_mime(u'archive.tar.gz') 117 'archive/gzip' 118 """ 119 120 addr = title.encode('utf-8') # the encoding doesn't relly matter here 121 mime, encoding = mimetypes.guess_type(addr, strict=False) 122 if encoding: 123 mime = 'archive/%s' % encoding 124 if mime is None: 125 mime = 'text/x-wiki' 126 return mime 100 127 101 128 … … 542 569 return self._changectx().rev() 543 570 544 def page_mime(self, title):545 """546 Guess page's mime type ased on corresponding file name.547 Default ot text/x-wiki for files without an extension.548 549 >>> page_mime('something.txt')550 'text/plain'551 >>> page_mime('SomePage')552 'text/x-wiki'553 >>> page_mime(u'ąęśUnicodePage')554 'text/x-wiki'555 >>> page_mime('image.png')556 'image/png'557 >>> page_mime('style.css')558 'text/css'559 >>> page_mime('archive.tar.gz')560 'archive/gzip'561 """562 563 addr = self._file_path(title)564 mime, encoding = mimetypes.guess_type(addr, strict=False)565 if encoding:566 mime = 'archive/%s' % encoding567 if mime is None:568 mime = 'text/x-wiki'569 return mime570 571 571 572 def _changectx(self): … … 1474 1475 """Updates the content of the database, needs locks around.""" 1475 1476 1476 mime = self.storage.page_mime(title)1477 mime = page_mime(title) 1477 1478 if not mime.startswith('text/'): 1478 1479 self.update_words(title, '', cursor=cursor) … … 1750 1751 return html.a(name=chunk) 1751 1752 if addr in self.storage: 1752 mime = self.storage.page_mime(addr)1753 mime = page_mime(addr) 1753 1754 if mime.startswith('image/'): 1754 1755 return html.img(src=self.get_download_url(addr), class_=class_, … … 2572 2573 page_class, mime = self.filename_map[title] 2573 2574 except KeyError: 2574 mime = self.storage.page_mime(title)2575 mime = page_mime(title) 2575 2576 major, minor = mime.split('/', 1) 2576 2577 try: … … 2879 2880 """Serve the raw content of a page.""" 2880 2881 2881 mime = self.storage.page_mime(title)2882 mime = page_mime(title) 2882 2883 if mime == 'text/x-wiki': 2883 2884 mime = 'text/plain'
Note: See TracChangeset
for help on using the changeset viewer.
