[CalendarServer-changes] [854] CalendarServer/trunk/twistedcaldav/extensions.py

source_changes at macosforge.org source_changes at macosforge.org
Mon Dec 18 20:33:06 PST 2006


Revision: 854
          http://trac.macosforge.org/projects/calendarserver/changeset/854
Author:   wsanchez at apple.com
Date:     2006-12-18 20:33:06 -0800 (Mon, 18 Dec 2006)

Log Message:
-----------
Show collection MIME type as (collection).

Modified Paths:
--------------
    CalendarServer/trunk/twistedcaldav/extensions.py

Modified: CalendarServer/trunk/twistedcaldav/extensions.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/extensions.py	2006-12-19 02:50:03 UTC (rev 853)
+++ CalendarServer/trunk/twistedcaldav/extensions.py	2006-12-19 04:33:06 UTC (rev 854)
@@ -143,13 +143,21 @@
             """<div class="directory-listing">"""
             """<h1>%(title)s</h1>"""
             """<table>"""
-            """<tr><th>Filename</th> <th>Size</th> <th>Last Modified</th> <th>File Type</th></tr>"""
+            """<tr><th>Name</th> <th>Size</th> <th>Last Modified</th> <th>MIME Type</th></tr>"""
             % {
                 "title": urllib.unquote(request.uri),
                 "style": self.directoryStyleSheet(),
             }
         ]
 
+        def orNone(value, default="?", f=None):
+            if value is None:
+                return default
+            elif f is not None:
+                return f(value)
+            else:
+                return value
+
         even = False
         for name in sorted(self.listChildren()):
             child = self.getChild(name)
@@ -168,13 +176,14 @@
                 lastModified = None
                 contentType = None
 
-            def orNone(value, default="?", f=None):
-                if value is None:
-                    return default
-                elif f is not None:
-                    return f(value)
-                else:
-                    return value
+            if self.fp.isdir():
+                contentType = "(collection)"
+            else:
+                contentType = orNone(
+                    contentType,
+                    default="-",
+                    f=lambda m: "%s/%s %s" % (m.mediaType, m.mediaSubtype, m.params)
+                )
 
             # FIXME: gray out resources that are not readable
             output.append(
@@ -190,7 +199,7 @@
                     "name": name,
                     "size": orNone(size),
                     "lastModified": orNone(lastModified, f=lambda t: time.strftime("%Y-%b-%d %H:%M", time.localtime(t))),
-                    "type": orNone(contentType, default="-", f=lambda m: "%s/%s %s" % (m.mediaType, m.mediaSubtype, m.params)),
+                    "type": contentType,
                 }
             )
             even = not even

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20061218/9f39a606/attachment.html


More information about the calendarserver-changes mailing list