Ejemplo n.º 1
0
 def serve_static(self):
     """Handles http://host:port/static/* by returning pkg data"""
     assert self.resource[0] == '/'
     static_dir = 'static' + os.sep
     fn = os.path.normpath(self.resource[1:])
     if os.path.commonprefix((static_dir, fn)) != static_dir:
         raise server.Forbidden()
     mimetype, encoding = mimetypes.guess_type(fn)
     data = pkgutil.get_data('nengo_gui', fn)
     return server.HttpResponse(data, mimetype)
Ejemplo n.º 2
0
 def serve_bootstrap_map(self):
     # TODO: should we actually do this ...?
     try:
         root = os.path.realpath(os.path.join(paths.rootdir, ".."))
         fn = os.path.join(
             root, 'node_modules/bootstrap/dist/css/bootstrap.min.css.map')
         mimetype, encoding = mimetypes.guess_type(fn)
         with open(fn, 'rb') as fp:
             data = fp.read()
         return server.HttpResponse(data, mimetype)
     except Exception:
         raise server.InvalidResource(self.route)
Ejemplo n.º 3
0
    def serve_main(self):
        if self.route != '/':
            raise server.InvalidResource(self.route)
        return server.HttpResponse(r"""
<html>
  <head>
    <link rel="icon" href="static/dist/favicon.ico" type="image/x-icon">
  </head>
  <body id="body">
    <script src="static/dist/nengo.js" type="text/javascript" charset="utf-8"></script>
  </body>
</html>
      """.strip().encode("utf-8"))
Ejemplo n.º 4
0
    def serve_main(self):
        if self.resource != '/':
            raise server.InvalidResource(self.resource)

        filename = self.query.get('filename', [None])[0]
        reset_cfg = self.query.get('reset', [False])[0]
        page = self.server.create_page(filename, reset_cfg=reset_cfg)

        # read the template for the main page
        html = pkgutil.get_data('nengo_gui', 'templates/page.html')
        if isinstance(html, bytes):
            html = html.decode("utf-8")

        # fill in the javascript needed and return the complete page
        components = page.create_javascript()
        data = (html % dict(components=components)).encode('utf-8')
        return server.HttpResponse(data)
Ejemplo n.º 5
0
 def serve_static(self):
     """Handles http://host:port/static/* by returning pkg data"""
     fn = os.path.join('static', self.route)
     mimetype, encoding = mimetypes.guess_type(fn)
     data = pkgutil.get_data('nengo_gui', fn)
     return server.HttpResponse(data, mimetype)