From bb53ee8e259496d15023d5621c298ff933fd716b Mon Sep 17 00:00:00 2001 From: Scott Baker Date: Wed, 18 Jun 2014 18:26:45 -0700 Subject: [PATCH] iframe view support --- planetstack/core/dashboard/views/home.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/planetstack/core/dashboard/views/home.py b/planetstack/core/dashboard/views/home.py index 06e2c5f..6cb25a0 100644 --- a/planetstack/core/dashboard/views/home.py +++ b/planetstack/core/dashboard/views/home.py @@ -25,7 +25,7 @@ class DashboardDynamicView(TemplateView): else: return self.singleDashboardView(request, name, context) - def readDashboard(self, fn): + def readTemplate(self, fn): try: template= open("/opt/planetstack/templates/admin/dashboard/%s.html" % fn, "r").read() if (fn=="tenant"): @@ -35,6 +35,13 @@ class DashboardDynamicView(TemplateView): except: return "failed to open %s" % fn + def embedDashboard(self, url): + if url.startswith("template:"): + fn = url[9:] + return self.readTemplate(fn) + elif url.startswith("http"): + return '' % url + def multiDashboardView(self, request, context): head_template = self.head_template tail_template = self.tail_template @@ -59,9 +66,7 @@ class DashboardDynamicView(TemplateView): for i,view in enumerate(dashboards): url = view.url body = body + '
\n' % i - if url.startswith("template:"): - fn = url[9:] - body = body + self.readDashboard(fn) + body = body + self.embedDashboard(url) body = body + '
\n' body=body+"\n" @@ -80,7 +85,7 @@ class DashboardDynamicView(TemplateView): head_template = self.head_template tail_template = self.tail_template - t = template.Template(head_template + self.readDashboard(name) + self.tail_template) + t = template.Template(head_template + self.readTemplate(name) + self.tail_template) response_kwargs = {} response_kwargs.setdefault('content_type', self.content_type) -- 2.43.0