Commit d3495ff7 by Boaz Leskes

allow loading of panels and dashboards from subfolders

every . in their name is mapped to a /
parent 2b9a8a00
......@@ -70,7 +70,7 @@ function (angular, config, _) {
$scope.edit_path = function(type) {
if(type) {
return 'app/panels/'+type+'/editor.html';
return 'app/panels/'+type.replace(".","/")+'/editor.html';
} else {
return false;
}
......
......@@ -17,7 +17,7 @@ function (angular, app, _) {
$scope.reset_panel(_type);
if(!_.isUndefined($scope.panel.type)) {
$scope.panel.loadingEditor = true;
$scope.require(['panels/'+$scope.panel.type+'/module'], function () {
$scope.require(['panels/'+$scope.panel.type.replace(".","/") +'/module'], function () {
var template = '<div ng-controller="'+$scope.panel.type+'" ng-include="\'app/partials/paneladd.html\'"></div>';
elem.html($compile(angular.element(template))($scope));
$scope.panel.loadingEditor = false;
......
......@@ -75,9 +75,10 @@ function (angular) {
$scope.$watch(attr.type, function (name) {
elem.addClass("ng-cloak");
// load the panels module file, then render it in the dom.
var nameAsPath = name.replace(".", "/");
$scope.require([
'jquery',
'text!panels/'+name+'/module.html'
'text!panels/'+nameAsPath+'/module.html'
], function ($, moduleTemplate) {
var $module = $(moduleTemplate);
// top level controllers
......@@ -88,7 +89,7 @@ function (angular) {
if ($controllers.length) {
$controllers.first().prepend(editorTemplate);
$scope.require([
'panels/'+name+'/module'
'panels/'+nameAsPath+'/module'
], function() {
loadModule($module);
});
......
......@@ -32,10 +32,10 @@ function (angular, _) {
function loadController(name) {
elem.addClass("ng-cloak");
// load the panels module file, then render it in the dom.
var nameAsPath = name.replace(".", "/");
$scope.require([
'jquery',
'text!panels/'+name+'/module.html'
'text!panels/'+nameAsPath+'/module.html'
], function ($, moduleTemplate) {
var $module = $(moduleTemplate);
// top level controllers
......@@ -46,7 +46,7 @@ function (angular, _) {
if ($controllers.length) {
$controllers.first().prepend(panelLoading);
$scope.require([
'panels/'+name+'/module'
'panels/'+nameAsPath+'/module'
], function() {
loadModule($module);
});
......
......@@ -274,7 +274,7 @@ function (angular, $, kbn, _, config, moment, Modernizr) {
this.file_load = function(file) {
return $http({
url: "app/dashboards/"+file+'?' + new Date().getTime(),
url: "app/dashboards/"+file.replace(".","/")+'?' + new Date().getTime(),
method: "GET",
transformResponse: function(response) {
return renderTemplate(response,$routeParams);
......@@ -314,7 +314,7 @@ function (angular, $, kbn, _, config, moment, Modernizr) {
this.script_load = function(file) {
return $http({
url: "app/dashboards/"+file,
url: "app/dashboards/"+file.replace(".","/"),
method: "GET",
transformResponse: function(response) {
/*jshint -W054 */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment