dashboards.append(customize[0])
for i,view in enumerate(dashboards):
+ # don't display disabled dashboards
+ if (not view.enabled):
+ continue
body = body + '<li><a href="#dashtab-%d">%s</a></li>\n' % (i, view.name)
body = body + "</ul>\n"
for i,view in enumerate(dashboards):
+ # don't display disabled dashboards
+ if (not view.enabled):
+ continue
+
url = view.url
body = body + '<div id="dashtab-%d">\n' % i
if (view.controllers.all().count()>0):
- body = body + '<select id="dashselect-%d">' % i;
+ body = body + 'Controller: <select id="dashselect-%d">' % i;
+ body = body + '<option value="None">(select a controller)</option>';
for j,controllerdashboard in enumerate(view.controllerdashboardviews.all()):
body = body + '<option value="%d">%s</option>' % (j, controllerdashboard.controller.name)
- body = body + '</select>'
+ body = body + '</select><hr>'
for j,controllerdashboard in enumerate(view.controllerdashboardviews.all()):
- body = body + '<div id="dashcontent-%d-%d" class="dashcontent-%d">\n' % (i,j,i)
- body = body + self.embedDashboard(controllerdashboard.url);
- body = body + '</div>\n';
+ body = body + '<script type="text/template" id="dashtemplate-%d-%d">\n%s\n</script>\n' % (i,j, self.embedDashboard(controllerdashboard.url));
+
+ body = body + '<div id="dashcontent-%d" class="dashcontent"></div>\n' % i
body = body + """<script>
- $("#dashselect-%d").change(function() { console.log("change!");
+ $("#dashselect-%d").change(function() {
v=$("#dashselect-%d").val();
- $(".dashcontent-%d").hide();
- $("#dashcontent-%d-" + v).show();
+ if (v=="None") {
+ $("#dashcontent-%d").html("");
+ return;
+ }
+ $("#dashcontent-%d").html( $("#dashtemplate-%d-" + v).html() );
});
- $(".dashcontent-%d").hide();
- $("#dashcontent-%d-0").show();
+ //$("#dashcontent-%d").html( $("#dashtemplate-%d-0").html() );
</script>
- """ % (i,i,i,i,i,i);
+ """ % (i,i,i,i,i,i,i);
else:
body = body + self.embedDashboard(url)
body = body + '</div>\n'