diff --git a/web/handler.go b/web/handler.go new file mode 100644 index 000000000..75b411eb7 --- /dev/null +++ b/web/handler.go @@ -0,0 +1,26 @@ +// Copyright 2013 Prometheus Team +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package web + +import ( + "net/http" +) + +func graphHandler(w http.ResponseWriter, r *http.Request) { + executeTemplate(w, "graph", nil) +} + +func consoleHandler(w http.ResponseWriter, r *http.Request) { + executeTemplate(w, "console", nil) +} diff --git a/web/static/css/prometheus.css b/web/static/css/prometheus.css index 96a8ca84b..da245fd77 100644 --- a/web/static/css/prometheus.css +++ b/web/static/css/prometheus.css @@ -2,8 +2,8 @@ body { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px; line-height: 20px; - color: #333333; - background-color: #eee; + color: #333; + background-color: #f2f2f2; margin: 0px; padding: 0px; } @@ -49,3 +49,15 @@ input[name=end_input], input[name=range_input] { margin-left: -4px; margin-right: -4px; } + +#navigation { + font-size: 20pt; + background-color: #333; + color: #F2F2F2; + line-height: 120%; +} + +#navigation a { padding-right: 1em; text-decoration: none } +#navigation a:visited { color: #F2F2F2 } +#navigation a:active { color: #F60 } +#navigation a:hover { color: #06C } diff --git a/web/static/js/graph.js b/web/static/js/graph.js index e2bc92fce..260a5ab64 100644 --- a/web/static/js/graph.js +++ b/web/static/js/graph.js @@ -20,6 +20,7 @@ var Prometheus = Prometheus || {}; var graphs = []; +var graphTemplate; Prometheus.Graph = function(element, options) { this.el = element; @@ -57,9 +58,8 @@ Prometheus.Graph.prototype.initialize = function() { self.options['stacked_checked'] = self.options['stacked'] ? "checked" : ""; // Draw graph controls and container from Handlebars template. - var source = $("#graph_template").html(); - var template = Handlebars.compile(source); - var graphHtml = template(self.options); + + var graphHtml = graphTemplate(self.options); self.el.append(graphHtml); // Get references to all the interesting elements in the graph container and @@ -428,15 +428,22 @@ function init() { cache: false }); - var options = parseGraphOptionsFromUrl(); - if (options.length == 0) { - options.push({}); - } - for (var i = 0; i < options.length; i++) { - addGraph(options[i]); - } - - $("#add_graph").click(function() { addGraph({}); }); + $.ajax({ + url: "/static/js/graph_template.handlebar", + success: function(data) { + console.log("got template") + console.log(data) + graphTemplate = Handlebars.compile(data); + var options = parseGraphOptionsFromUrl(); + if (options.length == 0) { + options.push({}); + } + for (var i = 0; i < options.length; i++) { + addGraph(options[i]); + } + $("#add_graph").click(function() { addGraph({}); }); + } + }) } $(init); diff --git a/web/static/js/graph_template.handlebar b/web/static/js/graph_template.handlebar new file mode 100644 index 000000000..e24277197 --- /dev/null +++ b/web/static/js/graph_template.handlebar @@ -0,0 +1,42 @@ +