From 631c7adf12ece86aff0ca314bb193d1febb71267 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torkel=20=C3=96degaard?= Date: Sun, 17 Aug 2014 12:26:00 +0200 Subject: [PATCH] updated --- src/app/partials/{ => pro}/solo-panel.html | 0 src/app/routes/p_solo-panel.js | 29 +++++++++++++++++++--- 2 files changed, 25 insertions(+), 4 deletions(-) rename src/app/partials/{ => pro}/solo-panel.html (100%) diff --git a/src/app/partials/solo-panel.html b/src/app/partials/pro/solo-panel.html similarity index 100% rename from src/app/partials/solo-panel.html rename to src/app/partials/pro/solo-panel.html diff --git a/src/app/routes/p_solo-panel.js b/src/app/routes/p_solo-panel.js index 653ebdb31d6..7493ab4813b 100644 --- a/src/app/routes/p_solo-panel.js +++ b/src/app/routes/p_solo-panel.js @@ -1,15 +1,16 @@ define([ 'angular', + 'lodash', ], -function (angular) { +function (angular, _) { "use strict"; var module = angular.module('grafana.routes'); module.config(function($routeProvider) { $routeProvider - .when('/solo-panel/db/:id', { - templateUrl: 'app/partials/solo-panel.html', + .when('/dashboard/:id/panel/:panelId', { + templateUrl: 'app/partials/pro/solo-panel.html', controller : 'SoloPanelCtrl', }); }); @@ -17,6 +18,7 @@ function (angular) { module.controller('SoloPanelCtrl', function($scope, $rootScope, datasourceSrv, $routeParams, alertSrv, dashboardSrv, filterSrv) { var db = datasourceSrv.getGrafanaDB(); + var panelId = parseInt($routeParams.panelId); db.getDashboard($routeParams.id, false) .then(function(dashboardData) { @@ -33,13 +35,32 @@ function (angular) { }; $scope.test = "Hej"; $scope.$index = 0; - $scope.panel = $scope.dashboard.rows[0].panels[0]; + $scope.panel = $scope.getPanelById(panelId); + $scope.panel.span = 12; + $scope.dashboardViewState = { + registerPanel: function() { + } + }; $scope.filter = filterSrv; $scope.filter.init($scope.dashboard); }; + $scope.getPanelById = function(id) { + var rows = $scope.dashboard.rows; + for (var i = 0; i < rows.length; i++) { + var row = rows[i]; + for (var j = 0; j < row.panels.length; j++) { + var panel = row.panels[j]; + if (panel.id === id) { + return panel; + } + } + } + return null; + }; + }); });