basic layout
diff --git a/web/ons-demo/assets/logo.png b/web/ons-demo/assets/logo.png
new file mode 100644
index 0000000..57434bd
--- /dev/null
+++ b/web/ons-demo/assets/logo.png
Binary files differ
diff --git a/web/ons-demo/css/layout.default.css b/web/ons-demo/css/layout.default.css
new file mode 100644
index 0000000..fa798da
--- /dev/null
+++ b/web/ons-demo/css/layout.default.css
@@ -0,0 +1,32 @@
+body {
+ display: -webkit-box;
+}
+
+.header {
+ width: 100%;
+ display: -webkit-box;
+ -webkit-box-pack: justify;
+ -webkit-box-align: center;
+}
+
+#status {
+ display: -webkit-box;
+}
+
+#right {
+ width: 100%;
+ -webkit-box-flex: 1.0;
+}
+
+#controllers, #topology {
+ height: 100%;
+ -webkit-box-flex: 1.0;
+}
+
+/* tmp */
+#controllers, #topology {
+ display: -webkit-box;
+ -webkit-box-align: center;
+ -webkit-box-pack: center;
+}
+
diff --git a/web/ons-demo/css/skin.2.css b/web/ons-demo/css/skin.2.css
new file mode 100644
index 0000000..27c9487
--- /dev/null
+++ b/web/ons-demo/css/skin.2.css
@@ -0,0 +1,3 @@
+body {
+ background-color: blue;
+}
\ No newline at end of file
diff --git a/web/ons-demo/css/skin.default.css b/web/ons-demo/css/skin.default.css
new file mode 100644
index 0000000..2a6d95a
--- /dev/null
+++ b/web/ons-demo/css/skin.default.css
@@ -0,0 +1,50 @@
+body {
+ background-color: black;
+ color: white;
+ font-family: Helvetica;
+ margin: 0px;
+}
+
+.status {
+ padding: 1em;
+ border-right: 1px solid white;
+}
+
+.status:last-child {
+ border-right: none;
+}
+
+.status .static {
+ color: white;
+ padding: .25em;
+}
+
+.status .dynamic {
+ color: blue;
+ padding: .25em;
+}
+
+.button {
+ padding: 1em;
+ background-color: lightgray;
+ color: black;
+ border: 1px solid white;
+}
+
+#left .header {
+ background-color: lightgreen;
+}
+
+#right .header {
+ background-color: lightblue;
+}
+
+#controllers {
+ background-color: darkgreen;
+}
+
+#topology {
+ background-color: blue;
+}
+
+#logo {}
diff --git a/web/ons-demo/index.html b/web/ons-demo/index.html
new file mode 100644
index 0000000..36e9fbe
--- /dev/null
+++ b/web/ons-demo/index.html
@@ -0,0 +1,32 @@
+<html>
+
+<head>
+ <link rel="stylesheet" href="css/layout.default.css" type="text/css"/>
+ <link rel="stylesheet" href="css/skin.default.css" type="text/css"/>
+</head>
+
+<body>
+
+<div id='left'>
+ <div class='header'>
+ <img id='logo' src='assets/logo.png'></img>
+ </div>
+ <div id='controllers'>Controllers</div>
+</div>
+
+<div id='right'>
+ <div class='header'>
+ <div id='status'>
+ <div id='lastUpdate' class='status'><span class='static'>Last updated:</span><span class='dynamic'>Mon Mar 18 11:11:12 PDT 2013</span></div>
+ <div id='activeFlows' class='status'><span class='dynamic'>4000</span><span class='static'>Active Flows</span></div>
+ <div id='activeSwitches' class='status'><span class='dynamic'>200</span><span class='static'>Active Switches</span></div>
+ </div>
+ <div id='traceButton' class='button'>Trace</div>
+ </div>
+ <div id='topology'>Topology</div>
+</div>
+
+
+</body>
+
+</html>
\ No newline at end of file
diff --git a/web/restapi2.py b/web/restapi2.py
index bf049fd..7efbf88 100755
--- a/web/restapi2.py
+++ b/web/restapi2.py
@@ -28,6 +28,10 @@
@app.route('/', methods=['GET'])
@app.route('/<filename>', methods=['GET'])
@app.route('/tpl/<filename>', methods=['GET'])
+@app.route('/ons-demo/<filename>', methods=['GET'])
+@app.route('/ons-demo/js/<filename>', methods=['GET'])
+@app.route('/ons-demo/css/<filename>', methods=['GET'])
+@app.route('/ons-demo/assets/<filename>', methods=['GET'])
def return_file(filename="index.html"):
if request.path == "/":
fullpath = "./index.html"
@@ -127,7 +131,7 @@
ret = {}
ret[switchId]=aggr
else:
- ret = {}
+ ret = {}
js = json.dumps(ret)
resp = Response(js, status=200, mimetype='application/json')
@@ -244,7 +248,7 @@
sw_dpid = parsedResult['dpid']
return sw_dpid
-
+
if __name__ == "__main__":
app.debug = True