Commit abeaef71 by Daniel Lee

DashExport: fix View JSON in export menu

ref #9002
parent 54129b13
...@@ -12,13 +12,14 @@ import {DashboardExporter} from './exporter'; ...@@ -12,13 +12,14 @@ import {DashboardExporter} from './exporter';
export class DashExportCtrl { export class DashExportCtrl {
dash: any; dash: any;
exporter: DashboardExporter; exporter: DashboardExporter;
dismiss: () => void;
/** @ngInject */ /** @ngInject */
constructor(private backendSrv, dashboardSrv, datasourceSrv, $scope) { constructor(private backendSrv, private dashboardSrv, datasourceSrv, private $scope) {
this.exporter = new DashboardExporter(datasourceSrv); this.exporter = new DashboardExporter(datasourceSrv);
this.exporter.makeExportable(dashboardSrv.getCurrent()).then(dash => { this.exporter.makeExportable(this.dashboardSrv.getCurrent()).then(dash => {
$scope.$apply(() => { this.$scope.$apply(() => {
this.dash = dash; this.dash = dash;
}); });
}); });
...@@ -31,11 +32,13 @@ export class DashExportCtrl { ...@@ -31,11 +32,13 @@ export class DashExportCtrl {
} }
saveJson() { saveJson() {
var html = angular.toJson(this.dash, true); var clone = this.dashboardSrv.getCurrent().getSaveModelClone();
var uri = "data:application/json," + encodeURIComponent(html);
var newWindow = window.open(uri);
}
this.$scope.$root.appEvent('show-json-editor', {
object: clone,
});
this.dismiss();
}
} }
export function dashExportDirective() { export function dashExportDirective() {
...@@ -45,6 +48,7 @@ export function dashExportDirective() { ...@@ -45,6 +48,7 @@ export function dashExportDirective() {
controller: DashExportCtrl, controller: DashExportCtrl,
bindToController: true, bindToController: true,
controllerAs: 'ctrl', controllerAs: 'ctrl',
scope: {dismiss: "&"}
}; };
} }
......
...@@ -47,7 +47,7 @@ ...@@ -47,7 +47,7 @@
</script> </script>
<script type="text/ng-template" id="shareExport.html"> <script type="text/ng-template" id="shareExport.html">
<dash-export-modal></dash-export-modal> <dash-export-modal dismiss="dismiss()"></dash-export-modal>
</script> </script>
<script type="text/ng-template" id="shareLinkOptions.html"> <script type="text/ng-template" id="shareLinkOptions.html">
......
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