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)
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)
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"))
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)
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)