[CalendarServer-changes] [12616] CalendarServer/trunk/calendarserver/webadmin/resource.py

source_changes at macosforge.org source_changes at macosforge.org
Wed Mar 12 11:17:37 PDT 2014


Revision: 12616
          http://trac.calendarserver.org//changeset/12616
Author:   wsanchez at apple.com
Date:     2014-02-07 17:01:03 -0800 (Fri, 07 Feb 2014)
Log Message:
-----------
Add TemplateResource

Modified Paths:
--------------
    CalendarServer/trunk/calendarserver/webadmin/resource.py

Modified: CalendarServer/trunk/calendarserver/webadmin/resource.py
===================================================================
--- CalendarServer/trunk/calendarserver/webadmin/resource.py	2014-02-08 01:00:46 UTC (rev 12615)
+++ CalendarServer/trunk/calendarserver/webadmin/resource.py	2014-02-08 01:01:03 UTC (rev 12616)
@@ -32,6 +32,7 @@
 from twisted.internet.defer import inlineCallbacks, returnValue, succeed
 from twisted.python.modules import getModule
 from txweb2.stream import MemoryStream
+from txweb2.resource import Resource
 from txweb2.http import Response
 from txweb2.http_headers import MimeType
 from txweb2.http import HTTPError
@@ -720,3 +721,33 @@
             )
         ))
         returnValue(records)
+
+
+
+
+class TemplateResource(Resource):
+    """
+    Resource that renders a template.
+    """
+
+    def __init__(self):
+        Resource.__init__(self)
+
+
+    @inlineCallbacks
+    def render(self, request):
+        """
+        Create a L{WebAdminPage} to render HTML content for this request, and
+        return a response.
+        """
+        htmlContent = yield flattenString(request, WebAdminPage(self))
+
+        response = Response()
+        response.stream = MemoryStream(htmlContent)
+
+        for (header, value) in (
+            ("content-type", MimeType.fromString("text/html; charset=utf-8")),
+        ):
+            response.headers.setHeader(header, value)
+
+        returnValue(response)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20140312/75ea1aaf/attachment.html>


More information about the calendarserver-changes mailing list